コード例 #1
0
ファイル: HTTP.py プロジェクト: stlcours/emesene
    def _setup_parser(self):
        self._http_parser = HTTPParser(self._transport)
        self._parser_handles.append(self._http_parser.connect("received",
            self._on_response_received))

        self._transport_handles.append(self._transport.connect("notify::status",
            self._on_status_change))
        self._transport_handles.append(self._transport.connect("error",
            self._on_error))
        self._transport_handles.append(self._transport.connect("sent",
            self._on_request_sent))
コード例 #2
0
    def _setup_transport(self):
        if self._transport is None:
            if self.__proxy is not None:
                self._transport = TCPClient(self.__proxy.host,
                                            self.__proxy.port)
            else:
                self._transport = TCPClient(self._host, self._port)
            self._http_parser = HTTPParser(self._transport)
            self._http_parser.connect("received", self._on_response_received)
            self._transport.connect("notify::status", self._on_status_change)
            self._transport.connect("error", self._on_error)
            self._transport.connect("sent", self._on_request_sent)

        if self._transport.get_property("status") != IoStatus.OPEN:
            self._transport.open()
コード例 #3
0
ファイル: HTTPConnect.py プロジェクト: stlcours/emesene
    def __init__(self, client, proxy_infos):
        assert (proxy_infos.type in (
            'http',
            'https')), "HTTPConnectProxy expects an http(s) proxy description"
        assert (client.domain == AF_INET
                ), "HTTP CONNECT only handles INET address family"
        assert (client.type == SOCK_STREAM
                ), "HTTP CONNECT only handles SOCK_STREAM"
        assert (client.status == IoStatus.CLOSED
                ), "HTTPConnectProxy expects a closed client"
        AbstractProxy.__init__(self, client, proxy_infos)

        self._transport = TCPClient(self._proxy.host, self._proxy.port)
        self._transport.connect("notify::status", self._on_transport_status)
        self._transport.connect("error", self._on_transport_error)
        self._http_parser = HTTPParser(self._transport)
        self._http_parser.connect("received", self._on_proxy_response)