github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/cluster/codecs/CancelTimer.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 CancelTimer struct { 13 CorrelationId int64 14 } 15 16 func (c *CancelTimer) Encode(_m *SbeGoMarshaller, _w io.Writer, doRangeCheck bool) error { 17 if doRangeCheck { 18 if err := c.RangeCheck(c.SbeSchemaVersion(), c.SbeSchemaVersion()); err != nil { 19 return err 20 } 21 } 22 if err := _m.WriteInt64(_w, c.CorrelationId); err != nil { 23 return err 24 } 25 return nil 26 } 27 28 func (c *CancelTimer) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16, blockLength uint16, doRangeCheck bool) error { 29 if !c.CorrelationIdInActingVersion(actingVersion) { 30 c.CorrelationId = c.CorrelationIdNullValue() 31 } else { 32 if err := _m.ReadInt64(_r, &c.CorrelationId); err != nil { 33 return err 34 } 35 } 36 if actingVersion > c.SbeSchemaVersion() && blockLength > c.SbeBlockLength() { 37 io.CopyN(ioutil.Discard, _r, int64(blockLength-c.SbeBlockLength())) 38 } 39 if doRangeCheck { 40 if err := c.RangeCheck(actingVersion, c.SbeSchemaVersion()); err != nil { 41 return err 42 } 43 } 44 return nil 45 } 46 47 func (c *CancelTimer) RangeCheck(actingVersion uint16, schemaVersion uint16) error { 48 if c.CorrelationIdInActingVersion(actingVersion) { 49 if c.CorrelationId < c.CorrelationIdMinValue() || c.CorrelationId > c.CorrelationIdMaxValue() { 50 return fmt.Errorf("Range check failed on c.CorrelationId (%v < %v > %v)", c.CorrelationIdMinValue(), c.CorrelationId, c.CorrelationIdMaxValue()) 51 } 52 } 53 return nil 54 } 55 56 func CancelTimerInit(c *CancelTimer) { 57 return 58 } 59 60 func (*CancelTimer) SbeBlockLength() (blockLength uint16) { 61 return 8 62 } 63 64 func (*CancelTimer) SbeTemplateId() (templateId uint16) { 65 return 32 66 } 67 68 func (*CancelTimer) SbeSchemaId() (schemaId uint16) { 69 return 111 70 } 71 72 func (*CancelTimer) SbeSchemaVersion() (schemaVersion uint16) { 73 return 8 74 } 75 76 func (*CancelTimer) SbeSemanticType() (semanticType []byte) { 77 return []byte("") 78 } 79 80 func (*CancelTimer) CorrelationIdId() uint16 { 81 return 1 82 } 83 84 func (*CancelTimer) CorrelationIdSinceVersion() uint16 { 85 return 0 86 } 87 88 func (c *CancelTimer) CorrelationIdInActingVersion(actingVersion uint16) bool { 89 return actingVersion >= c.CorrelationIdSinceVersion() 90 } 91 92 func (*CancelTimer) CorrelationIdDeprecated() uint16 { 93 return 0 94 } 95 96 func (*CancelTimer) CorrelationIdMetaAttribute(meta int) string { 97 switch meta { 98 case 1: 99 return "" 100 case 2: 101 return "" 102 case 3: 103 return "" 104 case 4: 105 return "required" 106 } 107 return "" 108 } 109 110 func (*CancelTimer) CorrelationIdMinValue() int64 { 111 return math.MinInt64 + 1 112 } 113 114 func (*CancelTimer) CorrelationIdMaxValue() int64 { 115 return math.MaxInt64 116 } 117 118 func (*CancelTimer) CorrelationIdNullValue() int64 { 119 return math.MinInt64 120 }