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