| 26 | } |
| 27 | |
| 28 | func NewMetadataRequest(version KafkaVersion, topics []string) *MetadataRequest { |
| 29 | m := &MetadataRequest{Topics: topics} |
| 30 | if version.IsAtLeast(V2_8_0_0) { |
| 31 | m.Version = 10 |
| 32 | } else if version.IsAtLeast(V2_4_0_0) { |
| 33 | m.Version = 9 |
| 34 | } else if version.IsAtLeast(V2_4_0_0) { |
| 35 | m.Version = 8 |
| 36 | } else if version.IsAtLeast(V2_1_0_0) { |
| 37 | m.Version = 7 |
| 38 | } else if version.IsAtLeast(V2_0_0_0) { |
| 39 | m.Version = 6 |
| 40 | } else if version.IsAtLeast(V1_0_0_0) { |
| 41 | m.Version = 5 |
| 42 | } else if version.IsAtLeast(V0_11_0_0) { |
| 43 | m.Version = 4 |
| 44 | } else if version.IsAtLeast(V0_10_1_0) { |
| 45 | m.Version = 2 |
| 46 | } else if version.IsAtLeast(V0_10_0_0) { |
| 47 | m.Version = 1 |
| 48 | } |
| 49 | return m |
| 50 | } |
| 51 | |
| 52 | func (r *MetadataRequest) encode(pe packetEncoder) (err error) { |
| 53 | if r.Version < 0 || r.Version > 10 { |