use of org.jbpm.workflow.instance.node.EndNodeInstance in project jbpm by kiegroup.
the class WorkflowProcessInstanceImpl method nodeInstanceCompleted.
public void nodeInstanceCompleted(NodeInstance nodeInstance, String outType) {
Node nodeInstanceNode = nodeInstance.getNode();
if (nodeInstanceNode != null) {
Object compensationBoolObj = nodeInstanceNode.getMetaData().get("isForCompensation");
boolean isForCompensation = compensationBoolObj == null ? false : ((Boolean) compensationBoolObj);
if (isForCompensation) {
return;
}
}
if (nodeInstance instanceof EndNodeInstance || ((org.jbpm.workflow.core.WorkflowProcess) getWorkflowProcess()).isDynamic() || nodeInstance instanceof CompositeNodeInstance) {
if (((org.jbpm.workflow.core.WorkflowProcess) getProcess()).isAutoComplete()) {
if (canComplete()) {
setState(ProcessInstance.STATE_COMPLETED);
}
}
} else {
throw new IllegalArgumentException("Completing a node instance that has no outgoing connection is not supported.");
}
}
Aggregations