github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/archive/codecs/PurgeSegmentsRequest.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 PurgeSegmentsRequest struct { 13 ControlSessionId int64 14 CorrelationId int64 15 RecordingId int64 16 NewStartPosition int64 17 } 18 19 func (p *PurgeSegmentsRequest) Encode(_m *SbeGoMarshaller, _w io.Writer, doRangeCheck bool) error { 20 if doRangeCheck { 21 if err := p.RangeCheck(p.SbeSchemaVersion(), p.SbeSchemaVersion()); err != nil { 22 return err 23 } 24 } 25 if err := _m.WriteInt64(_w, p.ControlSessionId); err != nil { 26 return err 27 } 28 if err := _m.WriteInt64(_w, p.CorrelationId); err != nil { 29 return err 30 } 31 if err := _m.WriteInt64(_w, p.RecordingId); err != nil { 32 return err 33 } 34 if err := _m.WriteInt64(_w, p.NewStartPosition); err != nil { 35 return err 36 } 37 return nil 38 } 39 40 func (p *PurgeSegmentsRequest) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16, blockLength uint16, doRangeCheck bool) error { 41 if !p.ControlSessionIdInActingVersion(actingVersion) { 42 p.ControlSessionId = p.ControlSessionIdNullValue() 43 } else { 44 if err := _m.ReadInt64(_r, &p.ControlSessionId); err != nil { 45 return err 46 } 47 } 48 if !p.CorrelationIdInActingVersion(actingVersion) { 49 p.CorrelationId = p.CorrelationIdNullValue() 50 } else { 51 if err := _m.ReadInt64(_r, &p.CorrelationId); err != nil { 52 return err 53 } 54 } 55 if !p.RecordingIdInActingVersion(actingVersion) { 56 p.RecordingId = p.RecordingIdNullValue() 57 } else { 58 if err := _m.ReadInt64(_r, &p.RecordingId); err != nil { 59 return err 60 } 61 } 62 if !p.NewStartPositionInActingVersion(actingVersion) { 63 p.NewStartPosition = p.NewStartPositionNullValue() 64 } else { 65 if err := _m.ReadInt64(_r, &p.NewStartPosition); err != nil { 66 return err 67 } 68 } 69 if actingVersion > p.SbeSchemaVersion() && blockLength > p.SbeBlockLength() { 70 io.CopyN(ioutil.Discard, _r, int64(blockLength-p.SbeBlockLength())) 71 } 72 if doRangeCheck { 73 if err := p.RangeCheck(actingVersion, p.SbeSchemaVersion()); err != nil { 74 return err 75 } 76 } 77 return nil 78 } 79 80 func (p *PurgeSegmentsRequest) RangeCheck(actingVersion uint16, schemaVersion uint16) error { 81 if p.ControlSessionIdInActingVersion(actingVersion) { 82 if p.ControlSessionId < p.ControlSessionIdMinValue() || p.ControlSessionId > p.ControlSessionIdMaxValue() { 83 return fmt.Errorf("Range check failed on p.ControlSessionId (%v < %v > %v)", p.ControlSessionIdMinValue(), p.ControlSessionId, p.ControlSessionIdMaxValue()) 84 } 85 } 86 if p.CorrelationIdInActingVersion(actingVersion) { 87 if p.CorrelationId < p.CorrelationIdMinValue() || p.CorrelationId > p.CorrelationIdMaxValue() { 88 return fmt.Errorf("Range check failed on p.CorrelationId (%v < %v > %v)", p.CorrelationIdMinValue(), p.CorrelationId, p.CorrelationIdMaxValue()) 89 } 90 } 91 if p.RecordingIdInActingVersion(actingVersion) { 92 if p.RecordingId < p.RecordingIdMinValue() || p.RecordingId > p.RecordingIdMaxValue() { 93 return fmt.Errorf("Range check failed on p.RecordingId (%v < %v > %v)", p.RecordingIdMinValue(), p.RecordingId, p.RecordingIdMaxValue()) 94 } 95 } 96 if p.NewStartPositionInActingVersion(actingVersion) { 97 if p.NewStartPosition < p.NewStartPositionMinValue() || p.NewStartPosition > p.NewStartPositionMaxValue() { 98 return fmt.Errorf("Range check failed on p.NewStartPosition (%v < %v > %v)", p.NewStartPositionMinValue(), p.NewStartPosition, p.NewStartPositionMaxValue()) 99 } 100 } 101 return nil 102 } 103 104 func PurgeSegmentsRequestInit(p *PurgeSegmentsRequest) { 105 return 106 } 107 108 func (*PurgeSegmentsRequest) SbeBlockLength() (blockLength uint16) { 109 return 32 110 } 111 112 func (*PurgeSegmentsRequest) SbeTemplateId() (templateId uint16) { 113 return 55 114 } 115 116 func (*PurgeSegmentsRequest) SbeSchemaId() (schemaId uint16) { 117 return 101 118 } 119 120 func (*PurgeSegmentsRequest) SbeSchemaVersion() (schemaVersion uint16) { 121 return 6 122 } 123 124 func (*PurgeSegmentsRequest) SbeSemanticType() (semanticType []byte) { 125 return []byte("") 126 } 127 128 func (*PurgeSegmentsRequest) ControlSessionIdId() uint16 { 129 return 1 130 } 131 132 func (*PurgeSegmentsRequest) ControlSessionIdSinceVersion() uint16 { 133 return 0 134 } 135 136 func (p *PurgeSegmentsRequest) ControlSessionIdInActingVersion(actingVersion uint16) bool { 137 return actingVersion >= p.ControlSessionIdSinceVersion() 138 } 139 140 func (*PurgeSegmentsRequest) ControlSessionIdDeprecated() uint16 { 141 return 0 142 } 143 144 func (*PurgeSegmentsRequest) ControlSessionIdMetaAttribute(meta int) string { 145 switch meta { 146 case 1: 147 return "" 148 case 2: 149 return "" 150 case 3: 151 return "" 152 case 4: 153 return "required" 154 } 155 return "" 156 } 157 158 func (*PurgeSegmentsRequest) ControlSessionIdMinValue() int64 { 159 return math.MinInt64 + 1 160 } 161 162 func (*PurgeSegmentsRequest) ControlSessionIdMaxValue() int64 { 163 return math.MaxInt64 164 } 165 166 func (*PurgeSegmentsRequest) ControlSessionIdNullValue() int64 { 167 return math.MinInt64 168 } 169 170 func (*PurgeSegmentsRequest) CorrelationIdId() uint16 { 171 return 2 172 } 173 174 func (*PurgeSegmentsRequest) CorrelationIdSinceVersion() uint16 { 175 return 0 176 } 177 178 func (p *PurgeSegmentsRequest) CorrelationIdInActingVersion(actingVersion uint16) bool { 179 return actingVersion >= p.CorrelationIdSinceVersion() 180 } 181 182 func (*PurgeSegmentsRequest) CorrelationIdDeprecated() uint16 { 183 return 0 184 } 185 186 func (*PurgeSegmentsRequest) CorrelationIdMetaAttribute(meta int) string { 187 switch meta { 188 case 1: 189 return "" 190 case 2: 191 return "" 192 case 3: 193 return "" 194 case 4: 195 return "required" 196 } 197 return "" 198 } 199 200 func (*PurgeSegmentsRequest) CorrelationIdMinValue() int64 { 201 return math.MinInt64 + 1 202 } 203 204 func (*PurgeSegmentsRequest) CorrelationIdMaxValue() int64 { 205 return math.MaxInt64 206 } 207 208 func (*PurgeSegmentsRequest) CorrelationIdNullValue() int64 { 209 return math.MinInt64 210 } 211 212 func (*PurgeSegmentsRequest) RecordingIdId() uint16 { 213 return 3 214 } 215 216 func (*PurgeSegmentsRequest) RecordingIdSinceVersion() uint16 { 217 return 0 218 } 219 220 func (p *PurgeSegmentsRequest) RecordingIdInActingVersion(actingVersion uint16) bool { 221 return actingVersion >= p.RecordingIdSinceVersion() 222 } 223 224 func (*PurgeSegmentsRequest) RecordingIdDeprecated() uint16 { 225 return 0 226 } 227 228 func (*PurgeSegmentsRequest) RecordingIdMetaAttribute(meta int) string { 229 switch meta { 230 case 1: 231 return "" 232 case 2: 233 return "" 234 case 3: 235 return "" 236 case 4: 237 return "required" 238 } 239 return "" 240 } 241 242 func (*PurgeSegmentsRequest) RecordingIdMinValue() int64 { 243 return math.MinInt64 + 1 244 } 245 246 func (*PurgeSegmentsRequest) RecordingIdMaxValue() int64 { 247 return math.MaxInt64 248 } 249 250 func (*PurgeSegmentsRequest) RecordingIdNullValue() int64 { 251 return math.MinInt64 252 } 253 254 func (*PurgeSegmentsRequest) NewStartPositionId() uint16 { 255 return 4 256 } 257 258 func (*PurgeSegmentsRequest) NewStartPositionSinceVersion() uint16 { 259 return 0 260 } 261 262 func (p *PurgeSegmentsRequest) NewStartPositionInActingVersion(actingVersion uint16) bool { 263 return actingVersion >= p.NewStartPositionSinceVersion() 264 } 265 266 func (*PurgeSegmentsRequest) NewStartPositionDeprecated() uint16 { 267 return 0 268 } 269 270 func (*PurgeSegmentsRequest) NewStartPositionMetaAttribute(meta int) string { 271 switch meta { 272 case 1: 273 return "" 274 case 2: 275 return "" 276 case 3: 277 return "" 278 case 4: 279 return "required" 280 } 281 return "" 282 } 283 284 func (*PurgeSegmentsRequest) NewStartPositionMinValue() int64 { 285 return math.MinInt64 + 1 286 } 287 288 func (*PurgeSegmentsRequest) NewStartPositionMaxValue() int64 { 289 return math.MaxInt64 290 } 291 292 func (*PurgeSegmentsRequest) NewStartPositionNullValue() int64 { 293 return math.MinInt64 294 }