MCPcopy Create free account
hub / github.com/IBM/sarama / encode

Method encode

offset_fetch_response.go:96–165  ·  view source on GitHub ↗
(pe packetEncoder)

Source from the content-addressed store, hash-verified

94}
95
96func (r *OffsetFetchResponse) encode(pe packetEncoder) (err error) {
97 if r.Version >= 3 {
98 pe.putInt32(r.ThrottleTimeMs)
99 }
100
101 if r.Version >= 8 {
102 if err := pe.putArrayLength(len(r.Groups)); err != nil {
103 return err
104 }
105 for _, g := range r.Groups {
106 if err := pe.putString(g.GroupId); err != nil {
107 return err
108 }
109
110 if err := pe.putArrayLength(len(g.Blocks)); err != nil {
111 return err
112 }
113 for topic, partitions := range g.Blocks {
114 if err := pe.putString(topic); err != nil {
115 return err
116 }
117 if err := pe.putArrayLength(len(partitions)); err != nil {
118 return err
119 }
120 for partition, block := range partitions {
121 pe.putInt32(partition)
122 if err := block.encode(pe, r.Version); err != nil {
123 return err
124 }
125 }
126 pe.putEmptyTaggedFieldArray()
127 }
128
129 pe.putKError(g.Err)
130 pe.putEmptyTaggedFieldArray()
131 }
132
133 pe.putEmptyTaggedFieldArray()
134 return nil
135 }
136
137 err = pe.putArrayLength(len(r.Blocks))
138 if err != nil {
139 return err
140 }
141
142 for topic, partitions := range r.Blocks {
143 err = pe.putString(topic)
144 if err != nil {
145 return err
146 }
147
148 err = pe.putArrayLength(len(partitions))
149 if err != nil {
150 return err
151 }
152 for partition, block := range partitions {
153 pe.putInt32(partition)

Callers

nothing calls this directly

Calls 6

putInt32Method · 0.65
putArrayLengthMethod · 0.65
putStringMethod · 0.65
encodeMethod · 0.65
putKErrorMethod · 0.65

Tested by

no test coverage detected