summaryrefslogtreecommitdiff
path: root/kafka/protocol/offset.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@rd.io>2016-01-07 18:51:14 -0800
committerDana Powers <dana.powers@rd.io>2016-01-07 18:51:14 -0800
commit828377377da43749af0d27ee256ef31bf714cf17 (patch)
treefbad4d4381fc4d1ea2be7ce2009214d18fbeb674 /kafka/protocol/offset.py
parent71e7568fcb8132899f366b37c32645fd5a40dc4b (diff)
parent9a8af1499ca425366d934487469d9977fae7fe5f (diff)
downloadkafka-python-828377377da43749af0d27ee256ef31bf714cf17.tar.gz
Merge branch '0.9'
Conflicts: kafka/codec.py kafka/version.py test/test_producer.py test/test_producer_integration.py
Diffstat (limited to 'kafka/protocol/offset.py')
-rw-r--r--kafka/protocol/offset.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/kafka/protocol/offset.py b/kafka/protocol/offset.py
new file mode 100644
index 0000000..606f1f1
--- /dev/null
+++ b/kafka/protocol/offset.py
@@ -0,0 +1,36 @@
+from .struct import Struct
+from .types import Array, Int16, Int32, Int64, Schema, String
+
+class OffsetResetStrategy(object):
+ LATEST = -1
+ EARLIEST = -2
+ NONE = 0
+
+
+class OffsetResponse(Struct):
+ SCHEMA = Schema(
+ ('topics', Array(
+ ('topic', String('utf-8')),
+ ('partitions', Array(
+ ('partition', Int32),
+ ('error_code', Int16),
+ ('offsets', Array(Int64))))))
+ )
+
+
+class OffsetRequest(Struct):
+ API_KEY = 2
+ API_VERSION = 0
+ RESPONSE_TYPE = OffsetResponse
+ SCHEMA = Schema(
+ ('replica_id', Int32),
+ ('topics', Array(
+ ('topic', String('utf-8')),
+ ('partitions', Array(
+ ('partition', Int32),
+ ('time', Int64),
+ ('max_offsets', Int32)))))
+ )
+ DEFAULTS = {
+ 'replica_id': -1
+ }