A possible fix for #1036
authorIan Cordasco <graffatcolmingov@gmail.com>
Tue, 18 Dec 2012 14:43:55 +0000 (09:43 -0500)
committerIan Cordasco <graffatcolmingov@gmail.com>
Tue, 18 Dec 2012 14:43:55 +0000 (09:43 -0500)
I can only assume that the only possible thing to close on a session are the
adapters. As such, I wrote the close method for a session object which closes
all possible adapters.

requests/sessions.py

index 0d1441b..36a760d 100644 (file)
@@ -365,7 +365,12 @@ class Session(SessionRedirectMixin):
                 return adapter
 
         # Nothing matches :-/
-        raise InvalidSchema('No connection adapters were found for \'%s\'' % url)
+        raise InvalidSchema("No connection adapters were found for '%s'" % url)
+
+    def close(self):
+        """Closes all adapters and as such the session"""
+        for _, v in self.adapters.items():
+            v.close()
 
     def mount(self, prefix, adapter):
         """Registers a connection adapter to a prefix."""