def parseServerMessage(self, msg, channel, exchange, queue, processor,
        iprot_factory=None, oprot_factory=None):
        deliveryTag = msg.delivery_tag
        try:
            replyTo = msg.content[self.replyToField]
        except __HOLE__:
            replyTo = None

        tmi = TTransport.TMemoryBuffer(msg.content.body)
        tr = TwistedAMQPTransport(channel, exchange, replyTo)

        if iprot_factory is None:
            iprot = self.factory.iprot_factory.getProtocol(tmi)
        else:
            iprot = iprot_factory.getProtocol(tmi)

        if oprot_factory is None:
            oprot = self.factory.oprot_factory.getProtocol(tr)
        else:
            oprot = oprot_factory.getProtocol(tr)

        d = processor.process(iprot, oprot)
        channel.basic_ack(deliveryTag, True)

        d = queue.get()
        d.addCallback(self.parseServerMessage, channel, exchange, queue,
            processor, iprot_factory, oprot_factory)
        d.addErrback(self.catchClosedServerQueue)
        d.addErrback(self.handleServerQueueError)
dataset/ETHPy150Open tweetdeck/txAMQP/src/txamqp/contrib/thrift/protocol.py/ThriftAMQClient.parseServerMessage