def __init__(self, encoding="utf-8", channel=channel): super(HTTP, self).__init__(channel=channel) self._encoding = encoding # XXX: This sucks :/ Avoiding the circuit import here :/ from circuits.web.parsers import HttpParser self._parser = HttpParser(1, True)
class HTTP(BaseComponent): channel = "web" def __init__(self, encoding="utf-8", channel=channel): super(HTTP, self).__init__(channel=channel) self._encoding = encoding # XXX: This sucks :/ Avoiding the circuit import here :/ from circuits.web.parsers import HttpParser self._parser = HttpParser(1, True) @handler("read") def _on_client_read(self, data): self._parser.execute(data, len(data)) if self._parser.is_message_complete() or \ self._parser.is_upgrade() or \ (self._parser.is_headers_complete() and self._parser._clen == 0): status = self._parser.get_status_code() version = self._parser.get_version() headers = self._parser.get_headers() res = ResponseObject(headers, status, version) res.body.write(self._parser.recv_body()) res.body.seek(0) self.fire(response(res)) # XXX: This sucks :/ Avoiding the circuit import here :/ from circuits.web.parsers import HttpParser self._parser = HttpParser(1, True)
def _on_client_read(self, data): self._parser.execute(data, len(data)) if self._parser.is_message_complete() or \ self._parser.is_upgrade() or \ (self._parser.is_headers_complete() and self._parser._clen == 0): status = self._parser.get_status_code() version = self._parser.get_version() headers = self._parser.get_headers() res = ResponseObject(headers, status, version) res.body.write(self._parser.recv_body()) res.body.seek(0) self.fire(response(res)) # XXX: This sucks :/ Avoiding the circuit import here :/ from circuits.web.parsers import HttpParser self._parser = HttpParser(1, True)