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.py48
1 files changed, 36 insertions, 12 deletions
diff --git a/kafka/protocol/group.py b/kafka/protocol/group.py
index 72de005..97ae5f7 100644
--- a/kafka/protocol/group.py
+++ b/kafka/protocol/group.py
@@ -2,7 +2,9 @@ from .struct import Struct
from .types import Array, Bytes, Int16, Int32, Schema, String
-class JoinGroupResponse(Struct):
+class JoinGroupResponse_v0(Struct):
+ API_KEY = 11
+ API_VERSION = 0
SCHEMA = Schema(
('error_code', Int16),
('generation_id', Int32),
@@ -15,10 +17,10 @@ class JoinGroupResponse(Struct):
)
-class JoinGroupRequest(Struct):
+class JoinGroupRequest_v0(Struct):
API_KEY = 11
API_VERSION = 0
- RESPONSE_TYPE = JoinGroupResponse
+ RESPONSE_TYPE = JoinGroupResponse_v0
SCHEMA = Schema(
('group', String('utf-8')),
('session_timeout', Int32),
@@ -31,6 +33,10 @@ class JoinGroupRequest(Struct):
UNKNOWN_MEMBER_ID = ''
+JoinGroupRequest = [JoinGroupRequest_v0]
+JoinGroupResponse = [JoinGroupResponse_v0]
+
+
class ProtocolMetadata(Struct):
SCHEMA = Schema(
('version', Int16),
@@ -39,17 +45,19 @@ class ProtocolMetadata(Struct):
)
-class SyncGroupResponse(Struct):
+class SyncGroupResponse_v0(Struct):
+ API_KEY = 14
+ API_VERSION = 0
SCHEMA = Schema(
('error_code', Int16),
('member_assignment', Bytes)
)
-class SyncGroupRequest(Struct):
+class SyncGroupRequest_v0(Struct):
API_KEY = 14
API_VERSION = 0
- RESPONSE_TYPE = SyncGroupResponse
+ RESPONSE_TYPE = SyncGroupResponse_v0
SCHEMA = Schema(
('group', String('utf-8')),
('generation_id', Int32),
@@ -60,6 +68,10 @@ class SyncGroupRequest(Struct):
)
+SyncGroupRequest = [SyncGroupRequest_v0]
+SyncGroupResponse = [SyncGroupResponse_v0]
+
+
class MemberAssignment(Struct):
SCHEMA = Schema(
('version', Int16),
@@ -70,16 +82,18 @@ class MemberAssignment(Struct):
)
-class HeartbeatResponse(Struct):
+class HeartbeatResponse_v0(Struct):
+ API_KEY = 12
+ API_VERSION = 0
SCHEMA = Schema(
('error_code', Int16)
)
-class HeartbeatRequest(Struct):
+class HeartbeatRequest_v0(Struct):
API_KEY = 12
API_VERSION = 0
- RESPONSE_TYPE = HeartbeatResponse
+ RESPONSE_TYPE = HeartbeatResponse_v0
SCHEMA = Schema(
('group', String('utf-8')),
('generation_id', Int32),
@@ -87,17 +101,27 @@ class HeartbeatRequest(Struct):
)
-class LeaveGroupResponse(Struct):
+HeartbeatRequest = [HeartbeatRequest_v0]
+HeartbeatResponse = [HeartbeatResponse_v0]
+
+
+class LeaveGroupResponse_v0(Struct):
+ API_KEY = 13
+ API_VERSION = 0
SCHEMA = Schema(
('error_code', Int16)
)
-class LeaveGroupRequest(Struct):
+class LeaveGroupRequest_v0(Struct):
API_KEY = 13
API_VERSION = 0
- RESPONSE_TYPE = LeaveGroupResponse
+ RESPONSE_TYPE = LeaveGroupResponse_v0
SCHEMA = Schema(
('group', String('utf-8')),
('member_id', String('utf-8'))
)
+
+
+LeaveGroupRequest = [LeaveGroupRequest_v0]
+LeaveGroupResponse = [LeaveGroupResponse_v0]