summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy McCurdy <andy@andymccurdy.com>2013-11-26 22:07:56 -0800
committerAndy McCurdy <andy@andymccurdy.com>2013-11-26 22:07:56 -0800
commitb2101d3fdfc6a7e555a0d6e27efe812e4ccf9c41 (patch)
tree5c522ad077e7d89900864aad209677cbfef275d4
parent271da6e8851d96f79ff2efb2313ba54672a78d50 (diff)
parent89454b1e83e01a4d523b776f74429a81467762da (diff)
downloadredis-py-b2101d3fdfc6a7e555a0d6e27efe812e4ccf9c41.tar.gz
Merge pull request #373 from sirnicolaz/sugar
Add utility for pipelining within 'with' statement.
-rw-r--r--redis/utils.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/redis/utils.py b/redis/utils.py
index ee681bf..e10d20f 100644
--- a/redis/utils.py
+++ b/redis/utils.py
@@ -1,3 +1,6 @@
+from contextlib import contextmanager
+
+
try:
import hiredis
HIREDIS_AVAILABLE = True
@@ -14,3 +17,10 @@ def from_url(url, db=None, **kwargs):
"""
from redis.client import Redis
return Redis.from_url(url, db, **kwargs)
+
+
+@contextmanager
+def pipeline(redis_obj):
+ p = redis_obj.pipeline()
+ yield p
+ p.execute()