github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/cluster/codecs/NewLeadershipTermEvent.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 NewLeadershipTermEvent struct { 13 LeadershipTermId int64 14 LogPosition int64 15 Timestamp int64 16 TermBaseLogPosition int64 17 LeaderMemberId int32 18 LogSessionId int32 19 TimeUnit ClusterTimeUnitEnum 20 AppVersion int32 21 } 22 23 func (n *NewLeadershipTermEvent) Encode(_m *SbeGoMarshaller, _w io.Writer, doRangeCheck bool) error { 24 if doRangeCheck { 25 if err := n.RangeCheck(n.SbeSchemaVersion(), n.SbeSchemaVersion()); err != nil { 26 return err 27 } 28 } 29 if err := _m.WriteInt64(_w, n.LeadershipTermId); err != nil { 30 return err 31 } 32 if err := _m.WriteInt64(_w, n.LogPosition); err != nil { 33 return err 34 } 35 if err := _m.WriteInt64(_w, n.Timestamp); err != nil { 36 return err 37 } 38 if err := _m.WriteInt64(_w, n.TermBaseLogPosition); err != nil { 39 return err 40 } 41 if err := _m.WriteInt32(_w, n.LeaderMemberId); err != nil { 42 return err 43 } 44 if err := _m.WriteInt32(_w, n.LogSessionId); err != nil { 45 return err 46 } 47 if err := n.TimeUnit.Encode(_m, _w); err != nil { 48 return err 49 } 50 if err := _m.WriteInt32(_w, n.AppVersion); err != nil { 51 return err 52 } 53 return nil 54 } 55 56 func (n *NewLeadershipTermEvent) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16, blockLength uint16, doRangeCheck bool) error { 57 if !n.LeadershipTermIdInActingVersion(actingVersion) { 58 n.LeadershipTermId = n.LeadershipTermIdNullValue() 59 } else { 60 if err := _m.ReadInt64(_r, &n.LeadershipTermId); err != nil { 61 return err 62 } 63 } 64 if !n.LogPositionInActingVersion(actingVersion) { 65 n.LogPosition = n.LogPositionNullValue() 66 } else { 67 if err := _m.ReadInt64(_r, &n.LogPosition); err != nil { 68 return err 69 } 70 } 71 if !n.TimestampInActingVersion(actingVersion) { 72 n.Timestamp = n.TimestampNullValue() 73 } else { 74 if err := _m.ReadInt64(_r, &n.Timestamp); err != nil { 75 return err 76 } 77 } 78 if !n.TermBaseLogPositionInActingVersion(actingVersion) { 79 n.TermBaseLogPosition = n.TermBaseLogPositionNullValue() 80 } else { 81 if err := _m.ReadInt64(_r, &n.TermBaseLogPosition); err != nil { 82 return err 83 } 84 } 85 if !n.LeaderMemberIdInActingVersion(actingVersion) { 86 n.LeaderMemberId = n.LeaderMemberIdNullValue() 87 } else { 88 if err := _m.ReadInt32(_r, &n.LeaderMemberId); err != nil { 89 return err 90 } 91 } 92 if !n.LogSessionIdInActingVersion(actingVersion) { 93 n.LogSessionId = n.LogSessionIdNullValue() 94 } else { 95 if err := _m.ReadInt32(_r, &n.LogSessionId); err != nil { 96 return err 97 } 98 } 99 if n.TimeUnitInActingVersion(actingVersion) { 100 if err := n.TimeUnit.Decode(_m, _r, actingVersion); err != nil { 101 return err 102 } 103 } 104 if !n.AppVersionInActingVersion(actingVersion) { 105 n.AppVersion = n.AppVersionNullValue() 106 } else { 107 if err := _m.ReadInt32(_r, &n.AppVersion); err != nil { 108 return err 109 } 110 } 111 if actingVersion > n.SbeSchemaVersion() && blockLength > n.SbeBlockLength() { 112 io.CopyN(ioutil.Discard, _r, int64(blockLength-n.SbeBlockLength())) 113 } 114 if doRangeCheck { 115 if err := n.RangeCheck(actingVersion, n.SbeSchemaVersion()); err != nil { 116 return err 117 } 118 } 119 return nil 120 } 121 122 func (n *NewLeadershipTermEvent) RangeCheck(actingVersion uint16, schemaVersion uint16) error { 123 if n.LeadershipTermIdInActingVersion(actingVersion) { 124 if n.LeadershipTermId < n.LeadershipTermIdMinValue() || n.LeadershipTermId > n.LeadershipTermIdMaxValue() { 125 return fmt.Errorf("Range check failed on n.LeadershipTermId (%v < %v > %v)", n.LeadershipTermIdMinValue(), n.LeadershipTermId, n.LeadershipTermIdMaxValue()) 126 } 127 } 128 if n.LogPositionInActingVersion(actingVersion) { 129 if n.LogPosition < n.LogPositionMinValue() || n.LogPosition > n.LogPositionMaxValue() { 130 return fmt.Errorf("Range check failed on n.LogPosition (%v < %v > %v)", n.LogPositionMinValue(), n.LogPosition, n.LogPositionMaxValue()) 131 } 132 } 133 if n.TimestampInActingVersion(actingVersion) { 134 if n.Timestamp < n.TimestampMinValue() || n.Timestamp > n.TimestampMaxValue() { 135 return fmt.Errorf("Range check failed on n.Timestamp (%v < %v > %v)", n.TimestampMinValue(), n.Timestamp, n.TimestampMaxValue()) 136 } 137 } 138 if n.TermBaseLogPositionInActingVersion(actingVersion) { 139 if n.TermBaseLogPosition < n.TermBaseLogPositionMinValue() || n.TermBaseLogPosition > n.TermBaseLogPositionMaxValue() { 140 return fmt.Errorf("Range check failed on n.TermBaseLogPosition (%v < %v > %v)", n.TermBaseLogPositionMinValue(), n.TermBaseLogPosition, n.TermBaseLogPositionMaxValue()) 141 } 142 } 143 if n.LeaderMemberIdInActingVersion(actingVersion) { 144 if n.LeaderMemberId < n.LeaderMemberIdMinValue() || n.LeaderMemberId > n.LeaderMemberIdMaxValue() { 145 return fmt.Errorf("Range check failed on n.LeaderMemberId (%v < %v > %v)", n.LeaderMemberIdMinValue(), n.LeaderMemberId, n.LeaderMemberIdMaxValue()) 146 } 147 } 148 if n.LogSessionIdInActingVersion(actingVersion) { 149 if n.LogSessionId < n.LogSessionIdMinValue() || n.LogSessionId > n.LogSessionIdMaxValue() { 150 return fmt.Errorf("Range check failed on n.LogSessionId (%v < %v > %v)", n.LogSessionIdMinValue(), n.LogSessionId, n.LogSessionIdMaxValue()) 151 } 152 } 153 if err := n.TimeUnit.RangeCheck(actingVersion, schemaVersion); err != nil { 154 return err 155 } 156 if n.AppVersionInActingVersion(actingVersion) { 157 if n.AppVersion != n.AppVersionNullValue() && (n.AppVersion < n.AppVersionMinValue() || n.AppVersion > n.AppVersionMaxValue()) { 158 return fmt.Errorf("Range check failed on n.AppVersion (%v < %v > %v)", n.AppVersionMinValue(), n.AppVersion, n.AppVersionMaxValue()) 159 } 160 } 161 return nil 162 } 163 164 func NewLeadershipTermEventInit(n *NewLeadershipTermEvent) { 165 n.AppVersion = 0 166 return 167 } 168 169 func (*NewLeadershipTermEvent) SbeBlockLength() (blockLength uint16) { 170 return 48 171 } 172 173 func (*NewLeadershipTermEvent) SbeTemplateId() (templateId uint16) { 174 return 24 175 } 176 177 func (*NewLeadershipTermEvent) SbeSchemaId() (schemaId uint16) { 178 return 111 179 } 180 181 func (*NewLeadershipTermEvent) SbeSchemaVersion() (schemaVersion uint16) { 182 return 8 183 } 184 185 func (*NewLeadershipTermEvent) SbeSemanticType() (semanticType []byte) { 186 return []byte("") 187 } 188 189 func (*NewLeadershipTermEvent) LeadershipTermIdId() uint16 { 190 return 1 191 } 192 193 func (*NewLeadershipTermEvent) LeadershipTermIdSinceVersion() uint16 { 194 return 0 195 } 196 197 func (n *NewLeadershipTermEvent) LeadershipTermIdInActingVersion(actingVersion uint16) bool { 198 return actingVersion >= n.LeadershipTermIdSinceVersion() 199 } 200 201 func (*NewLeadershipTermEvent) LeadershipTermIdDeprecated() uint16 { 202 return 0 203 } 204 205 func (*NewLeadershipTermEvent) LeadershipTermIdMetaAttribute(meta int) string { 206 switch meta { 207 case 1: 208 return "" 209 case 2: 210 return "" 211 case 3: 212 return "" 213 case 4: 214 return "required" 215 } 216 return "" 217 } 218 219 func (*NewLeadershipTermEvent) LeadershipTermIdMinValue() int64 { 220 return math.MinInt64 + 1 221 } 222 223 func (*NewLeadershipTermEvent) LeadershipTermIdMaxValue() int64 { 224 return math.MaxInt64 225 } 226 227 func (*NewLeadershipTermEvent) LeadershipTermIdNullValue() int64 { 228 return math.MinInt64 229 } 230 231 func (*NewLeadershipTermEvent) LogPositionId() uint16 { 232 return 2 233 } 234 235 func (*NewLeadershipTermEvent) LogPositionSinceVersion() uint16 { 236 return 0 237 } 238 239 func (n *NewLeadershipTermEvent) LogPositionInActingVersion(actingVersion uint16) bool { 240 return actingVersion >= n.LogPositionSinceVersion() 241 } 242 243 func (*NewLeadershipTermEvent) LogPositionDeprecated() uint16 { 244 return 0 245 } 246 247 func (*NewLeadershipTermEvent) LogPositionMetaAttribute(meta int) string { 248 switch meta { 249 case 1: 250 return "" 251 case 2: 252 return "" 253 case 3: 254 return "" 255 case 4: 256 return "required" 257 } 258 return "" 259 } 260 261 func (*NewLeadershipTermEvent) LogPositionMinValue() int64 { 262 return math.MinInt64 + 1 263 } 264 265 func (*NewLeadershipTermEvent) LogPositionMaxValue() int64 { 266 return math.MaxInt64 267 } 268 269 func (*NewLeadershipTermEvent) LogPositionNullValue() int64 { 270 return math.MinInt64 271 } 272 273 func (*NewLeadershipTermEvent) TimestampId() uint16 { 274 return 3 275 } 276 277 func (*NewLeadershipTermEvent) TimestampSinceVersion() uint16 { 278 return 0 279 } 280 281 func (n *NewLeadershipTermEvent) TimestampInActingVersion(actingVersion uint16) bool { 282 return actingVersion >= n.TimestampSinceVersion() 283 } 284 285 func (*NewLeadershipTermEvent) TimestampDeprecated() uint16 { 286 return 0 287 } 288 289 func (*NewLeadershipTermEvent) TimestampMetaAttribute(meta int) string { 290 switch meta { 291 case 1: 292 return "" 293 case 2: 294 return "" 295 case 3: 296 return "" 297 case 4: 298 return "required" 299 } 300 return "" 301 } 302 303 func (*NewLeadershipTermEvent) TimestampMinValue() int64 { 304 return math.MinInt64 + 1 305 } 306 307 func (*NewLeadershipTermEvent) TimestampMaxValue() int64 { 308 return math.MaxInt64 309 } 310 311 func (*NewLeadershipTermEvent) TimestampNullValue() int64 { 312 return math.MinInt64 313 } 314 315 func (*NewLeadershipTermEvent) TermBaseLogPositionId() uint16 { 316 return 4 317 } 318 319 func (*NewLeadershipTermEvent) TermBaseLogPositionSinceVersion() uint16 { 320 return 0 321 } 322 323 func (n *NewLeadershipTermEvent) TermBaseLogPositionInActingVersion(actingVersion uint16) bool { 324 return actingVersion >= n.TermBaseLogPositionSinceVersion() 325 } 326 327 func (*NewLeadershipTermEvent) TermBaseLogPositionDeprecated() uint16 { 328 return 0 329 } 330 331 func (*NewLeadershipTermEvent) TermBaseLogPositionMetaAttribute(meta int) string { 332 switch meta { 333 case 1: 334 return "" 335 case 2: 336 return "" 337 case 3: 338 return "" 339 case 4: 340 return "required" 341 } 342 return "" 343 } 344 345 func (*NewLeadershipTermEvent) TermBaseLogPositionMinValue() int64 { 346 return math.MinInt64 + 1 347 } 348 349 func (*NewLeadershipTermEvent) TermBaseLogPositionMaxValue() int64 { 350 return math.MaxInt64 351 } 352 353 func (*NewLeadershipTermEvent) TermBaseLogPositionNullValue() int64 { 354 return math.MinInt64 355 } 356 357 func (*NewLeadershipTermEvent) LeaderMemberIdId() uint16 { 358 return 5 359 } 360 361 func (*NewLeadershipTermEvent) LeaderMemberIdSinceVersion() uint16 { 362 return 0 363 } 364 365 func (n *NewLeadershipTermEvent) LeaderMemberIdInActingVersion(actingVersion uint16) bool { 366 return actingVersion >= n.LeaderMemberIdSinceVersion() 367 } 368 369 func (*NewLeadershipTermEvent) LeaderMemberIdDeprecated() uint16 { 370 return 0 371 } 372 373 func (*NewLeadershipTermEvent) LeaderMemberIdMetaAttribute(meta int) string { 374 switch meta { 375 case 1: 376 return "" 377 case 2: 378 return "" 379 case 3: 380 return "" 381 case 4: 382 return "required" 383 } 384 return "" 385 } 386 387 func (*NewLeadershipTermEvent) LeaderMemberIdMinValue() int32 { 388 return math.MinInt32 + 1 389 } 390 391 func (*NewLeadershipTermEvent) LeaderMemberIdMaxValue() int32 { 392 return math.MaxInt32 393 } 394 395 func (*NewLeadershipTermEvent) LeaderMemberIdNullValue() int32 { 396 return math.MinInt32 397 } 398 399 func (*NewLeadershipTermEvent) LogSessionIdId() uint16 { 400 return 6 401 } 402 403 func (*NewLeadershipTermEvent) LogSessionIdSinceVersion() uint16 { 404 return 0 405 } 406 407 func (n *NewLeadershipTermEvent) LogSessionIdInActingVersion(actingVersion uint16) bool { 408 return actingVersion >= n.LogSessionIdSinceVersion() 409 } 410 411 func (*NewLeadershipTermEvent) LogSessionIdDeprecated() uint16 { 412 return 0 413 } 414 415 func (*NewLeadershipTermEvent) LogSessionIdMetaAttribute(meta int) string { 416 switch meta { 417 case 1: 418 return "" 419 case 2: 420 return "" 421 case 3: 422 return "" 423 case 4: 424 return "required" 425 } 426 return "" 427 } 428 429 func (*NewLeadershipTermEvent) LogSessionIdMinValue() int32 { 430 return math.MinInt32 + 1 431 } 432 433 func (*NewLeadershipTermEvent) LogSessionIdMaxValue() int32 { 434 return math.MaxInt32 435 } 436 437 func (*NewLeadershipTermEvent) LogSessionIdNullValue() int32 { 438 return math.MinInt32 439 } 440 441 func (*NewLeadershipTermEvent) TimeUnitId() uint16 { 442 return 7 443 } 444 445 func (*NewLeadershipTermEvent) TimeUnitSinceVersion() uint16 { 446 return 4 447 } 448 449 func (n *NewLeadershipTermEvent) TimeUnitInActingVersion(actingVersion uint16) bool { 450 return actingVersion >= n.TimeUnitSinceVersion() 451 } 452 453 func (*NewLeadershipTermEvent) TimeUnitDeprecated() uint16 { 454 return 0 455 } 456 457 func (*NewLeadershipTermEvent) TimeUnitMetaAttribute(meta int) string { 458 switch meta { 459 case 1: 460 return "" 461 case 2: 462 return "" 463 case 3: 464 return "" 465 case 4: 466 return "optional" 467 } 468 return "" 469 } 470 471 func (*NewLeadershipTermEvent) AppVersionId() uint16 { 472 return 8 473 } 474 475 func (*NewLeadershipTermEvent) AppVersionSinceVersion() uint16 { 476 return 4 477 } 478 479 func (n *NewLeadershipTermEvent) AppVersionInActingVersion(actingVersion uint16) bool { 480 return actingVersion >= n.AppVersionSinceVersion() 481 } 482 483 func (*NewLeadershipTermEvent) AppVersionDeprecated() uint16 { 484 return 0 485 } 486 487 func (*NewLeadershipTermEvent) AppVersionMetaAttribute(meta int) string { 488 switch meta { 489 case 1: 490 return "" 491 case 2: 492 return "" 493 case 3: 494 return "" 495 case 4: 496 return "optional" 497 } 498 return "" 499 } 500 501 func (*NewLeadershipTermEvent) AppVersionMinValue() int32 { 502 return 1 503 } 504 505 func (*NewLeadershipTermEvent) AppVersionMaxValue() int32 { 506 return 16777215 507 } 508 509 func (*NewLeadershipTermEvent) AppVersionNullValue() int32 { 510 return 0 511 }