aboutsummaryrefslogtreecommitdiff
path: root/requests/async.py
diff options
context:
space:
mode:
Diffstat (limited to 'requests/async.py')
-rw-r--r--requests/async.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/requests/async.py b/requests/async.py
new file mode 100644
index 0000000..ab04084
--- /dev/null
+++ b/requests/async.py
@@ -0,0 +1,41 @@
+# -*- coding: utf-8 -*-
+
+"""
+ requests.async
+ ~~~~~~~~~~~~~~
+
+ This module implements the main Requests system, after monkey-patching
+ the urllib2 module with eventlet or gevent..
+
+ :copyright: (c) 2011 by Kenneth Reitz.
+ :license: ISC, see LICENSE for more details.
+"""
+
+
+from __future__ import absolute_import
+
+import urllib
+import urllib2
+
+from urllib2 import HTTPError
+
+
+try:
+ import eventlet
+ eventlet.monkey_patch()
+except ImportError:
+ pass
+
+if not 'eventlet' in locals():
+ try:
+ from gevent import monkey
+ monkey.patch_all()
+ except ImportError:
+ pass
+
+
+if not 'eventlet' in locals():
+ raise ImportError('No Async adaptations of urllib2 found!')
+
+
+from .core import *