/** * notifies a parent that one of its nodeMap has ended. */ private void notifyParentOfTokenEnd() { if (isRoot()) { processInstance.end(); } else if (parent != null && !parent.hasActiveChildren()) { parent.end(); } }
public ProcessInstance createSubProcessInstance(ProcessDefinition subProcessDefinition) { // create the new sub process instance subProcessInstance = new ProcessInstance(subProcessDefinition); // bind the subprocess to the super-process-token setSubProcessInstance(subProcessInstance); subProcessInstance.setSuperProcessToken(this); // make sure the process gets saved during super process save processInstance.addCascadeProcessInstance(subProcessInstance); return subProcessInstance; }
/** * sends a signal to this token. leaves the current {@link #getNode() node} over the given * transition. */ public void signal(Transition transition) { signal(transition, new ExecutionContext(this)); }
public void execute(ExecutionContext executionContext) { if ("true".equalsIgnoreCase(endCompleteProcess)) { executionContext.getProcessInstance().end(); } else { executionContext.getToken().end(); } }
private static ProcessInstance getSubProcess(ProcessInstance processInstance) { ProcessInstance subProcess = processInstance.getRootToken().getSubProcessInstance(); if (subProcess!=null) { return getSubProcess(subProcess); } else { return processInstance; } }
public ProcessDefinition getProcessDefinition() { ProcessInstance processInstance = getProcessInstance(); return (processInstance != null ? processInstance.getProcessDefinition() : null); }
public boolean isRoot() { return processInstance != null && equals(processInstance.getRootToken()); }
/** * calculates if this process instance has still options to continue. */ public boolean isTerminatedImplicitly() { return !hasEnded() ? rootToken.isTerminatedImplicitly() : true; }
public ModuleInstance getInstance(Class clazz) { if (token != null) { ProcessInstance processInstance = token.getProcessInstance(); if (processInstance != null) return processInstance.getInstance(clazz); } return null; }
public void addComment(String message) { addComment(new Comment(message)); }
private void detachFromSuperProcess(ProcessInstance processInstance, Token superProcessToken) { processInstance.setSuperProcessToken(null); superProcessToken.setSubProcessInstance(null); }
public ProcessInstance execute(ProcessInstance processInstance) { processInstance.resume(); return processInstance; } }
public void execute(ExecutionContext executionContext) { if ("true".equalsIgnoreCase(endCompleteProcess)) { executionContext.getProcessInstance().end(); } else { executionContext.getToken().end(); } }
/** * notifies a parent that one of its nodeMap has ended. */ private void notifyParentOfTokenEnd() { if (isRoot()) { processInstance.end(); } else if (parent != null && !parent.hasActiveChildren()) { parent.end(); } }
public ProcessInstance createSubProcessInstance(ProcessDefinition subProcessDefinition) { // create the new sub process instance subProcessInstance = new ProcessInstance(subProcessDefinition); // bind the subprocess to the super-process-token setSubProcessInstance(subProcessInstance); subProcessInstance.setSuperProcessToken(this); // make sure the process gets saved during super process save processInstance.addCascadeProcessInstance(subProcessInstance); return subProcessInstance; }
/** * sends a signal to this token. leaves the current {@link #getNode() node} over the given * transition. */ public void signal(Transition transition) { signal(transition, new ExecutionContext(this)); }
public ProcessDefinition getProcessDefinition() { ProcessInstance processInstance = getProcessInstance(); return (processInstance != null ? processInstance.getProcessDefinition() : null); }
/** * calculates if this process instance has still options to continue. */ public boolean isTerminatedImplicitly() { return !hasEnded() ? rootToken.isTerminatedImplicitly() : true; }
public ModuleInstance getInstance(Class clazz) { if (token != null) { ProcessInstance processInstance = token.getProcessInstance(); if (processInstance != null) return processInstance.getInstance(clazz); } return null; }
private void detachFromSuperProcess(ProcessInstance processInstance, Token superProcessToken) { processInstance.setSuperProcessToken(null); superProcessToken.setSubProcessInstance(null); }