From a699ddd14a305d933105de7900a079034bbc545f Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Sun, 25 Sep 2011 21:41:03 -0400 Subject: [PATCH] :sparkles: connection pooling :sparkles: works :D --- requests/models.py | 9 ++++++--- requests/sessions.py | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/requests/models.py b/requests/models.py index 820fc438..7604e2b6 100644 --- a/requests/models.py +++ b/requests/models.py @@ -122,6 +122,7 @@ class Request(object): def build(resp): response = Response() + response.config = self.config response.status_code = getattr(resp, 'status', None) try: @@ -236,7 +237,6 @@ class Request(object): # Build the final URL. url = build_url(self.url, self.params) - print url # Setup Files. if self.files: pass @@ -260,7 +260,7 @@ class Request(object): # One-off request. Delay fetching the content until needed. do_block = False else: - connection = pools.connection_from_url(url, timeout=self.timeout) + connection = pools.connection_from_url(url) # Part of a connection pool, so no fancy stuff. Sorry! do_block = True @@ -344,6 +344,9 @@ class Response(object): #: A dictionary of Cookies the server sent back. self.cookies = None + #: A dictionary of configuration. + self.config = None + def __repr__(self): return '' % (self.status_code) @@ -407,7 +410,7 @@ class Response(object): pass # Decode unicode content. - if settings.decode_unicode: + if self.config.get('decode_unicode'): self._content = get_unicode_from_response(self) self._content_consumed = True diff --git a/requests/sessions.py b/requests/sessions.py index 38e6c501..993d8bbe 100644 --- a/requests/sessions.py +++ b/requests/sessions.py @@ -112,7 +112,7 @@ class Session(object): # Add in PoolManager, if neccesary. if self.config.get('keepalive'): - _kwargs['_pool'] = self.__pool + _kwargs['_pools'] = self.__pool # TODO: Persist cookies.