summaryrefslogtreecommitdiff
path: root/kafka/codec.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@rd.io>2015-03-08 20:01:57 -0700
committerDana Powers <dana.powers@rd.io>2015-03-08 20:01:57 -0700
commit610f01e96d3bfd9f632371de5bd6cf911a8e71ef (patch)
treeae7466282beca366e187c58193976f1fda0dfaf2 /kafka/codec.py
parent92aa7e94288cbfc4aed0dfbd52021d21694bced4 (diff)
downloadkafka-python-610f01e96d3bfd9f632371de5bd6cf911a8e71ef.tar.gz
Use context managers in gzip_encode / gzip_decode
Diffstat (limited to 'kafka/codec.py')
-rw-r--r--kafka/codec.py19
1 files changed, 7 insertions, 12 deletions
diff --git a/kafka/codec.py b/kafka/codec.py
index 2279200..7883158 100644
--- a/kafka/codec.py
+++ b/kafka/codec.py
@@ -24,22 +24,17 @@ def has_snappy():
def gzip_encode(payload):
- buffer = BytesIO()
- handle = gzip.GzipFile(fileobj=buffer, mode="w")
- handle.write(payload)
- handle.close()
- buffer.seek(0)
- result = buffer.read()
- buffer.close()
+ with BytesIO() as buf:
+ with gzip.GzipFile(fileobj=buf, mode="w") as gzipper:
+ gzipper.write(payload)
+ result = buf.getvalue()
return result
def gzip_decode(payload):
- buffer = BytesIO(payload)
- handle = gzip.GzipFile(fileobj=buffer, mode='r')
- result = handle.read()
- handle.close()
- buffer.close()
+ with BytesIO(payload) as buf:
+ with gzip.GzipFile(fileobj=buf, mode='r') as gzipper:
+ result = gzipper.read()
return result