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  }