workflowstate

package
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 15, 2022 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSignalChannel

func GetSignalChannel[T any](ctx sync.Context, wf *WfState, name string) sync.Channel[T]

func ReceiveSignal

func ReceiveSignal(ctx sync.Context, wf *WfState, name string, arg payload.Payload)

func WithWorkflowState

func WithWorkflowState(ctx sync.Context, wfState *WfState) sync.Context

Types

type DecodingSettable

type DecodingSettable func(v payload.Payload, err error)

func AsDecodingSettable

func AsDecodingSettable[T any](f sync.SettableFuture[T]) DecodingSettable

Use this to track futures for the workflow state

type WfState

type WfState struct {
	// contains filtered or unexported fields
}

func NewWorkflowState

func NewWorkflowState(instance core.WorkflowInstance, clock clock.Clock) *WfState

func WorkflowState

func WorkflowState(ctx sync.Context) *WfState

func (*WfState) AddCommand

func (wf *WfState) AddCommand(cmd *command.Command)

func (*WfState) ClearCommands

func (wf *WfState) ClearCommands()

func (*WfState) Commands

func (wf *WfState) Commands() []*command.Command

func (*WfState) FutureByScheduleEventID

func (wf *WfState) FutureByScheduleEventID(scheduleEventID int) (DecodingSettable, bool)

func (*WfState) GetNextScheduleEventID

func (wf *WfState) GetNextScheduleEventID() int

func (*WfState) Instance

func (wf *WfState) Instance() core.WorkflowInstance

func (*WfState) RemoveCommand

func (wf *WfState) RemoveCommand(cmd command.Command)

func (*WfState) RemoveCommandByEventID

func (wf *WfState) RemoveCommandByEventID(eventID int) *command.Command

func (*WfState) RemoveFuture

func (wf *WfState) RemoveFuture(scheduleEventID int)

func (*WfState) Replaying

func (wf *WfState) Replaying() bool

func (*WfState) SetReplaying

func (wf *WfState) SetReplaying(replaying bool)

func (*WfState) SetTime

func (wf *WfState) SetTime(t time.Time)

func (*WfState) Time

func (wf *WfState) Time() time.Time

func (*WfState) TrackFuture

func (wf *WfState) TrackFuture(scheduleEventID int, f DecodingSettable)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL