Ejemplo n.º 1
0
    def handle(self, connection_id, message_content):
        request = processor_pb2.TpRegisterRequest()
        request.ParseFromString(message_content)

        LOGGER.info(
            'registered transaction processor: connection_id=%s, family=%s, version=%s, namespaces=%s',
            connection_id[:8], request.family, request.version,
            list(request.namespaces))

        processor_type = processor_iterator.ProcessorType(
            request.family, request.version)

        processor = processor_iterator.Processor(connection_id,
                                                 request.namespaces)

        if processor_type in self._collection:
            LOGGER.debug(
                'Already registered transaction processor:family=%s, version=%s, namespaces=%s',
                request.family, request.version, list(request.namespaces))

        self._collection[processor_type] = processor
        LOGGER.debug('All registered transaction processors=%s',
                     self._collection)
        ack = processor_pb2.TpRegisterResponse()
        ack.status = ack.OK

        return HandlerResult(
            status=HandlerStatus.RETURN,
            message_out=ack,
            message_type=validator_pb2.Message.TP_REGISTER_RESPONSE)
    def handle(self, connection_id, message_content):
        request = processor_pb2.TpRegisterRequest()
        request.ParseFromString(message_content)

        LOGGER.info(
            'registered transaction processor: connection_id=%s, family=%s, '
            'version=%s, encoding=%s, namespaces=%s', connection_id,
            request.family, request.version, request.encoding,
            request.namespaces)

        processor_type = processor_iterator.ProcessorType(
            request.family, request.version, request.encoding)

        processor = processor_iterator.Processor(connection_id,
                                                 request.namespaces)

        self._collection[processor_type] = processor

        ack = processor_pb2.TpRegisterResponse()
        ack.status = ack.OK

        return HandlerResult(
            status=HandlerStatus.RETURN,
            message_out=ack,
            message_type=validator_pb2.Message.TP_REGISTER_RESPONSE)
Ejemplo n.º 3
0
 def register_transaction_processor(self, sender, family, version,
                                    encoding, namespaces):
     processor_type = processor_iterator.ProcessorType(
         family,
         version,
         encoding)
     processor = processor_iterator.Processor(sender, namespaces)
     self._processors[processor_type] = processor