| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package kafka
- type topicMetadata struct {
- err kafkaError
- name *string
- partitions []partitionMetadata
- }
- func (tm *topicMetadata) encode(pe packetEncoder) {
- pe.putError(tm.err)
- pe.putString(tm.name)
- pe.putInt32(int32(len(m.partitions)))
- for i := range m.partitions {
- (&m.partitions[i]).encode(pe)
- }
- }
- func (tm *topicMetadata) decode(pd *packetDecoder) (err error) {
- n, err := pd.getArrayCount()
- if err != nil {
- return err
- }
- m.brokers = make([]broker, n)
- for i := 0; i < n; i++ {
- err = (&m.brokers[i]).decode(pd)
- if err != nil {
- return err
- }
- }
- n, err = pd.getArrayCount()
- if err != nil {
- return err
- }
- m.topics = make([]topic, n)
- for i := 0; i < n; i++ {
- err = (&m.topics[i]).decode(pd)
- if err != nil {
- return err
- }
- }
- }
|