Skip to content

Commit 0c40c36

Browse files
committed
Added compression mode constants class
1 parent ba51ff1 commit 0c40c36

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

splitio/push/splitworker.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,18 @@
55
import zlib
66
import base64
77
import json
8+
from enum import Enum
89

910
from splitio.models.splits import from_raw
1011

1112
_LOGGER = logging.getLogger(__name__)
1213

14+
class CompressionMode(Enum):
15+
"""Compression modes """
16+
17+
NO_COMPRESSION = 0
18+
GZIP_COMPRESSION = 1
19+
ZLIB_COMPRESSION = 2
1320

1421
class SplitWorker(object):
1522
"""Feature Flag Worker for processing updates."""
@@ -38,11 +45,11 @@ def is_running(self):
3845

3946
def _get_feature_flag_definition(self, event):
4047
"""return feature flag definition in event."""
41-
if event.compression == 0:
48+
if event.compression == CompressionMode.NO_COMPRESSION.value:
4249
return base64.b64decode(event.feature_flag_definition)
43-
elif event.compression == 1:
50+
elif event.compression == CompressionMode.GZIP_COMPRESSION.value:
4451
return gzip.decompress(base64.b64decode(event.feature_flag_definition)).decode('utf-8')
45-
elif event.compression == 2:
52+
elif event.compression == CompressionMode.ZLIB_COMPRESSION.value:
4653
return zlib.decompress(base64.b64decode(event.feature_flag_definition)).decode('utf-8')
4754

4855
def _run(self):

0 commit comments

Comments
 (0)