swfsm

module
v0.0.0-...-8e6450d Latest Latest
Warning

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

Go to latest
Published: Jun 12, 2020 License: MIT

README

swfsm

  • simple workflow finite state machines

go library that provides a Finite State Machine abstraction and other niceties on top of swf apis.

Built using the aws-sdk-go

Build Status

features

  • Pollers for both ActivityTasks and DecisionTasks which work around some of the eccentricities of the swf service.

  • erlang/akka style Finite State Machine abstraction, which is used to model workflows as FSMs.

  • primitives for composing the event processing logic for each state in your FSMs.

  • migrators that make sure expected Domains, WorkflowTypes, ActivityTypes, KinesisStreams and DynamoDB tables are created.

Please see the godoc for detailed documentation and examples.

versions

Please see vendor/vendor.json for the version of aws-sdk-go that this lib currently supports.

Directories

Path Synopsis
fsm
Package fsm layers an erlang/akka style finite state machine abstraction on top of SWF, and facilitates modeling your workflows as FSMs.
Package fsm layers an erlang/akka style finite state machine abstraction on top of SWF, and facilitates modeling your workflows as FSMs.
jsonpbserializer
Package jsonpbserializer implements a fsm.StateSerializer that uses jsonpb as the underlying JSON serializer, rather than stdlibs.
Package jsonpbserializer implements a fsm.StateSerializer that uses jsonpb as the underlying JSON serializer, rather than stdlibs.
internal
Package poller contains TaskPollers and PollerShutdownManager to help workaround the 'phantom' task assignment in SWF, by alowing your pollers to wait until any in-flight polls are done to shut down.
Package poller contains TaskPollers and PollerShutdownManager to help workaround the 'phantom' task assignment in SWF, by alowing your pollers to wait until any in-flight polls are done to shut down.
Package sugar provides some helpers to reduce boilerplate around aws-sdk-go it is imported as `import .
Package sugar provides some helpers to reduce boilerplate around aws-sdk-go it is imported as `import .

Jump to

Keyboard shortcuts

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