如何启动多个SWF工作流程?

时间:2017-03-28 18:21:28

标签: java amazon-swf

我正在用Java编写SWF Workflow Starter类。该类的目的是使用WorkflowClientExternalFactory进行getClient()调用,然后使用WorkflowClientExternal启动我的工作流。这是基本布局:

public class MyWorkflowStarter {
    private final MyWorkflowClientExternalFactory factory;

    public MyWorkflowStarter(MyWorkflowClientExternalFactory factory) {
        this.factory = factory;
    }

    public void startyMyWorkflow (String input) {
        final MyWorkflowClientExternal client = this.factory.getClient();
        client.init(String input);  // init() is a @Execute method in the workflow;
    }
}

现在我有一个字符串列表,我想开始一个工作流列表,每个工作流将采用一个字符串来完成它的工作。

我的问题是:MyWorkflowStarter类中的startMyWorkflow-fn是否接受了String列表,并使用for-loop,每个循环生成一个客户端来调用init fn;或者我应该在一个新类中编写一个方法,它将在列表中输入一个字符串输入,调用MyWorkflowStarter一个列表的次数?

关于如何做到这一点的任何想法?非常感谢!

// Alternatively I could have a workflow and a list of activities, but I want the option of starting a list workflows. 

1 个答案:

答案 0 :(得分:0)

从SWF的角度来看,它并不重要。要启动工作流,应为列表的每个元素执行getClient()和client.init。但是这段代码的存在取决于你。