summaryrefslogtreecommitdiff
path: root/kafka/protocol/group.py
diff options
context:
space:
mode:
Diffstat (limited to 'kafka/protocol/group.py')
-rw-r--r--kafka/protocol/group.py27
1 files changed, 25 insertions, 2 deletions
diff --git a/kafka/protocol/group.py b/kafka/protocol/group.py
index 98715f3..0e0b70e 100644
--- a/kafka/protocol/group.py
+++ b/kafka/protocol/group.py
@@ -19,6 +19,12 @@ class JoinGroupResponse_v0(Struct):
)
+class JoinGroupResponse_v1(Struct):
+ API_KEY = 11
+ API_VERSION = 1
+ SCHEMA = JoinGroupResponse_v0.SCHEMA
+
+
class JoinGroupRequest_v0(Struct):
API_KEY = 11
API_VERSION = 0
@@ -35,8 +41,25 @@ class JoinGroupRequest_v0(Struct):
UNKNOWN_MEMBER_ID = ''
-JoinGroupRequest = [JoinGroupRequest_v0]
-JoinGroupResponse = [JoinGroupResponse_v0]
+class JoinGroupRequest_v1(Struct):
+ API_KEY = 11
+ API_VERSION = 1
+ RESPONSE_TYPE = JoinGroupResponse_v1
+ SCHEMA = Schema(
+ ('group', String('utf-8')),
+ ('session_timeout', Int32),
+ ('rebalance_timeout', Int32),
+ ('member_id', String('utf-8')),
+ ('protocol_type', String('utf-8')),
+ ('group_protocols', Array(
+ ('protocol_name', String('utf-8')),
+ ('protocol_metadata', Bytes)))
+ )
+ UNKNOWN_MEMBER_ID = ''
+
+
+JoinGroupRequest = [JoinGroupRequest_v0, JoinGroupRequest_v1]
+JoinGroupResponse = [JoinGroupResponse_v0, JoinGroupResponse_v1]
class ProtocolMetadata(Struct):