jadex.bpmn.runtime.handler.GatewayORActivityHandler Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jadex-kernel-bpmn Show documentation
Show all versions of jadex-kernel-bpmn Show documentation
The Jadex BPMN kernel provides a workflow kernel for the standardized business process modeling notation. The kernel relies on annotated BPMN diagrams, which include detailed execution information.
package jadex.bpmn.runtime.handler;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import jadex.bpmn.model.MActivity;
import jadex.bpmn.model.MSequenceEdge;
import jadex.bpmn.runtime.IActivityHandler;
import jadex.bpmn.runtime.ProcessThread;
import jadex.bpmn.runtime.ProcessThreadValueFetcher;
import jadex.bridge.IInternalAccess;
import jadex.commons.IValueFetcher;
import jadex.javaparser.IParsedExpression;
/**
* Handler for or split and join gateways.
*/
public class GatewayORActivityHandler extends AbstractGatewayActivityHandler implements IActivityHandler
{
/**
* Perform a split.
* @return All resulting threads after the split.
*/
protected Collection performSplit(MActivity activity, IInternalAccess instance, ProcessThread thread)
{
List outgoing = activity.getOutgoingSequenceEdges();
List threads = new ArrayList();
IValueFetcher fetcher = new ProcessThreadValueFetcher(thread, false, instance.getFetcher());
for(int i=0; i