blob: cae8536b3ebee6779e69b081a3d6a6d31276c266 [file] [log] [blame]
Abhay Kumara2ae5992025-11-10 14:02:24 +00001package sarama
2
3type SaslHandshakeRequest struct {
4 Mechanism string
5 Version int16
6}
7
8func (r *SaslHandshakeRequest) setVersion(v int16) {
9 r.Version = v
10}
11
12func (r *SaslHandshakeRequest) encode(pe packetEncoder) error {
13 if err := pe.putString(r.Mechanism); err != nil {
14 return err
15 }
16
17 return nil
18}
19
20func (r *SaslHandshakeRequest) decode(pd packetDecoder, version int16) (err error) {
21 if r.Mechanism, err = pd.getString(); err != nil {
22 return err
23 }
24
25 return nil
26}
27
28func (r *SaslHandshakeRequest) key() int16 {
29 return apiKeySaslHandshake
30}
31
32func (r *SaslHandshakeRequest) version() int16 {
33 return r.Version
34}
35
36func (r *SaslHandshakeRequest) headerVersion() int16 {
37 return 1
38}
39
40func (r *SaslHandshakeRequest) isValidVersion() bool {
41 return r.Version >= 0 && r.Version <= 1
42}
43
44func (r *SaslHandshakeRequest) requiredVersion() KafkaVersion {
45 switch r.Version {
46 case 1:
47 return V1_0_0_0
48 default:
49 return V0_10_0_0
50 }
51}