sasl_handshake_response.go 746 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package sarama
  2. type SaslHandshakeResponse struct {
  3. Err KError
  4. EnabledMechanisms []string
  5. }
  6. func (r *SaslHandshakeResponse) encode(pe packetEncoder) error {
  7. pe.putInt16(int16(r.Err))
  8. return pe.putStringArray(r.EnabledMechanisms)
  9. }
  10. func (r *SaslHandshakeResponse) decode(pd packetDecoder, version int16) error {
  11. if kerr, err := pd.getInt16(); err != nil {
  12. return err
  13. } else {
  14. r.Err = KError(kerr)
  15. }
  16. var err error
  17. if r.EnabledMechanisms, err = pd.getStringArray(); err != nil {
  18. return err
  19. }
  20. return nil
  21. }
  22. func (r *SaslHandshakeResponse) key() int16 {
  23. return 17
  24. }
  25. func (r *SaslHandshakeResponse) version() int16 {
  26. return 0
  27. }
  28. func (r *SaslHandshakeResponse) requiredVersion() KafkaVersion {
  29. return V0_10_0_0
  30. }