github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/archive/codecs/ExtendRecordingRequest.go (about) 1 // Generated SBE (Simple Binary Encoding) message codec 2 3 package codecs 4 5 import ( 6 "fmt" 7 "io" 8 "io/ioutil" 9 "math" 10 ) 11 12 type ExtendRecordingRequest struct { 13 ControlSessionId int64 14 CorrelationId int64 15 RecordingId int64 16 StreamId int32 17 SourceLocation SourceLocationEnum 18 Channel []uint8 19 } 20 21 func (e *ExtendRecordingRequest) Encode(_m *SbeGoMarshaller, _w io.Writer, doRangeCheck bool) error { 22 if doRangeCheck { 23 if err := e.RangeCheck(e.SbeSchemaVersion(), e.SbeSchemaVersion()); err != nil { 24 return err 25 } 26 } 27 if err := _m.WriteInt64(_w, e.ControlSessionId); err != nil { 28 return err 29 } 30 if err := _m.WriteInt64(_w, e.CorrelationId); err != nil { 31 return err 32 } 33 if err := _m.WriteInt64(_w, e.RecordingId); err != nil { 34 return err 35 } 36 if err := _m.WriteInt32(_w, e.StreamId); err != nil { 37 return err 38 } 39 if err := e.SourceLocation.Encode(_m, _w); err != nil { 40 return err 41 } 42 if err := _m.WriteUint32(_w, uint32(len(e.Channel))); err != nil { 43 return err 44 } 45 if err := _m.WriteBytes(_w, e.Channel); err != nil { 46 return err 47 } 48 return nil 49 } 50 51 func (e *ExtendRecordingRequest) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16, blockLength uint16, doRangeCheck bool) error { 52 if !e.ControlSessionIdInActingVersion(actingVersion) { 53 e.ControlSessionId = e.ControlSessionIdNullValue() 54 } else { 55 if err := _m.ReadInt64(_r, &e.ControlSessionId); err != nil { 56 return err 57 } 58 } 59 if !e.CorrelationIdInActingVersion(actingVersion) { 60 e.CorrelationId = e.CorrelationIdNullValue() 61 } else { 62 if err := _m.ReadInt64(_r, &e.CorrelationId); err != nil { 63 return err 64 } 65 } 66 if !e.RecordingIdInActingVersion(actingVersion) { 67 e.RecordingId = e.RecordingIdNullValue() 68 } else { 69 if err := _m.ReadInt64(_r, &e.RecordingId); err != nil { 70 return err 71 } 72 } 73 if !e.StreamIdInActingVersion(actingVersion) { 74 e.StreamId = e.StreamIdNullValue() 75 } else { 76 if err := _m.ReadInt32(_r, &e.StreamId); err != nil { 77 return err 78 } 79 } 80 if e.SourceLocationInActingVersion(actingVersion) { 81 if err := e.SourceLocation.Decode(_m, _r, actingVersion); err != nil { 82 return err 83 } 84 } 85 if actingVersion > e.SbeSchemaVersion() && blockLength > e.SbeBlockLength() { 86 io.CopyN(ioutil.Discard, _r, int64(blockLength-e.SbeBlockLength())) 87 } 88 89 if e.ChannelInActingVersion(actingVersion) { 90 var ChannelLength uint32 91 if err := _m.ReadUint32(_r, &ChannelLength); err != nil { 92 return err 93 } 94 if cap(e.Channel) < int(ChannelLength) { 95 e.Channel = make([]uint8, ChannelLength) 96 } 97 e.Channel = e.Channel[:ChannelLength] 98 if err := _m.ReadBytes(_r, e.Channel); err != nil { 99 return err 100 } 101 } 102 if doRangeCheck { 103 if err := e.RangeCheck(actingVersion, e.SbeSchemaVersion()); err != nil { 104 return err 105 } 106 } 107 return nil 108 } 109 110 func (e *ExtendRecordingRequest) RangeCheck(actingVersion uint16, schemaVersion uint16) error { 111 if e.ControlSessionIdInActingVersion(actingVersion) { 112 if e.ControlSessionId < e.ControlSessionIdMinValue() || e.ControlSessionId > e.ControlSessionIdMaxValue() { 113 return fmt.Errorf("Range check failed on e.ControlSessionId (%v < %v > %v)", e.ControlSessionIdMinValue(), e.ControlSessionId, e.ControlSessionIdMaxValue()) 114 } 115 } 116 if e.CorrelationIdInActingVersion(actingVersion) { 117 if e.CorrelationId < e.CorrelationIdMinValue() || e.CorrelationId > e.CorrelationIdMaxValue() { 118 return fmt.Errorf("Range check failed on e.CorrelationId (%v < %v > %v)", e.CorrelationIdMinValue(), e.CorrelationId, e.CorrelationIdMaxValue()) 119 } 120 } 121 if e.RecordingIdInActingVersion(actingVersion) { 122 if e.RecordingId < e.RecordingIdMinValue() || e.RecordingId > e.RecordingIdMaxValue() { 123 return fmt.Errorf("Range check failed on e.RecordingId (%v < %v > %v)", e.RecordingIdMinValue(), e.RecordingId, e.RecordingIdMaxValue()) 124 } 125 } 126 if e.StreamIdInActingVersion(actingVersion) { 127 if e.StreamId < e.StreamIdMinValue() || e.StreamId > e.StreamIdMaxValue() { 128 return fmt.Errorf("Range check failed on e.StreamId (%v < %v > %v)", e.StreamIdMinValue(), e.StreamId, e.StreamIdMaxValue()) 129 } 130 } 131 if err := e.SourceLocation.RangeCheck(actingVersion, schemaVersion); err != nil { 132 return err 133 } 134 return nil 135 } 136 137 func ExtendRecordingRequestInit(e *ExtendRecordingRequest) { 138 return 139 } 140 141 func (*ExtendRecordingRequest) SbeBlockLength() (blockLength uint16) { 142 return 32 143 } 144 145 func (*ExtendRecordingRequest) SbeTemplateId() (templateId uint16) { 146 return 11 147 } 148 149 func (*ExtendRecordingRequest) SbeSchemaId() (schemaId uint16) { 150 return 101 151 } 152 153 func (*ExtendRecordingRequest) SbeSchemaVersion() (schemaVersion uint16) { 154 return 6 155 } 156 157 func (*ExtendRecordingRequest) SbeSemanticType() (semanticType []byte) { 158 return []byte("") 159 } 160 161 func (*ExtendRecordingRequest) ControlSessionIdId() uint16 { 162 return 1 163 } 164 165 func (*ExtendRecordingRequest) ControlSessionIdSinceVersion() uint16 { 166 return 0 167 } 168 169 func (e *ExtendRecordingRequest) ControlSessionIdInActingVersion(actingVersion uint16) bool { 170 return actingVersion >= e.ControlSessionIdSinceVersion() 171 } 172 173 func (*ExtendRecordingRequest) ControlSessionIdDeprecated() uint16 { 174 return 0 175 } 176 177 func (*ExtendRecordingRequest) ControlSessionIdMetaAttribute(meta int) string { 178 switch meta { 179 case 1: 180 return "" 181 case 2: 182 return "" 183 case 3: 184 return "" 185 case 4: 186 return "required" 187 } 188 return "" 189 } 190 191 func (*ExtendRecordingRequest) ControlSessionIdMinValue() int64 { 192 return math.MinInt64 + 1 193 } 194 195 func (*ExtendRecordingRequest) ControlSessionIdMaxValue() int64 { 196 return math.MaxInt64 197 } 198 199 func (*ExtendRecordingRequest) ControlSessionIdNullValue() int64 { 200 return math.MinInt64 201 } 202 203 func (*ExtendRecordingRequest) CorrelationIdId() uint16 { 204 return 2 205 } 206 207 func (*ExtendRecordingRequest) CorrelationIdSinceVersion() uint16 { 208 return 0 209 } 210 211 func (e *ExtendRecordingRequest) CorrelationIdInActingVersion(actingVersion uint16) bool { 212 return actingVersion >= e.CorrelationIdSinceVersion() 213 } 214 215 func (*ExtendRecordingRequest) CorrelationIdDeprecated() uint16 { 216 return 0 217 } 218 219 func (*ExtendRecordingRequest) CorrelationIdMetaAttribute(meta int) string { 220 switch meta { 221 case 1: 222 return "" 223 case 2: 224 return "" 225 case 3: 226 return "" 227 case 4: 228 return "required" 229 } 230 return "" 231 } 232 233 func (*ExtendRecordingRequest) CorrelationIdMinValue() int64 { 234 return math.MinInt64 + 1 235 } 236 237 func (*ExtendRecordingRequest) CorrelationIdMaxValue() int64 { 238 return math.MaxInt64 239 } 240 241 func (*ExtendRecordingRequest) CorrelationIdNullValue() int64 { 242 return math.MinInt64 243 } 244 245 func (*ExtendRecordingRequest) RecordingIdId() uint16 { 246 return 3 247 } 248 249 func (*ExtendRecordingRequest) RecordingIdSinceVersion() uint16 { 250 return 0 251 } 252 253 func (e *ExtendRecordingRequest) RecordingIdInActingVersion(actingVersion uint16) bool { 254 return actingVersion >= e.RecordingIdSinceVersion() 255 } 256 257 func (*ExtendRecordingRequest) RecordingIdDeprecated() uint16 { 258 return 0 259 } 260 261 func (*ExtendRecordingRequest) RecordingIdMetaAttribute(meta int) string { 262 switch meta { 263 case 1: 264 return "" 265 case 2: 266 return "" 267 case 3: 268 return "" 269 case 4: 270 return "required" 271 } 272 return "" 273 } 274 275 func (*ExtendRecordingRequest) RecordingIdMinValue() int64 { 276 return math.MinInt64 + 1 277 } 278 279 func (*ExtendRecordingRequest) RecordingIdMaxValue() int64 { 280 return math.MaxInt64 281 } 282 283 func (*ExtendRecordingRequest) RecordingIdNullValue() int64 { 284 return math.MinInt64 285 } 286 287 func (*ExtendRecordingRequest) StreamIdId() uint16 { 288 return 4 289 } 290 291 func (*ExtendRecordingRequest) StreamIdSinceVersion() uint16 { 292 return 0 293 } 294 295 func (e *ExtendRecordingRequest) StreamIdInActingVersion(actingVersion uint16) bool { 296 return actingVersion >= e.StreamIdSinceVersion() 297 } 298 299 func (*ExtendRecordingRequest) StreamIdDeprecated() uint16 { 300 return 0 301 } 302 303 func (*ExtendRecordingRequest) StreamIdMetaAttribute(meta int) string { 304 switch meta { 305 case 1: 306 return "" 307 case 2: 308 return "" 309 case 3: 310 return "" 311 case 4: 312 return "required" 313 } 314 return "" 315 } 316 317 func (*ExtendRecordingRequest) StreamIdMinValue() int32 { 318 return math.MinInt32 + 1 319 } 320 321 func (*ExtendRecordingRequest) StreamIdMaxValue() int32 { 322 return math.MaxInt32 323 } 324 325 func (*ExtendRecordingRequest) StreamIdNullValue() int32 { 326 return math.MinInt32 327 } 328 329 func (*ExtendRecordingRequest) SourceLocationId() uint16 { 330 return 5 331 } 332 333 func (*ExtendRecordingRequest) SourceLocationSinceVersion() uint16 { 334 return 0 335 } 336 337 func (e *ExtendRecordingRequest) SourceLocationInActingVersion(actingVersion uint16) bool { 338 return actingVersion >= e.SourceLocationSinceVersion() 339 } 340 341 func (*ExtendRecordingRequest) SourceLocationDeprecated() uint16 { 342 return 0 343 } 344 345 func (*ExtendRecordingRequest) SourceLocationMetaAttribute(meta int) string { 346 switch meta { 347 case 1: 348 return "" 349 case 2: 350 return "" 351 case 3: 352 return "" 353 case 4: 354 return "required" 355 } 356 return "" 357 } 358 359 func (*ExtendRecordingRequest) ChannelMetaAttribute(meta int) string { 360 switch meta { 361 case 1: 362 return "" 363 case 2: 364 return "" 365 case 3: 366 return "" 367 case 4: 368 return "required" 369 } 370 return "" 371 } 372 373 func (*ExtendRecordingRequest) ChannelSinceVersion() uint16 { 374 return 0 375 } 376 377 func (e *ExtendRecordingRequest) ChannelInActingVersion(actingVersion uint16) bool { 378 return actingVersion >= e.ChannelSinceVersion() 379 } 380 381 func (*ExtendRecordingRequest) ChannelDeprecated() uint16 { 382 return 0 383 } 384 385 func (ExtendRecordingRequest) ChannelCharacterEncoding() string { 386 return "US-ASCII" 387 } 388 389 func (ExtendRecordingRequest) ChannelHeaderLength() uint64 { 390 return 4 391 }