aboutsummaryrefslogtreecommitdiff
path: root/requests/hooks.py
diff options
context:
space:
mode:
authorSVN-Git Migration <python-modules-team@lists.alioth.debian.org>2015-10-08 13:41:17 -0700
committerSVN-Git Migration <python-modules-team@lists.alioth.debian.org>2015-10-08 13:41:17 -0700
commit56fe2e2e44b89f15a0ea3322aab6202cdd6e8bf5 (patch)
tree8765d6de4b40d43a13e251888021cfa58deb1832 /requests/hooks.py
parentde9413984ed8808b59afee42e736ca7d0ed4cd59 (diff)
downloadpython-requests-56fe2e2e44b89f15a0ea3322aab6202cdd6e8bf5.tar
python-requests-56fe2e2e44b89f15a0ea3322aab6202cdd6e8bf5.tar.gz
Imported Upstream version 0.6.1
Diffstat (limited to 'requests/hooks.py')
-rw-r--r--requests/hooks.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/requests/hooks.py b/requests/hooks.py
new file mode 100644
index 0000000..2938029
--- /dev/null
+++ b/requests/hooks.py
@@ -0,0 +1,40 @@
+# -*- coding: utf-8 -*-
+
+"""
+requests.hooks
+~~~~~~~~~~~~~~
+
+This module provides the capabilities for the Requests hooks system.
+
+Available hooks:
+
+``args``:
+ A dictionary of the arguments being sent to Request().
+
+``pre_request``:
+ The Request object, directly before being sent.
+
+``post_request``:
+ The Request object, directly after being sent.
+
+``response``:
+ The response generated from a Request.
+
+"""
+
+import warnings
+
+
+def dispatch_hook(key, hooks, hook_data):
+ """Dipatches a hook dictionary on a given peice of data."""
+
+ hooks = hooks or dict()
+
+ if key in hooks:
+ try:
+ return hooks.get(key).__call__(hook_data) or hook_data
+
+ except Exception, why:
+ warnings.warn(str(why))
+
+ return hook_data