github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/archive/codecs/ReplicateRequest2.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 ReplicateRequest2 struct { 13 ControlSessionId int64 14 CorrelationId int64 15 SrcRecordingId int64 16 DstRecordingId int64 17 StopPosition int64 18 ChannelTagId int64 19 SubscriptionTagId int64 20 SrcControlStreamId int32 21 SrcControlChannel []uint8 22 LiveDestination []uint8 23 ReplicationChannel []uint8 24 } 25 26 func (r *ReplicateRequest2) Encode(_m *SbeGoMarshaller, _w io.Writer, doRangeCheck bool) error { 27 if doRangeCheck { 28 if err := r.RangeCheck(r.SbeSchemaVersion(), r.SbeSchemaVersion()); err != nil { 29 return err 30 } 31 } 32 if err := _m.WriteInt64(_w, r.ControlSessionId); err != nil { 33 return err 34 } 35 if err := _m.WriteInt64(_w, r.CorrelationId); err != nil { 36 return err 37 } 38 if err := _m.WriteInt64(_w, r.SrcRecordingId); err != nil { 39 return err 40 } 41 if err := _m.WriteInt64(_w, r.DstRecordingId); err != nil { 42 return err 43 } 44 if err := _m.WriteInt64(_w, r.StopPosition); err != nil { 45 return err 46 } 47 if err := _m.WriteInt64(_w, r.ChannelTagId); err != nil { 48 return err 49 } 50 if err := _m.WriteInt64(_w, r.SubscriptionTagId); err != nil { 51 return err 52 } 53 if err := _m.WriteInt32(_w, r.SrcControlStreamId); err != nil { 54 return err 55 } 56 if err := _m.WriteUint32(_w, uint32(len(r.SrcControlChannel))); err != nil { 57 return err 58 } 59 if err := _m.WriteBytes(_w, r.SrcControlChannel); err != nil { 60 return err 61 } 62 if err := _m.WriteUint32(_w, uint32(len(r.LiveDestination))); err != nil { 63 return err 64 } 65 if err := _m.WriteBytes(_w, r.LiveDestination); err != nil { 66 return err 67 } 68 if err := _m.WriteUint32(_w, uint32(len(r.ReplicationChannel))); err != nil { 69 return err 70 } 71 if err := _m.WriteBytes(_w, r.ReplicationChannel); err != nil { 72 return err 73 } 74 return nil 75 } 76 77 func (r *ReplicateRequest2) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16, blockLength uint16, doRangeCheck bool) error { 78 if !r.ControlSessionIdInActingVersion(actingVersion) { 79 r.ControlSessionId = r.ControlSessionIdNullValue() 80 } else { 81 if err := _m.ReadInt64(_r, &r.ControlSessionId); err != nil { 82 return err 83 } 84 } 85 if !r.CorrelationIdInActingVersion(actingVersion) { 86 r.CorrelationId = r.CorrelationIdNullValue() 87 } else { 88 if err := _m.ReadInt64(_r, &r.CorrelationId); err != nil { 89 return err 90 } 91 } 92 if !r.SrcRecordingIdInActingVersion(actingVersion) { 93 r.SrcRecordingId = r.SrcRecordingIdNullValue() 94 } else { 95 if err := _m.ReadInt64(_r, &r.SrcRecordingId); err != nil { 96 return err 97 } 98 } 99 if !r.DstRecordingIdInActingVersion(actingVersion) { 100 r.DstRecordingId = r.DstRecordingIdNullValue() 101 } else { 102 if err := _m.ReadInt64(_r, &r.DstRecordingId); err != nil { 103 return err 104 } 105 } 106 if !r.StopPositionInActingVersion(actingVersion) { 107 r.StopPosition = r.StopPositionNullValue() 108 } else { 109 if err := _m.ReadInt64(_r, &r.StopPosition); err != nil { 110 return err 111 } 112 } 113 if !r.ChannelTagIdInActingVersion(actingVersion) { 114 r.ChannelTagId = r.ChannelTagIdNullValue() 115 } else { 116 if err := _m.ReadInt64(_r, &r.ChannelTagId); err != nil { 117 return err 118 } 119 } 120 if !r.SubscriptionTagIdInActingVersion(actingVersion) { 121 r.SubscriptionTagId = r.SubscriptionTagIdNullValue() 122 } else { 123 if err := _m.ReadInt64(_r, &r.SubscriptionTagId); err != nil { 124 return err 125 } 126 } 127 if !r.SrcControlStreamIdInActingVersion(actingVersion) { 128 r.SrcControlStreamId = r.SrcControlStreamIdNullValue() 129 } else { 130 if err := _m.ReadInt32(_r, &r.SrcControlStreamId); err != nil { 131 return err 132 } 133 } 134 if actingVersion > r.SbeSchemaVersion() && blockLength > r.SbeBlockLength() { 135 io.CopyN(ioutil.Discard, _r, int64(blockLength-r.SbeBlockLength())) 136 } 137 138 if r.SrcControlChannelInActingVersion(actingVersion) { 139 var SrcControlChannelLength uint32 140 if err := _m.ReadUint32(_r, &SrcControlChannelLength); err != nil { 141 return err 142 } 143 if cap(r.SrcControlChannel) < int(SrcControlChannelLength) { 144 r.SrcControlChannel = make([]uint8, SrcControlChannelLength) 145 } 146 r.SrcControlChannel = r.SrcControlChannel[:SrcControlChannelLength] 147 if err := _m.ReadBytes(_r, r.SrcControlChannel); err != nil { 148 return err 149 } 150 } 151 152 if r.LiveDestinationInActingVersion(actingVersion) { 153 var LiveDestinationLength uint32 154 if err := _m.ReadUint32(_r, &LiveDestinationLength); err != nil { 155 return err 156 } 157 if cap(r.LiveDestination) < int(LiveDestinationLength) { 158 r.LiveDestination = make([]uint8, LiveDestinationLength) 159 } 160 r.LiveDestination = r.LiveDestination[:LiveDestinationLength] 161 if err := _m.ReadBytes(_r, r.LiveDestination); err != nil { 162 return err 163 } 164 } 165 166 if r.ReplicationChannelInActingVersion(actingVersion) { 167 var ReplicationChannelLength uint32 168 if err := _m.ReadUint32(_r, &ReplicationChannelLength); err != nil { 169 return err 170 } 171 if cap(r.ReplicationChannel) < int(ReplicationChannelLength) { 172 r.ReplicationChannel = make([]uint8, ReplicationChannelLength) 173 } 174 r.ReplicationChannel = r.ReplicationChannel[:ReplicationChannelLength] 175 if err := _m.ReadBytes(_r, r.ReplicationChannel); err != nil { 176 return err 177 } 178 } 179 if doRangeCheck { 180 if err := r.RangeCheck(actingVersion, r.SbeSchemaVersion()); err != nil { 181 return err 182 } 183 } 184 return nil 185 } 186 187 func (r *ReplicateRequest2) RangeCheck(actingVersion uint16, schemaVersion uint16) error { 188 if r.ControlSessionIdInActingVersion(actingVersion) { 189 if r.ControlSessionId < r.ControlSessionIdMinValue() || r.ControlSessionId > r.ControlSessionIdMaxValue() { 190 return fmt.Errorf("Range check failed on r.ControlSessionId (%v < %v > %v)", r.ControlSessionIdMinValue(), r.ControlSessionId, r.ControlSessionIdMaxValue()) 191 } 192 } 193 if r.CorrelationIdInActingVersion(actingVersion) { 194 if r.CorrelationId < r.CorrelationIdMinValue() || r.CorrelationId > r.CorrelationIdMaxValue() { 195 return fmt.Errorf("Range check failed on r.CorrelationId (%v < %v > %v)", r.CorrelationIdMinValue(), r.CorrelationId, r.CorrelationIdMaxValue()) 196 } 197 } 198 if r.SrcRecordingIdInActingVersion(actingVersion) { 199 if r.SrcRecordingId < r.SrcRecordingIdMinValue() || r.SrcRecordingId > r.SrcRecordingIdMaxValue() { 200 return fmt.Errorf("Range check failed on r.SrcRecordingId (%v < %v > %v)", r.SrcRecordingIdMinValue(), r.SrcRecordingId, r.SrcRecordingIdMaxValue()) 201 } 202 } 203 if r.DstRecordingIdInActingVersion(actingVersion) { 204 if r.DstRecordingId < r.DstRecordingIdMinValue() || r.DstRecordingId > r.DstRecordingIdMaxValue() { 205 return fmt.Errorf("Range check failed on r.DstRecordingId (%v < %v > %v)", r.DstRecordingIdMinValue(), r.DstRecordingId, r.DstRecordingIdMaxValue()) 206 } 207 } 208 if r.StopPositionInActingVersion(actingVersion) { 209 if r.StopPosition < r.StopPositionMinValue() || r.StopPosition > r.StopPositionMaxValue() { 210 return fmt.Errorf("Range check failed on r.StopPosition (%v < %v > %v)", r.StopPositionMinValue(), r.StopPosition, r.StopPositionMaxValue()) 211 } 212 } 213 if r.ChannelTagIdInActingVersion(actingVersion) { 214 if r.ChannelTagId < r.ChannelTagIdMinValue() || r.ChannelTagId > r.ChannelTagIdMaxValue() { 215 return fmt.Errorf("Range check failed on r.ChannelTagId (%v < %v > %v)", r.ChannelTagIdMinValue(), r.ChannelTagId, r.ChannelTagIdMaxValue()) 216 } 217 } 218 if r.SubscriptionTagIdInActingVersion(actingVersion) { 219 if r.SubscriptionTagId < r.SubscriptionTagIdMinValue() || r.SubscriptionTagId > r.SubscriptionTagIdMaxValue() { 220 return fmt.Errorf("Range check failed on r.SubscriptionTagId (%v < %v > %v)", r.SubscriptionTagIdMinValue(), r.SubscriptionTagId, r.SubscriptionTagIdMaxValue()) 221 } 222 } 223 if r.SrcControlStreamIdInActingVersion(actingVersion) { 224 if r.SrcControlStreamId < r.SrcControlStreamIdMinValue() || r.SrcControlStreamId > r.SrcControlStreamIdMaxValue() { 225 return fmt.Errorf("Range check failed on r.SrcControlStreamId (%v < %v > %v)", r.SrcControlStreamIdMinValue(), r.SrcControlStreamId, r.SrcControlStreamIdMaxValue()) 226 } 227 } 228 return nil 229 } 230 231 func ReplicateRequest2Init(r *ReplicateRequest2) { 232 return 233 } 234 235 func (*ReplicateRequest2) SbeBlockLength() (blockLength uint16) { 236 return 60 237 } 238 239 func (*ReplicateRequest2) SbeTemplateId() (templateId uint16) { 240 return 66 241 } 242 243 func (*ReplicateRequest2) SbeSchemaId() (schemaId uint16) { 244 return 101 245 } 246 247 func (*ReplicateRequest2) SbeSchemaVersion() (schemaVersion uint16) { 248 return 6 249 } 250 251 func (*ReplicateRequest2) SbeSemanticType() (semanticType []byte) { 252 return []byte("") 253 } 254 255 func (*ReplicateRequest2) ControlSessionIdId() uint16 { 256 return 1 257 } 258 259 func (*ReplicateRequest2) ControlSessionIdSinceVersion() uint16 { 260 return 0 261 } 262 263 func (r *ReplicateRequest2) ControlSessionIdInActingVersion(actingVersion uint16) bool { 264 return actingVersion >= r.ControlSessionIdSinceVersion() 265 } 266 267 func (*ReplicateRequest2) ControlSessionIdDeprecated() uint16 { 268 return 0 269 } 270 271 func (*ReplicateRequest2) ControlSessionIdMetaAttribute(meta int) string { 272 switch meta { 273 case 1: 274 return "" 275 case 2: 276 return "" 277 case 3: 278 return "" 279 case 4: 280 return "required" 281 } 282 return "" 283 } 284 285 func (*ReplicateRequest2) ControlSessionIdMinValue() int64 { 286 return math.MinInt64 + 1 287 } 288 289 func (*ReplicateRequest2) ControlSessionIdMaxValue() int64 { 290 return math.MaxInt64 291 } 292 293 func (*ReplicateRequest2) ControlSessionIdNullValue() int64 { 294 return math.MinInt64 295 } 296 297 func (*ReplicateRequest2) CorrelationIdId() uint16 { 298 return 2 299 } 300 301 func (*ReplicateRequest2) CorrelationIdSinceVersion() uint16 { 302 return 0 303 } 304 305 func (r *ReplicateRequest2) CorrelationIdInActingVersion(actingVersion uint16) bool { 306 return actingVersion >= r.CorrelationIdSinceVersion() 307 } 308 309 func (*ReplicateRequest2) CorrelationIdDeprecated() uint16 { 310 return 0 311 } 312 313 func (*ReplicateRequest2) CorrelationIdMetaAttribute(meta int) string { 314 switch meta { 315 case 1: 316 return "" 317 case 2: 318 return "" 319 case 3: 320 return "" 321 case 4: 322 return "required" 323 } 324 return "" 325 } 326 327 func (*ReplicateRequest2) CorrelationIdMinValue() int64 { 328 return math.MinInt64 + 1 329 } 330 331 func (*ReplicateRequest2) CorrelationIdMaxValue() int64 { 332 return math.MaxInt64 333 } 334 335 func (*ReplicateRequest2) CorrelationIdNullValue() int64 { 336 return math.MinInt64 337 } 338 339 func (*ReplicateRequest2) SrcRecordingIdId() uint16 { 340 return 3 341 } 342 343 func (*ReplicateRequest2) SrcRecordingIdSinceVersion() uint16 { 344 return 0 345 } 346 347 func (r *ReplicateRequest2) SrcRecordingIdInActingVersion(actingVersion uint16) bool { 348 return actingVersion >= r.SrcRecordingIdSinceVersion() 349 } 350 351 func (*ReplicateRequest2) SrcRecordingIdDeprecated() uint16 { 352 return 0 353 } 354 355 func (*ReplicateRequest2) SrcRecordingIdMetaAttribute(meta int) string { 356 switch meta { 357 case 1: 358 return "" 359 case 2: 360 return "" 361 case 3: 362 return "" 363 case 4: 364 return "required" 365 } 366 return "" 367 } 368 369 func (*ReplicateRequest2) SrcRecordingIdMinValue() int64 { 370 return math.MinInt64 + 1 371 } 372 373 func (*ReplicateRequest2) SrcRecordingIdMaxValue() int64 { 374 return math.MaxInt64 375 } 376 377 func (*ReplicateRequest2) SrcRecordingIdNullValue() int64 { 378 return math.MinInt64 379 } 380 381 func (*ReplicateRequest2) DstRecordingIdId() uint16 { 382 return 4 383 } 384 385 func (*ReplicateRequest2) DstRecordingIdSinceVersion() uint16 { 386 return 0 387 } 388 389 func (r *ReplicateRequest2) DstRecordingIdInActingVersion(actingVersion uint16) bool { 390 return actingVersion >= r.DstRecordingIdSinceVersion() 391 } 392 393 func (*ReplicateRequest2) DstRecordingIdDeprecated() uint16 { 394 return 0 395 } 396 397 func (*ReplicateRequest2) DstRecordingIdMetaAttribute(meta int) string { 398 switch meta { 399 case 1: 400 return "" 401 case 2: 402 return "" 403 case 3: 404 return "" 405 case 4: 406 return "required" 407 } 408 return "" 409 } 410 411 func (*ReplicateRequest2) DstRecordingIdMinValue() int64 { 412 return math.MinInt64 + 1 413 } 414 415 func (*ReplicateRequest2) DstRecordingIdMaxValue() int64 { 416 return math.MaxInt64 417 } 418 419 func (*ReplicateRequest2) DstRecordingIdNullValue() int64 { 420 return math.MinInt64 421 } 422 423 func (*ReplicateRequest2) StopPositionId() uint16 { 424 return 5 425 } 426 427 func (*ReplicateRequest2) StopPositionSinceVersion() uint16 { 428 return 0 429 } 430 431 func (r *ReplicateRequest2) StopPositionInActingVersion(actingVersion uint16) bool { 432 return actingVersion >= r.StopPositionSinceVersion() 433 } 434 435 func (*ReplicateRequest2) StopPositionDeprecated() uint16 { 436 return 0 437 } 438 439 func (*ReplicateRequest2) StopPositionMetaAttribute(meta int) string { 440 switch meta { 441 case 1: 442 return "" 443 case 2: 444 return "" 445 case 3: 446 return "" 447 case 4: 448 return "required" 449 } 450 return "" 451 } 452 453 func (*ReplicateRequest2) StopPositionMinValue() int64 { 454 return math.MinInt64 + 1 455 } 456 457 func (*ReplicateRequest2) StopPositionMaxValue() int64 { 458 return math.MaxInt64 459 } 460 461 func (*ReplicateRequest2) StopPositionNullValue() int64 { 462 return math.MinInt64 463 } 464 465 func (*ReplicateRequest2) ChannelTagIdId() uint16 { 466 return 6 467 } 468 469 func (*ReplicateRequest2) ChannelTagIdSinceVersion() uint16 { 470 return 0 471 } 472 473 func (r *ReplicateRequest2) ChannelTagIdInActingVersion(actingVersion uint16) bool { 474 return actingVersion >= r.ChannelTagIdSinceVersion() 475 } 476 477 func (*ReplicateRequest2) ChannelTagIdDeprecated() uint16 { 478 return 0 479 } 480 481 func (*ReplicateRequest2) ChannelTagIdMetaAttribute(meta int) string { 482 switch meta { 483 case 1: 484 return "" 485 case 2: 486 return "" 487 case 3: 488 return "" 489 case 4: 490 return "required" 491 } 492 return "" 493 } 494 495 func (*ReplicateRequest2) ChannelTagIdMinValue() int64 { 496 return math.MinInt64 + 1 497 } 498 499 func (*ReplicateRequest2) ChannelTagIdMaxValue() int64 { 500 return math.MaxInt64 501 } 502 503 func (*ReplicateRequest2) ChannelTagIdNullValue() int64 { 504 return math.MinInt64 505 } 506 507 func (*ReplicateRequest2) SubscriptionTagIdId() uint16 { 508 return 7 509 } 510 511 func (*ReplicateRequest2) SubscriptionTagIdSinceVersion() uint16 { 512 return 0 513 } 514 515 func (r *ReplicateRequest2) SubscriptionTagIdInActingVersion(actingVersion uint16) bool { 516 return actingVersion >= r.SubscriptionTagIdSinceVersion() 517 } 518 519 func (*ReplicateRequest2) SubscriptionTagIdDeprecated() uint16 { 520 return 0 521 } 522 523 func (*ReplicateRequest2) SubscriptionTagIdMetaAttribute(meta int) string { 524 switch meta { 525 case 1: 526 return "" 527 case 2: 528 return "" 529 case 3: 530 return "" 531 case 4: 532 return "required" 533 } 534 return "" 535 } 536 537 func (*ReplicateRequest2) SubscriptionTagIdMinValue() int64 { 538 return math.MinInt64 + 1 539 } 540 541 func (*ReplicateRequest2) SubscriptionTagIdMaxValue() int64 { 542 return math.MaxInt64 543 } 544 545 func (*ReplicateRequest2) SubscriptionTagIdNullValue() int64 { 546 return math.MinInt64 547 } 548 549 func (*ReplicateRequest2) SrcControlStreamIdId() uint16 { 550 return 8 551 } 552 553 func (*ReplicateRequest2) SrcControlStreamIdSinceVersion() uint16 { 554 return 0 555 } 556 557 func (r *ReplicateRequest2) SrcControlStreamIdInActingVersion(actingVersion uint16) bool { 558 return actingVersion >= r.SrcControlStreamIdSinceVersion() 559 } 560 561 func (*ReplicateRequest2) SrcControlStreamIdDeprecated() uint16 { 562 return 0 563 } 564 565 func (*ReplicateRequest2) SrcControlStreamIdMetaAttribute(meta int) string { 566 switch meta { 567 case 1: 568 return "" 569 case 2: 570 return "" 571 case 3: 572 return "" 573 case 4: 574 return "required" 575 } 576 return "" 577 } 578 579 func (*ReplicateRequest2) SrcControlStreamIdMinValue() int32 { 580 return math.MinInt32 + 1 581 } 582 583 func (*ReplicateRequest2) SrcControlStreamIdMaxValue() int32 { 584 return math.MaxInt32 585 } 586 587 func (*ReplicateRequest2) SrcControlStreamIdNullValue() int32 { 588 return math.MinInt32 589 } 590 591 func (*ReplicateRequest2) SrcControlChannelMetaAttribute(meta int) string { 592 switch meta { 593 case 1: 594 return "" 595 case 2: 596 return "" 597 case 3: 598 return "" 599 case 4: 600 return "required" 601 } 602 return "" 603 } 604 605 func (*ReplicateRequest2) SrcControlChannelSinceVersion() uint16 { 606 return 0 607 } 608 609 func (r *ReplicateRequest2) SrcControlChannelInActingVersion(actingVersion uint16) bool { 610 return actingVersion >= r.SrcControlChannelSinceVersion() 611 } 612 613 func (*ReplicateRequest2) SrcControlChannelDeprecated() uint16 { 614 return 0 615 } 616 617 func (ReplicateRequest2) SrcControlChannelCharacterEncoding() string { 618 return "US-ASCII" 619 } 620 621 func (ReplicateRequest2) SrcControlChannelHeaderLength() uint64 { 622 return 4 623 } 624 625 func (*ReplicateRequest2) LiveDestinationMetaAttribute(meta int) string { 626 switch meta { 627 case 1: 628 return "" 629 case 2: 630 return "" 631 case 3: 632 return "" 633 case 4: 634 return "required" 635 } 636 return "" 637 } 638 639 func (*ReplicateRequest2) LiveDestinationSinceVersion() uint16 { 640 return 0 641 } 642 643 func (r *ReplicateRequest2) LiveDestinationInActingVersion(actingVersion uint16) bool { 644 return actingVersion >= r.LiveDestinationSinceVersion() 645 } 646 647 func (*ReplicateRequest2) LiveDestinationDeprecated() uint16 { 648 return 0 649 } 650 651 func (ReplicateRequest2) LiveDestinationCharacterEncoding() string { 652 return "US-ASCII" 653 } 654 655 func (ReplicateRequest2) LiveDestinationHeaderLength() uint64 { 656 return 4 657 } 658 659 func (*ReplicateRequest2) ReplicationChannelMetaAttribute(meta int) string { 660 switch meta { 661 case 1: 662 return "" 663 case 2: 664 return "" 665 case 3: 666 return "" 667 case 4: 668 return "required" 669 } 670 return "" 671 } 672 673 func (*ReplicateRequest2) ReplicationChannelSinceVersion() uint16 { 674 return 0 675 } 676 677 func (r *ReplicateRequest2) ReplicationChannelInActingVersion(actingVersion uint16) bool { 678 return actingVersion >= r.ReplicationChannelSinceVersion() 679 } 680 681 func (*ReplicateRequest2) ReplicationChannelDeprecated() uint16 { 682 return 0 683 } 684 685 func (ReplicateRequest2) ReplicationChannelCharacterEncoding() string { 686 return "US-ASCII" 687 } 688 689 func (ReplicateRequest2) ReplicationChannelHeaderLength() uint64 { 690 return 4 691 }