def __init__(self, stream, address, protocol,handler): logging.debug('a new connection') self.stream = stream self.address = address self.protocol = protocol self.handler = handler self._request_finished = False # Save stack context here, outside of any request. This keeps # contexts from one request from leaking into the next. self._header_callback = stack_context.wrap(self._on_request_len) TCPStatus.start_request(self.stream.socket.fileno()) if protocol.is_delimiter(): logging.debug('read_until ' + b(protocol.header_delimiter())) self.stream.read_until(b(protocol.header_delimiter()), self._header_callback) ReadTimeoutCheck.add(self) else: logging.debug('read_bytes ') self.stream.read_bytes(protocol.header_length(), self._header_callback) ReadTimeoutCheck.add(self)
def __init__(self, stream, address, protocol, handler): logging.debug('a new connection') self.stream = stream self.address = address self.protocol = protocol self.handler = handler self._request_finished = False # Save stack context here, outside of any request. This keeps # contexts from one request from leaking into the next. self._header_callback = stack_context.wrap(self._on_request_len) TCPStatus.start_request(self.stream.socket.fileno()) if protocol.is_delimiter(): logging.debug('read_until ' + b(protocol.header_delimiter())) self.stream.read_until(b(protocol.header_delimiter()), self._header_callback) ReadTimeoutCheck.add(self) else: logging.debug('read_bytes ') self.stream.read_bytes(protocol.header_length(), self._header_callback) ReadTimeoutCheck.add(self)
def _on_finish(self, timeout=False): self._request_finished = True TCPStatus.end_request(self.stream.socket.fileno(), timeout) logging.debug('in finish') self.stream.close()
def _on_finish(self,timeout=False): self._request_finished = True TCPStatus.end_request(self.stream.socket.fileno(),timeout) logging.debug('in finish') self.stream.close()