Exemplo n.º 1
0
 def _create_server(self, port=0):
     handler = CalculatorHandler()
     transport = TServerSocket(port)
     pfactory = THeaderProtocolFactory(client_types=THEADER_CLIENT_TYPES)
     return TNonblockingServer(
         Calculator.Processor(handler),
         transport,
         inputProtocolFactory=pfactory,
         outputProtocolFactory=pfactory,
         threads=1,
     )
Exemplo n.º 2
0
    def initTask(self):
        """Overridden to bind sockets, etc"""
        super(NBServerTask, self).initTask()

        self._stopped = False
        self.socket = TServerSocket(self.host, self.port)
        self.server = TNonblockingServer(self.processor, self.socket,
                                         threads=self.num_threads)
        self.server.prepare()
        self.bound_host, self.bound_port = \
            self.server.socket.handle.getsockname()
        self.logger.info("%s Server Started on %s:%s",
                         self.name, self.bound_host, self.bound_port)
Exemplo n.º 3
0
    def initTask(self):
        """Overridden to bind sockets, etc"""
        super(NBServerTask, self).initTask()

        self._stopped = False

        # Construct TServerSocket this way for compatibility with fbthrift
        self.socket = TServerSocket(port=self.port)
        self.socket.host = self.host

        self.server = TNonblockingServer(self.processor, self.socket,
                                         threads=self.num_threads)
        self.server.prepare()

        self.bound_addrs = []
        for handle in self._get_socket_handles(self.server.socket):
            addrinfo = handle.getsockname()
            self.bound_host, self.bound_port = addrinfo[0:2]
            self.logger.info("%s Server Started on %s", self.name,
                self._fmt_hostport(self.bound_host, self.bound_port))
#class MyServer(TNonblockingServer):
#    def __init__(self, processor, lsocket, inputProtocolFactory=None, outputProtocolFactory=None, threads=10):
#        super(TNonblockingServer, self).__init__(processor, lsocket)

    #def close(self):
    #    pass

    #def handler(self):
    #    pass

    #def prepare(self):
    #    pass

    #def serve(self):
    #    pass

    #def wake_up(self):
    #    pass

if __name__ == '__main__':
    handler = CalculatorHandler()
    processor = Calculator.Processor(handler)
    transport = TSocket.TServerSocket(port=9090)
    tfactory = TTransport.TFramedTransportFactory()
    pfactory = TBinaryProtocol.TBinaryProtocolFactory()

    server = TNonblockingServer(processor, transport)

    server.serve()