def setUp(self): self.itrans = TMemoryBuffer() self.iprot = THeaderProtocol(self.itrans) self.otrans = TMemoryBuffer() self.oprot = THeaderProtocol(self.otrans) self.observer = mock.Mock(spec=BaseplateObserver) self.server_observer = mock.Mock(spec=ServerSpanObserver) def _register_mock(context, server_span): server_span.register(self.server_observer) self.observer.on_server_span_created.side_effect = _register_mock self.logger = mock.Mock(spec=logging.Logger) self.server_context = TRpcConnectionContext(self.itrans, self.iprot, self.oprot) baseplate = Baseplate() baseplate.register(self.observer) event_handler = BaseplateProcessorEventHandler(self.logger, baseplate) handler = TestHandler() self.processor = BaseplateService.ContextProcessor(handler) self.processor.setEventHandler(event_handler)
def setUp(self): self.itrans = TMemoryBuffer() self.iprot = THeaderProtocol(self.itrans) self.otrans = TMemoryBuffer() self.oprot = THeaderProtocol(self.otrans) self.observer = mock.Mock(spec=BaseplateObserver) self.server_observer = mock.Mock(spec=ServerSpanObserver) def _register_mock(context, server_span): server_span.register(self.server_observer) self.observer.on_server_span_created.side_effect = _register_mock self.logger = mock.Mock(spec=logging.Logger) self.server_context = TRpcConnectionContext(self.itrans, self.iprot, self.oprot) mock_filewatcher = mock.Mock(spec=FileWatcher) mock_filewatcher.get_data.return_value = { "secrets": { "secret/authentication/public-key": { "type": "versioned", "current": AUTH_TOKEN_PUBLIC_KEY, }, }, "vault": { "token": "test", "url": "http://vault.example.com:8200/", } } self.secrets = store.SecretsStore("/secrets") self.secrets._filewatcher = mock_filewatcher baseplate = Baseplate() baseplate.register(self.observer) self.edge_context_factory = EdgeRequestContextFactory(self.secrets) event_handler = BaseplateProcessorEventHandler( self.logger, baseplate, edge_context_factory=self.edge_context_factory, ) handler = TestHandler() self.processor = TestService.ContextProcessor(handler) self.processor.setEventHandler(event_handler)
def handle(self, client_socket, _): client = TSocket() client.setHandle(client_socket) trans = self.transport_factory.getTransport(client) prot = self.protocol_factory.getProtocol(trans) server_context = TRpcConnectionContext(client, prot, prot) try: while self.started: self.processor.process(prot, prot, server_context) except TTransportException: pass finally: trans.close()
def newConnection(self, context: TRpcConnectionContext) -> None: peer = context.getPeerName() local = context.getSockName() print(f"New onnection from {peer} to {local}")