summaryrefslogtreecommitdiff
path: root/kafka/codec.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2015-12-02 13:41:26 -0800
committerDana Powers <dana.powers@gmail.com>2015-12-02 13:41:26 -0800
commita0f103eb3f8ff19926dfd25a1d5c114237c0bdfa (patch)
tree9e1548c2fddb1ff55bbda8ecced7674eac52c033 /kafka/codec.py
parent20df6cdcb5528c1bb587a052ee3497af29e0b0a3 (diff)
parent4d516fbd496096ae30191e13b7c2e378654b3759 (diff)
downloadkafka-python-a0f103eb3f8ff19926dfd25a1d5c114237c0bdfa.tar.gz
Merge pull request #454 from trbs/gzip_compressionlevel
allow to specify compression level for codecs which support this
Diffstat (limited to 'kafka/codec.py')
-rw-r--r--kafka/codec.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/kafka/codec.py b/kafka/codec.py
index 19f405b..a9373c7 100644
--- a/kafka/codec.py
+++ b/kafka/codec.py
@@ -22,12 +22,15 @@ def has_snappy():
return _HAS_SNAPPY
-def gzip_encode(payload):
+def gzip_encode(payload, compresslevel=None):
+ if not compresslevel:
+ compresslevel = 9
+
with BytesIO() as buf:
# Gzip context manager introduced in python 2.6
# so old-fashioned way until we decide to not support 2.6
- gzipper = gzip.GzipFile(fileobj=buf, mode="w")
+ gzipper = gzip.GzipFile(fileobj=buf, mode="w", compresslevel=compresslevel)
try:
gzipper.write(payload)
finally: