Documentation ¶
Index ¶
- Constants
- Variables
- func GetFlow(id int64) interface{}
- func GetNode(id int64) interface{}
- func Initialize(telemetry Telemetry) (err error)
- type Action
- type ActionBind
- type ActionPrototypes
- type Core
- func (b *Core) AddFlow(flow *models.Flow) (err error)
- func (b *Core) AddNode(node *models.Node) (err error)
- func (b *Core) AddWorkflow(workflow *models.Workflow) (err error)
- func (b *Core) ConnectNode(node *models.Node) (err error)
- func (b *Core) DeleteWorkflow(workflow *models.Workflow) (err error)
- func (b *Core) DisconnectNode(node *models.Node) (err error)
- func (b *Core) DoWorker(model *models.Worker) (err error)
- func (b *Core) GetFlow(id int64) (*Flow, error)
- func (b *Core) GetNodes() map[int64]*models.Node
- func (b *Core) InitNodes() (err error)
- func (b *Core) InitWorkflows() (err error)
- func (b *Core) ReloadNode(node *models.Node) (err error)
- func (b *Core) RemoveFlow(flow *models.Flow) (err error)
- func (b *Core) RemoveNode(node *models.Node) (err error)
- func (b *Core) RemoveWorker(_worker *models.Worker) (err error)
- func (b *Core) Run() (err error)
- func (b *Core) UpdateFlow(flow *models.Flow) (err error)
- func (b *Core) UpdateFlowFromDevice(device *models.Device) (err error)
- func (b *Core) UpdateScript(script *models.Script) (err error)
- func (b *Core) UpdateWorker(_worker *models.Worker) (err error)
- func (b *Core) UpdateWorkflow(workflow *models.Workflow) (err error)
- func (b *Core) UpdateWorkflowScenario(workflow *models.Workflow) (err error)
- type Flow
- func (f *Flow) AddWorker(model *models.Worker) (err error)
- func (f *Flow) InitWorkers() (err error)
- func (f *Flow) NewMessage(message *Message) (err error)
- func (f *Flow) NewScript(model *models.Script) (script *scripts.Engine, err error)
- func (f *Flow) Remove()
- func (f *Flow) RemoveWorker(worker *models.Worker) (err error)
- func (f *Flow) UpdateWorker(worker *models.Worker) (err error)
- type FlowBind
- type FlowElement
- type FlowLink
- type Gateway
- type Map
- func (b *Map) GetAllElements() map[int64]*MapElement
- func (b *Map) GetDevicesStates() (states map[int64]*models.DeviceState)
- func (b *Map) GetElement(device *models.Device) *MapElement
- func (b *Map) NewMapElement(device *models.Device, state *models.DeviceState) *MapElement
- func (b *Map) SetElementState(device *models.Device, systemName string)
- type MapBind
- type MapElement
- type Message
- type MessageEmitter
- type MessageHandler
- type Status
- type Storage
- type Task
- type Telemetry
- type Worker
- type Workflow
- func (wf *Workflow) AddFlow(flow *models.Flow) (err error)
- func (wf *Workflow) NewScript(model *models.Script) (script *scripts.Engine, err error)
- func (wf *Workflow) RemoveFlow(flow *models.Flow) (err error)
- func (wf *Workflow) Restart() (err error)
- func (wf *Workflow) Run() (err error)
- func (wf *Workflow) SetScenario(system_name string) (err error)
- func (wf *Workflow) Stop() (err error)
- func (wf *Workflow) UpdateFlow(flow *models.Flow) (err error)
- func (wf *Workflow) UpdateScenario() (err error)
- type WorkflowBind
- func (w *WorkflowBind) GetDescription() string
- func (w *WorkflowBind) GetName() string
- func (w *WorkflowBind) GetScenario() string
- func (w *WorkflowBind) GetVar(key string) interface{}
- func (w *WorkflowBind) SetScenario(system_name string)
- func (w *WorkflowBind) SetVar(key string, value interface{})
Constants ¶
Variables ¶
View Source
var (
Hub stream.Hub
)
Functions ¶
func Initialize ¶
Types ¶
type Action ¶
type Action struct { Device *models.Device Node *models.Node Script *scripts.Engine Message *Message }
type ActionBind ¶ added in v0.0.7
type ActionBind struct {
// contains filtered or unexported fields
}
func (*ActionBind) Device ¶ added in v0.0.7
func (a *ActionBind) Device() *models.Device
func (*ActionBind) Node ¶ added in v0.0.7
func (a *ActionBind) Node() *models.Node
type ActionPrototypes ¶
type Core ¶
type Core struct { Map *Map // contains filtered or unexported fields }
func (*Core) AddWorkflow ¶
добавление рабочего процесс, без автоматического поиска и запуска подпроцессов
func (*Core) DeleteWorkflow ¶ added in v0.0.7
нельзя удалить workflow, если присутствуют связанные сущности
func (*Core) InitWorkflows ¶
инициализация всего рабочего процесса, с запуском дочерни подпроцессов
func (*Core) UpdateFlowFromDevice ¶
func (*Core) UpdateScript ¶
------------------------------------------------ Script ------------------------------------------------
func (*Core) UpdateWorkflow ¶ added in v0.0.7
type Flow ¶
type Flow struct { Model *models.Flow Connections []*models.Connection FlowElements []*FlowElement Node *models.Node Workers map[int64]*Worker Storage // contains filtered or unexported fields }
func (*Flow) InitWorkers ¶
func (*Flow) NewMessage ¶
type FlowBind ¶ added in v0.0.7
type FlowBind struct {
// contains filtered or unexported fields
}
func (*FlowBind) GetDescription ¶ added in v0.0.7
type FlowElement ¶
type FlowElement struct { Model *models.FlowElement Flow *Flow Workflow *Workflow Script *scripts.Engine Prototype ActionPrototypes Action *Action // contains filtered or unexported fields }
func NewFlowElement ¶
func NewFlowElement(model *models.FlowElement, flow *Flow, workflow *Workflow) (flowElement *FlowElement, err error)
func (*FlowElement) After ¶
func (m *FlowElement) After(message *Message) error
func (*FlowElement) Before ¶
func (m *FlowElement) Before(message *Message) error
func (*FlowElement) GetStatus ¶
func (m *FlowElement) GetStatus() (status Status)
type Map ¶ added in v0.0.7
TODO refactor map system
func (*Map) GetAllElements ¶ added in v0.0.7
func (b *Map) GetAllElements() map[int64]*MapElement
func (*Map) GetDevicesStates ¶ added in v0.0.7
func (b *Map) GetDevicesStates() (states map[int64]*models.DeviceState)
func (*Map) GetElement ¶ added in v0.0.7
func (b *Map) GetElement(device *models.Device) *MapElement
func (*Map) NewMapElement ¶ added in v0.0.7
func (b *Map) NewMapElement(device *models.Device, state *models.DeviceState) *MapElement
type MapBind ¶ added in v0.0.7
type MapBind struct {
Map *Map
}
func (*MapBind) GetElement ¶ added in v0.0.7
func (e *MapBind) GetElement(device *models.Device) *MapElement
type MapElement ¶ added in v0.0.7
type MapElement struct { Map *Map Options interface{} Device *models.Device State *models.DeviceState }
func (*MapElement) GetOptions ¶ added in v0.0.7
func (e *MapElement) GetOptions() interface{}
func (*MapElement) GetState ¶ added in v0.0.7
func (e *MapElement) GetState() interface{}
func (*MapElement) SetOptions ¶ added in v0.0.7
func (e *MapElement) SetOptions(options interface{})
func (*MapElement) SetState ¶ added in v0.0.7
func (e *MapElement) SetState(systemName string)
type Message ¶
func NewMessage ¶
func NewMessage() (m *Message)
type MessageEmitter ¶
type MessageEmitter struct{}
ActionPrototypes
func (*MessageEmitter) After ¶
func (m *MessageEmitter) After(message *Message, flow *Flow) (err error)
func (*MessageEmitter) Before ¶
func (m *MessageEmitter) Before(message *Message, flow *Flow) (err error)
func (*MessageEmitter) Type ¶
func (m *MessageEmitter) Type() string
type MessageHandler ¶
type MessageHandler struct{}
ActionPrototypes
func (*MessageHandler) After ¶
func (m *MessageHandler) After(message *Message, flow *Flow) (err error)
func (*MessageHandler) Before ¶
func (m *MessageHandler) Before(message *Message, flow *Flow) (err error)
func (*MessageHandler) Type ¶
func (m *MessageHandler) Type() string
type Worker ¶
type Worker struct { Model *models.Worker CronTask *cr.Task // contains filtered or unexported fields }
func (*Worker) Do ¶
func (w *Worker) Do()
Run worker script, and send result to flow as message struct
func (*Worker) RemoveActions ¶
func (w *Worker) RemoveActions()
func (*Worker) RemoveTask ¶
type Workflow ¶
type Workflow struct { Storage sync.Mutex Flows map[int64]*Flow // contains filtered or unexported fields }
func NewWorkflow ¶
func (*Workflow) SetScenario ¶ added in v0.0.7
func (*Workflow) UpdateScenario ¶ added in v0.0.5
type WorkflowBind ¶ added in v0.0.7
type WorkflowBind struct {
// contains filtered or unexported fields
}
func (*WorkflowBind) GetDescription ¶ added in v0.0.7
func (w *WorkflowBind) GetDescription() string
func (*WorkflowBind) GetName ¶ added in v0.0.7
func (w *WorkflowBind) GetName() string
func (*WorkflowBind) GetScenario ¶ added in v0.0.7
func (w *WorkflowBind) GetScenario() string
func (*WorkflowBind) GetVar ¶ added in v0.0.7
func (w *WorkflowBind) GetVar(key string) interface{}
func (*WorkflowBind) SetScenario ¶ added in v0.0.7
func (w *WorkflowBind) SetScenario(system_name string)
func (*WorkflowBind) SetVar ¶ added in v0.0.7
func (w *WorkflowBind) SetVar(key string, value interface{})
Source Files ¶
Click to show internal directories.
Click to hide internal directories.