blob: 689444397d6ff66c5498fa049e0e2fb077b125b8 [file] [log] [blame]
khenaidooac637102019-01-14 15:44:34 -05001package sarama
2
3import "time"
4
5type InitProducerIDRequest struct {
6 TransactionalID *string
7 TransactionTimeout time.Duration
8}
9
10func (i *InitProducerIDRequest) encode(pe packetEncoder) error {
11 if err := pe.putNullableString(i.TransactionalID); err != nil {
12 return err
13 }
14 pe.putInt32(int32(i.TransactionTimeout / time.Millisecond))
15
16 return nil
17}
18
19func (i *InitProducerIDRequest) decode(pd packetDecoder, version int16) (err error) {
20 if i.TransactionalID, err = pd.getNullableString(); err != nil {
21 return err
22 }
23
24 timeout, err := pd.getInt32()
25 if err != nil {
26 return err
27 }
28 i.TransactionTimeout = time.Duration(timeout) * time.Millisecond
29
30 return nil
31}
32
33func (i *InitProducerIDRequest) key() int16 {
34 return 22
35}
36
37func (i *InitProducerIDRequest) version() int16 {
38 return 0
39}
40
khenaidood948f772021-08-11 17:49:24 -040041func (i *InitProducerIDRequest) headerVersion() int16 {
42 return 1
43}
44
khenaidooac637102019-01-14 15:44:34 -050045func (i *InitProducerIDRequest) requiredVersion() KafkaVersion {
46 return V0_11_0_0
47}