gitlab.com/evatix-go/core@v1.3.55/coreinterface/corepubsubinf/all-records-interfaces.go (about)

     1  package corepubsubinf
     2  
     3  import (
     4  	"gitlab.com/evatix-go/core/coreinterface"
     5  	"gitlab.com/evatix-go/core/coreinterface/enuminf"
     6  	"gitlab.com/evatix-go/core/coreinterface/errcoreinf"
     7  	"gitlab.com/evatix-go/core/coreinterface/loggerinf"
     8  	"gitlab.com/evatix-go/core/coreinterface/pathextendinf"
     9  	"gitlab.com/evatix-go/core/internal/internalinterface"
    10  )
    11  
    12  type IdAsStringer interface {
    13  	internalinterface.IdAsStringer
    14  }
    15  
    16  type SubscriptionMainRecorder interface {
    17  	IdAsStringer
    18  	TableName() string
    19  
    20  	IsEmpty() bool
    21  
    22  	pathextendinf.PathExtenderGetter
    23  
    24  	HasRecordError() bool
    25  	SetRecordError() bool
    26  	IsArchivedRecord() bool
    27  	IsCompletedRecord() bool
    28  	IsMigratedRecord() bool
    29  	CompletionTyper() enuminf.CompletionStateTyper
    30  
    31  	// DefaultDelayMillis
    32  	//
    33  	//  Default delay in milliseconds
    34  	DefaultDelayMillis() int
    35  }
    36  
    37  type BaseLogModeler interface {
    38  	enuminf.LoggerTyperGetter
    39  	enuminf.EventTyperGetter
    40  	errcoreinf.BasicErrorTyperGetter
    41  	errcoreinf.ErrorStringGetter
    42  	coreinterface.StackTracesBytesGetter
    43  	coreinterface.JsonErrorBytesGetter
    44  	IsEmpty() bool
    45  	LogMessage() string
    46  }
    47  
    48  type CommunicateModeler interface {
    49  	BaseLogModeler() BaseLogModeler
    50  	PersistentId() uint
    51  	IdAsStringer
    52  	TableName() string
    53  
    54  	SetCallerFileLineUsingStackSkip(
    55  		stackSkip int,
    56  	)
    57  
    58  	loggerinf.SingleLogModeler
    59  }
    60  
    61  type SubscriptionRecorder interface {
    62  	MainRecord() SubscriptionMainRecorder
    63  	CommunicateRecord() CommunicateModeler
    64  }