From: ms4py Date: Mon, 4 Mar 2013 08:39:16 +0000 (+0100) Subject: Cache manager for proxy connection. X-Git-Tag: v2.0~5^2~11^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c951f0543c86ad7a3f90ead98f581c0af1865abd;p=services%2Fpython-requests.git Cache manager for proxy connection. --- diff --git a/requests/adapters.py b/requests/adapters.py index 01cbaf4..5dd00d4 100644 --- a/requests/adapters.py +++ b/requests/adapters.py @@ -71,6 +71,7 @@ class HTTPAdapter(BaseAdapter): pool_block=DEFAULT_POOLBLOCK): self.max_retries = max_retries self.config = {} + self.proxy_manager = {} super(HTTPAdapter, self).__init__() @@ -194,7 +195,10 @@ class HTTPAdapter(BaseAdapter): if proxy: except_on_missing_scheme(proxy) - conn = proxy_from_url(proxy).connection_from_url(url) + if not proxy in self.proxy_manager: + self.proxy_manager[proxy] = proxy_from_url(proxy) + + conn = self.proxy_manager[proxy].connection_from_url(url) else: conn = self.poolmanager.connection_from_url(url.lower())