summaryrefslogtreecommitdiff
path: root/kafka/serializer/abstract.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2016-12-19 11:27:23 -0800
committerGitHub <noreply@github.com>2016-12-19 11:27:23 -0800
commit655953fdac787c1a140cc641502983b6676b13c5 (patch)
tree7a926445d44f96dfcb2a53d220f49562a9906168 /kafka/serializer/abstract.py
parentf6291e655d556ed7e0eecdad456f4e28b01b8d2b (diff)
downloadkafka-python-655953fdac787c1a140cc641502983b6676b13c5.tar.gz
Add kafka.serializer interfaces (#912)
Diffstat (limited to 'kafka/serializer/abstract.py')
-rw-r--r--kafka/serializer/abstract.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/kafka/serializer/abstract.py b/kafka/serializer/abstract.py
new file mode 100644
index 0000000..18ad8d6
--- /dev/null
+++ b/kafka/serializer/abstract.py
@@ -0,0 +1,31 @@
+from __future__ import absolute_import
+
+import abc
+
+
+class Serializer(object):
+ __meta__ = abc.ABCMeta
+
+ def __init__(self, **config):
+ pass
+
+ @abc.abstractmethod
+ def serialize(self, topic, value):
+ pass
+
+ def close(self):
+ pass
+
+
+class Deserializer(object):
+ __meta__ = abc.ABCMeta
+
+ def __init__(self, **config):
+ pass
+
+ @abc.abstractmethod
+ def deserialize(self, topic, bytes_):
+ pass
+
+ def close(self):
+ pass