Documentation ¶
Index ¶
- Constants
- Variables
- func UnmarshalPayload[T any](payload interface{}) (T, error)
- type Dispatcher
- type DispatcherImpl
- func (s *DispatcherImpl) Heartbeat(ctx context.Context, req *contracts.HeartbeatRequest) (*contracts.HeartbeatResponse, error)
- func (s *DispatcherImpl) Listen(request *contracts.WorkerListenRequest, ...) error
- func (s *DispatcherImpl) ListenV2(request *contracts.WorkerListenRequest, ...) error
- func (s *DispatcherImpl) PutOverridesData(ctx context.Context, request *contracts.OverridesData) (*contracts.OverridesDataResponse, error)
- func (d *DispatcherImpl) RefreshTimeout(ctx context.Context, request *contracts.RefreshTimeoutRequest) (*contracts.RefreshTimeoutResponse, error)
- func (s *DispatcherImpl) Register(ctx context.Context, request *contracts.WorkerRegisterRequest) (*contracts.WorkerRegisterResponse, error)
- func (s *DispatcherImpl) ReleaseSlot(ctx context.Context, req *contracts.ReleaseSlotRequest) (*contracts.ReleaseSlotResponse, error)
- func (s *DispatcherImpl) SendGroupKeyActionEvent(ctx context.Context, request *contracts.GroupKeyActionEvent) (*contracts.ActionEventResponse, error)
- func (s *DispatcherImpl) SendStepActionEvent(ctx context.Context, request *contracts.StepActionEvent) (*contracts.ActionEventResponse, error)
- func (d *DispatcherImpl) Start() (func() error, error)
- func (s *DispatcherImpl) SubscribeToWorkflowEvents(request *contracts.SubscribeToWorkflowEventsRequest, ...) error
- func (s *DispatcherImpl) SubscribeToWorkflowRuns(server contracts.Dispatcher_SubscribeToWorkflowRunsServer) error
- func (s *DispatcherImpl) Unsubscribe(ctx context.Context, request *contracts.WorkerUnsubscribeRequest) (*contracts.WorkerUnsubscribeResponse, error)
- func (s *DispatcherImpl) UpsertWorkerLabels(ctx context.Context, request *contracts.UpsertWorkerLabelsRequest) (*contracts.UpsertWorkerLabelsResponse, error)
- type DispatcherOpt
- func WithAlerter(a hatcheterrors.Alerter) DispatcherOpt
- func WithCache(cache cache.Cacheable) DispatcherOpt
- func WithDataDecoderValidator(dv datautils.DataDecoderValidator) DispatcherOpt
- func WithDispatcherId(dispatcherId string) DispatcherOpt
- func WithEntitlementsRepository(r repository.EntitlementsRepository) DispatcherOpt
- func WithLogger(l *zerolog.Logger) DispatcherOpt
- func WithMessageQueue(mq msgqueue.MessageQueue) DispatcherOpt
- func WithRepository(r repository.EngineRepository) DispatcherOpt
- type DispatcherOpts
Constants ¶
View Source
const HeartbeatInterval = 4 * time.Second
Variables ¶
View Source
var ErrWorkerNotFound = fmt.Errorf("worker not found")
Functions ¶
func UnmarshalPayload ¶ added in v0.41.0
Types ¶
type Dispatcher ¶
type Dispatcher interface { contracts.DispatcherServer Start() (func() error, error) }
type DispatcherImpl ¶
type DispatcherImpl struct { contracts.UnimplementedDispatcherServer // contains filtered or unexported fields }
func New ¶
func New(fs ...DispatcherOpt) (*DispatcherImpl, error)
func (*DispatcherImpl) Heartbeat ¶ added in v0.18.1
func (s *DispatcherImpl) Heartbeat(ctx context.Context, req *contracts.HeartbeatRequest) (*contracts.HeartbeatResponse, error)
Heartbeat is used to update the last heartbeat time for a worker
func (*DispatcherImpl) Listen ¶
func (s *DispatcherImpl) Listen(request *contracts.WorkerListenRequest, stream contracts.Dispatcher_ListenServer) error
Subscribe handles a subscribe request from a client
func (*DispatcherImpl) ListenV2 ¶ added in v0.18.1
func (s *DispatcherImpl) ListenV2(request *contracts.WorkerListenRequest, stream contracts.Dispatcher_ListenV2Server) error
ListenV2 is like Listen, but implementation does not include heartbeats. This should only used by SDKs against engine version v0.18.1+
func (*DispatcherImpl) PutOverridesData ¶ added in v0.11.0
func (s *DispatcherImpl) PutOverridesData(ctx context.Context, request *contracts.OverridesData) (*contracts.OverridesDataResponse, error)
func (*DispatcherImpl) RefreshTimeout ¶ added in v0.28.0
func (d *DispatcherImpl) RefreshTimeout(ctx context.Context, request *contracts.RefreshTimeoutRequest) (*contracts.RefreshTimeoutResponse, error)
func (*DispatcherImpl) Register ¶
func (s *DispatcherImpl) Register(ctx context.Context, request *contracts.WorkerRegisterRequest) (*contracts.WorkerRegisterResponse, error)
func (*DispatcherImpl) ReleaseSlot ¶ added in v0.27.0
func (s *DispatcherImpl) ReleaseSlot(ctx context.Context, req *contracts.ReleaseSlotRequest) (*contracts.ReleaseSlotResponse, error)
func (*DispatcherImpl) SendGroupKeyActionEvent ¶ added in v0.8.0
func (s *DispatcherImpl) SendGroupKeyActionEvent(ctx context.Context, request *contracts.GroupKeyActionEvent) (*contracts.ActionEventResponse, error)
func (*DispatcherImpl) SendStepActionEvent ¶ added in v0.8.0
func (s *DispatcherImpl) SendStepActionEvent(ctx context.Context, request *contracts.StepActionEvent) (*contracts.ActionEventResponse, error)
func (*DispatcherImpl) Start ¶
func (d *DispatcherImpl) Start() (func() error, error)
func (*DispatcherImpl) SubscribeToWorkflowEvents ¶ added in v0.9.0
func (s *DispatcherImpl) SubscribeToWorkflowEvents(request *contracts.SubscribeToWorkflowEventsRequest, stream contracts.Dispatcher_SubscribeToWorkflowEventsServer) error
func (*DispatcherImpl) SubscribeToWorkflowRuns ¶ added in v0.21.0
func (s *DispatcherImpl) SubscribeToWorkflowRuns(server contracts.Dispatcher_SubscribeToWorkflowRunsServer) error
SubscribeToWorkflowEvents registers workflow events with the dispatcher
func (*DispatcherImpl) Unsubscribe ¶
func (s *DispatcherImpl) Unsubscribe(ctx context.Context, request *contracts.WorkerUnsubscribeRequest) (*contracts.WorkerUnsubscribeResponse, error)
func (*DispatcherImpl) UpsertWorkerLabels ¶ added in v0.40.0
func (s *DispatcherImpl) UpsertWorkerLabels(ctx context.Context, request *contracts.UpsertWorkerLabelsRequest) (*contracts.UpsertWorkerLabelsResponse, error)
type DispatcherOpt ¶
type DispatcherOpt func(*DispatcherOpts)
func WithAlerter ¶ added in v0.16.1
func WithAlerter(a hatcheterrors.Alerter) DispatcherOpt
func WithCache ¶ added in v0.41.0
func WithCache(cache cache.Cacheable) DispatcherOpt
func WithDataDecoderValidator ¶
func WithDataDecoderValidator(dv datautils.DataDecoderValidator) DispatcherOpt
func WithDispatcherId ¶
func WithDispatcherId(dispatcherId string) DispatcherOpt
func WithEntitlementsRepository ¶ added in v0.31.0
func WithEntitlementsRepository(r repository.EntitlementsRepository) DispatcherOpt
func WithLogger ¶
func WithLogger(l *zerolog.Logger) DispatcherOpt
func WithMessageQueue ¶ added in v0.16.0
func WithMessageQueue(mq msgqueue.MessageQueue) DispatcherOpt
func WithRepository ¶
func WithRepository(r repository.EngineRepository) DispatcherOpt
type DispatcherOpts ¶
type DispatcherOpts struct {
// contains filtered or unexported fields
}
Click to show internal directories.
Click to hide internal directories.