Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DataStore ¶
type DataStore interface { LoadWorkflowRunner(string) (workflow.Runner, error) DumpWorkflowRunner(workflow.Runner) error LoadWorkflow(string) (workflow.Workflow, error) }
DataStore provides access to workflows, runners and so on
type JobManager ¶
type JobManager struct { // Map job aliases to functions providing that job. // Jobs receive a notification providing data from the queue and return // maps for json to handle JobList map[string]func(JobNotification) (map[string]interface{}, error) }
JobManager contains configuration for Job Task Managers
func NewJobManager ¶
func NewJobManager() (j JobManager)
NewJobManager returns a `JobManager` to route jobs from the queue
func (*JobManager) AddJob ¶
func (j *JobManager) AddJob(key string, f func(JobNotification) (map[string]interface{}, error))
AddJob updates j.JobList with the key 'key' with the value of a function to call
type JobNotification ¶
type JobNotification struct { Context map[string]string Name string Register string Type string UUID string }
JobNotification is a container for Unmarshal'd json from the message queue
type MasterManager ¶
type MasterManager struct {
// contains filtered or unexported fields
}
MasterManager is a container for Master Taskmanager configuration
func NewMasterManager ¶
func NewMasterManager(redisURI string) (m MasterManager)
NewMasterManager returns an initialised Master Taskmanager
type TaskManager ¶
TaskManager ... A TaskManager contains functions for dealing with RabbitMQ methods and APIs. Both `MasterManager` and `JobManager` implement the methods in this interface