diff --git a/workflow/workflow.go b/workflow/workflow.go index e33bc71..0734465 100644 --- a/workflow/workflow.go +++ b/workflow/workflow.go @@ -37,12 +37,15 @@ func NewStep(params *StepParams) *Step { StepParams: *params, NextSteps: make(map[string]*Step), } - step.Queue = queue.NewGeneralQueue(params.Identifier, - params.Client, step.HandleQueue, params.Processors, - queue.WithAutoStop(true)) return &step } +func (s *Step) initQueue() { + s.Queue = queue.NewGeneralQueue(s.Identifier, + s.Client, s.HandleQueue, s.Processors, + queue.WithAutoStop(true)) +} + func (s *Step) AddNextStep(step *Step) { s.NextSteps[step.Name] = step } @@ -90,7 +93,8 @@ type Workflow struct { func NewWorkflow(name string, identifier string, firstStep *Step, allSteps []*Step) *Workflow { for _, step := range allSteps { - step.Identifier = identifier + "_" + step.Name + step.Identifier = identifier + "_" + step.Identifier + step.initQueue() } return &Workflow{ Name: name,