Documentation
¶
Overview ¶
Package registry stores validated node, condition, capability, and state module definitions.
Index ¶
- func StateModuleKey(name, version string) string
- type BuildContext
- type ChildRunBuilder
- type ChildRunRunner
- type ConditionDefinition
- type EdgeCondition
- func (condition EdgeCondition) CloneSpec() dsl.GraphConditionSpec
- func (condition EdgeCondition) EvaluateRoute(ctx context.Context, current *state.State) (RouteDecision, error)
- func (condition EdgeCondition) Validate() error
- func (condition EdgeCondition) WithSpec(spec dsl.GraphConditionSpec) EdgeCondition
- type EdgeConditionEvaluator
- type GraphResolver
- type NodeBuilder
- type NodeGroup
- type NodeTypeDefinition
- type Registry
- func (r *Registry) CapabilityDefinitions() map[string]dsl.StateCapabilityDefinition
- func (r *Registry) CapabilityModule(id string) (string, bool)
- func (r *Registry) ConditionDefinitions() map[string]ConditionDefinition
- func (r *Registry) FindCapability(id string) (dsl.StateCapabilityDefinition, bool)
- func (r *Registry) FindCondition(conditionType string) (ConditionDefinition, bool)
- func (r *Registry) FindNodeGroup(name string) (NodeGroup, bool)
- func (r *Registry) FindNodeType(nodeType string) (NodeTypeDefinition, bool)
- func (r *Registry) FindReducer(identifier string) (state.Reducer, bool)
- func (r *Registry) FindStateModule(name, version string) (dsl.StateModuleDefinition, bool)
- func (r *Registry) JSONSchema() dsl.JSONSchema
- func (r *Registry) NodeGroupDefinitions() map[string]NodeGroup
- func (r *Registry) NodeTypeDefinitions() map[string]NodeTypeDefinition
- func (r *Registry) ReducerIDs() []string
- func (r *Registry) RegisterCondition(def ConditionDefinition) error
- func (r *Registry) RegisterNodeType(def NodeTypeDefinition) error
- func (r *Registry) RegisterNodeTypeInGroup(group string, def NodeTypeDefinition) error
- func (r *Registry) RegisterReducer(identifier string, reducer state.Reducer) error
- func (r *Registry) RegisterStateModule(def dsl.StateModuleDefinition) error
- func (r *Registry) ResolveCondition(spec ResolvedConditionSpec) (EdgeCondition, error)
- func (r *Registry) StateFieldDefinitions() map[string]dsl.StateFieldDefinition
- func (r *Registry) StateModuleDefinitions() map[string]dsl.StateModuleDefinition
- type ResolvedConditionSpec
- type ResolvedNodeSpec
- type ResolvedStateBinding
- type RouteDecision
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func StateModuleKey ¶
Types ¶
type BuildContext ¶
type BuildContext struct {
InstanceConfig *dsl.GraphInstanceConfig
GraphResolver GraphResolver
ChildRunBuilder ChildRunBuilder
OnContractDiagnostic func(core.ContractDiagnostic)
}
func (*BuildContext) Clone ¶
func (ctx *BuildContext) Clone() *BuildContext
func (*BuildContext) EmitContractDiagnostics ¶
func (ctx *BuildContext) EmitContractDiagnostics(diagnostics []core.ContractDiagnostic)
type ChildRunBuilder ¶
type ChildRunBuilder func(graphRef string) (ChildRunRunner, error)
type ChildRunRunner ¶
type ChildRunRunner func(context.Context, fruntime.ChildRunRequest, *state.State) (fruntime.ChildRunResult, error)
type ConditionDefinition ¶
type ConditionDefinition struct {
dsl.ConditionSchema
StatePorts []dsl.StatePortDefinition `json:"state_ports"`
Resolve func(ResolvedConditionSpec) (EdgeCondition, error) `json:"-"`
}
type EdgeCondition ¶
type EdgeCondition struct {
Spec dsl.GraphConditionSpec
Evaluate EdgeConditionEvaluator
}
func NewEdgeCondition ¶
func NewEdgeCondition(spec dsl.GraphConditionSpec, evaluate EdgeConditionEvaluator) EdgeCondition
func (EdgeCondition) CloneSpec ¶
func (condition EdgeCondition) CloneSpec() dsl.GraphConditionSpec
func (EdgeCondition) EvaluateRoute ¶
func (condition EdgeCondition) EvaluateRoute(ctx context.Context, current *state.State) (RouteDecision, error)
func (EdgeCondition) Validate ¶
func (condition EdgeCondition) Validate() error
func (EdgeCondition) WithSpec ¶
func (condition EdgeCondition) WithSpec(spec dsl.GraphConditionSpec) EdgeCondition
type EdgeConditionEvaluator ¶
type GraphResolver ¶
type GraphResolver func(graphRef string) (dsl.GraphDefinition, error)
type NodeBuilder ¶
type NodeBuilder func(*BuildContext, ResolvedNodeSpec) (core.Node, error)
type NodeTypeDefinition ¶
type NodeTypeDefinition struct {
dsl.NodeTypeSchema
StatePorts []dsl.StatePortDefinition `json:"state_ports"`
Build NodeBuilder `json:"-"`
}
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
func NewRegistry ¶
func NewRegistry() *Registry
func (*Registry) CapabilityDefinitions ¶
func (r *Registry) CapabilityDefinitions() map[string]dsl.StateCapabilityDefinition
func (*Registry) ConditionDefinitions ¶
func (r *Registry) ConditionDefinitions() map[string]ConditionDefinition
func (*Registry) FindCapability ¶
func (r *Registry) FindCapability(id string) (dsl.StateCapabilityDefinition, bool)
func (*Registry) FindCondition ¶
func (r *Registry) FindCondition(conditionType string) (ConditionDefinition, bool)
func (*Registry) FindNodeType ¶
func (r *Registry) FindNodeType(nodeType string) (NodeTypeDefinition, bool)
func (*Registry) FindReducer ¶
func (*Registry) FindStateModule ¶
func (r *Registry) FindStateModule(name, version string) (dsl.StateModuleDefinition, bool)
func (*Registry) JSONSchema ¶
func (r *Registry) JSONSchema() dsl.JSONSchema
func (*Registry) NodeGroupDefinitions ¶
func (*Registry) NodeTypeDefinitions ¶
func (r *Registry) NodeTypeDefinitions() map[string]NodeTypeDefinition
func (*Registry) ReducerIDs ¶
func (*Registry) RegisterCondition ¶
func (r *Registry) RegisterCondition(def ConditionDefinition) error
func (*Registry) RegisterNodeType ¶
func (r *Registry) RegisterNodeType(def NodeTypeDefinition) error
func (*Registry) RegisterNodeTypeInGroup ¶
func (r *Registry) RegisterNodeTypeInGroup(group string, def NodeTypeDefinition) error
func (*Registry) RegisterReducer ¶
func (*Registry) RegisterStateModule ¶
func (r *Registry) RegisterStateModule(def dsl.StateModuleDefinition) error
func (*Registry) ResolveCondition ¶
func (r *Registry) ResolveCondition(spec ResolvedConditionSpec) (EdgeCondition, error)
func (*Registry) StateFieldDefinitions ¶
func (r *Registry) StateFieldDefinitions() map[string]dsl.StateFieldDefinition
func (*Registry) StateModuleDefinitions ¶
func (r *Registry) StateModuleDefinitions() map[string]dsl.StateModuleDefinition
type ResolvedConditionSpec ¶
type ResolvedConditionSpec struct {
Spec dsl.GraphConditionSpec
State map[string]ResolvedStateBinding
}
type ResolvedNodeSpec ¶
type ResolvedNodeSpec struct {
Spec dsl.GraphNodeSpec
State map[string]ResolvedStateBinding
}
type ResolvedStateBinding ¶
Click to show internal directories.
Click to hide internal directories.