improve proxy_manager_for re-usability by subclass

This commit is contained in:
Ben Bass
2014-05-18 20:10:35 +01:00
parent e3d0ac7c9d
commit 02618c8df5
+10 -5
View File
@@ -118,12 +118,16 @@ class HTTPAdapter(BaseAdapter):
self.poolmanager = PoolManager(num_pools=connections, maxsize=maxsize,
block=block)
def proxy_manager_for(self, proxy):
"""Return urllib3 ProxyManager for the given proxy. This method should
not be called from user code, and is only exposed for use when
subclassing the :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`.
def proxy_manager_for(self, proxy, **proxy_kwargs):
"""Return urllib3 ProxyManager for the given proxy.
This method should not be called from user code, and is only
exposed for use when subclassing the
:class:`HTTPAdapter <requests.adapters.HTTPAdapter>`.
:param proxy: The proxy to return a urllib3 ProxyManager for.
:param proxy_kwargs: Extra keyword arguments used to configure the Proxy Manager.
:returns: ProxyManager
"""
if not proxy in self.proxy_manager:
proxy_headers = self.proxy_headers(proxy)
@@ -132,7 +136,8 @@ class HTTPAdapter(BaseAdapter):
proxy_headers=proxy_headers,
num_pools=self._pool_connections,
maxsize=self._pool_maxsize,
block=self._pool_block)
block=self._pool_block,
**proxy_kwargs)
return self.proxy_manager[proxy]