def _start(self): """Starts this ForeLink. This method must be called before attempting to exchange tickets with this object. """ with self._condition: address = '[::]:%d' % ( 0 if self._requested_port is None else self._requested_port) self._completion_queue = _low.CompletionQueue() if self._root_certificates is None and not self._key_chain_pairs: self._server = _low.Server(self._completion_queue) self._port = self._server.add_http2_addr(address) else: server_credentials = _low.ServerCredentials( self._root_certificates, self._key_chain_pairs, False) self._server = _low.Server(self._completion_queue) self._port = self._server.add_secure_http2_addr( address, server_credentials) self._server.start() self._server.service(None) self._pool.submit(self._spin, self._completion_queue, self._server) self._spinning = True return self
def start(self): with self._lock: if self._server is None: self._completion_queue = _intermediary_low.CompletionQueue() self._server = _intermediary_low.Server(self._completion_queue) self._pool = logging_pool.pool(1) self._pool.submit(self._spin, self._completion_queue, self._server) self._server.start() self._server.service(None)
def add_port(self, address, server_credentials): with self._lock: if self._server is None: self._completion_queue = _intermediary_low.CompletionQueue() self._server = _intermediary_low.Server(self._completion_queue) if server_credentials is None: return self._server.add_http2_addr(address) else: return self._server.add_secure_http2_addr(address, server_credentials)
def setUp(self): self.host = 'localhost' self.server_completion_queue = _low.CompletionQueue() self.server = _low.Server(self.server_completion_queue) port = self.server.add_http2_addr('[::]:0') self.server.start() self.client_completion_queue = _low.CompletionQueue() self.channel = _low.Channel('%s:%d' % (self.host, port), None)
def setUp(self): self.host = 'localhost' self.server_completion_queue = _low.CompletionQueue() self.server = _low.Server(self.server_completion_queue) port = self.server.add_http2_addr('[::]:0') self.server.start() self.server_events = queue.Queue() self.server_completion_queue_thread = threading.Thread( target=_drive_completion_queue, args=(self.server_completion_queue, self.server_events)) self.server_completion_queue_thread.start() self.client_completion_queue = _low.CompletionQueue() self.channel = _low.Channel('%s:%d' % (self.host, port), None) self.client_events = queue.Queue() self.client_completion_queue_thread = threading.Thread( target=_drive_completion_queue, args=(self.client_completion_queue, self.client_events)) self.client_completion_queue_thread.start()