metadataRequest.go 496 B

1234567891011121314151617181920212223242526272829
  1. package kafka
  2. type metadataRequest struct {
  3. topics []*string
  4. }
  5. func (mr *metadataRequest) encode(pe packetEncoder) {
  6. pe.putArrayCount(len(mr.topics))
  7. for i := range mr.topics {
  8. pe.putString(mr.topics[i])
  9. }
  10. }
  11. func (mr *metadataRequest) decode(pd packetDecoder) (err error) {
  12. n, err := pd.getArrayCount()
  13. if err != nil {
  14. return err
  15. }
  16. mr.topics = make([]*string, n)
  17. for i := 0; i < n; i++ {
  18. mr.topics[i], err = pd.getString()
  19. if err != nil {
  20. return err
  21. }
  22. }
  23. return nil
  24. }