package states
import (
am "github.com/pancsta/asyncmachine-go/pkg/machine"
ssrpc "github.com/pancsta/asyncmachine-go/pkg/rpc/states"
"github.com/pancsta/asyncmachine-go/pkg/states"
. "github.com/pancsta/asyncmachine-go/pkg/states/global"
)
type ClientStatesDef struct {
*am .StatesBase
Exception string
ErrWorker string
ErrSupervisor string
WorkerDisconnected string
WorkerConnecting string
WorkerConnected string
WorkerDisconnecting string
WorkerReady string
Ready string
SuperDisconnected string
SuperConnecting string
SuperConnected string
SuperDisconnecting string
SuperReady string
WorkerRequested string
*states .BasicStatesDef
*ssrpc .ConsumerStatesDef
}
type ClientGroupsDef struct {
*states .ConnectedGroupsDef
}
var ClientSchema = SchemaMerge (
states .BasicSchema ,
ssrpc .ConsumerSchema ,
am .Schema {
ssC .ErrWorker : {Require : S {Exception }},
ssC .ErrSupervisor : {Require : S {Exception }},
ssC .SuperDisconnected : {},
ssC .SuperConnecting : {},
ssC .SuperConnected : {},
ssC .SuperDisconnecting : {},
ssC .SuperReady : {},
ssC .WorkerDisconnected : {},
ssC .WorkerConnecting : {},
ssC .WorkerConnected : {},
ssC .WorkerDisconnecting : {},
ssC .WorkerReady : {Remove : S {ssC .WorkerRequested }},
ssC .WorkerRequested : {Require : S {ssC .SuperReady }},
ssC .Ready : {
Auto : true ,
Require : S {ssC .WorkerReady },
},
})
var (
ssC = am .NewStates (ClientStatesDef {})
sgC = am .NewStateGroups (ClientGroupsDef {}, states .ConnectedGroups )
ClientStates = ssC
ClientGroups = sgC
)
The pages are generated with Golds v0.8.2 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .