statemanager

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ComponentAction

type ComponentAction string
const (
	ActionCreate ComponentAction = "Create"
	ActionUpdate ComponentAction = "Update"
	ActionDelete ComponentAction = "Delete"
)

type Manager

type Manager interface {
	backend.Backend

	GetStatesMap() StatesMap

	GetState(key StateKey) *State
	AddState(key StateKey, state State) error
	UpdateState(key StateKey, state State) error
	DeleteState(key StateKey) error
	GetOutputs(key StateKey) (interface{}, error)
}

Manager knows how to manage the StatesMap.

func NewManager

func NewManager(stateConfig configmanager.State) (Manager, error)

NewManager returns a new Manager and reads states through backend defined in config.

type ResourceState added in v0.9.0

type ResourceState map[string]interface{}

func (*ResourceState) SetOutputs added in v0.9.0

func (rs *ResourceState) SetOutputs(outputs map[string]interface{})

type State

type State struct {
	Name       string
	InstanceID string
	DependsOn  []string
	Options    map[string]interface{}
	Resource   map[string]interface{}
}

State is the single component's state.

type StateKey

type StateKey string

Note: Please use the StateKeyGenerateFunc function to generate StateKey instance.

func GenerateStateKeyByToolNameAndPluginKind

func GenerateStateKeyByToolNameAndPluginKind(toolName string, instanceID string) StateKey

func StateKeyGenerateFunc

func StateKeyGenerateFunc(t *configmanager.Tool) StateKey

type StatesMap

type StatesMap struct {
	*concurrentmap.ConcurrentMap
}

func NewStatesMap

func NewStatesMap() StatesMap

func (StatesMap) DeepCopy

func (s StatesMap) DeepCopy() StatesMap

func (StatesMap) Format

func (s StatesMap) Format() []byte

func (StatesMap) ToList added in v0.4.0

func (s StatesMap) ToList() []State

Jump to

Keyboard shortcuts

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