private void executeNode(ApplicationSpecification appSpec, WorkflowNode node, InstantiatorFactory instantiator, ClassLoader classLoader, WorkflowToken token) throws Exception { WorkflowNodeType nodeType = node.getType(); ((BasicWorkflowToken) token).setCurrentNode(node.getNodeId()); switch (nodeType) { case ACTION: WorkflowActionNode actionNode = (WorkflowActionNode) node; if (SchedulableProgramType.CUSTOM_ACTION == actionNode.getProgram().getProgramType()) { executeCustomAction(actionNode, instantiator, classLoader, token); } else { executeAction(actionNode, token); } break; case FORK: executeFork(appSpec, (WorkflowForkNode) node, instantiator, classLoader, token); break; case CONDITION: executeCondition(appSpec, (WorkflowConditionNode) node, instantiator, classLoader, token); break; default: break; } }
private void executeNode(ApplicationSpecification appSpec, WorkflowNode node, InstantiatorFactory instantiator, ClassLoader classLoader, WorkflowToken token) throws Exception { WorkflowNodeType nodeType = node.getType(); ((BasicWorkflowToken) token).setCurrentNode(node.getNodeId()); switch (nodeType) { case ACTION: WorkflowActionNode actionNode = (WorkflowActionNode) node; if (SchedulableProgramType.CUSTOM_ACTION == actionNode.getProgram().getProgramType()) { executeCustomAction(actionNode, instantiator, classLoader, token); } else { executeAction(actionNode, token); } break; case FORK: executeFork(appSpec, (WorkflowForkNode) node, instantiator, classLoader, token); break; case CONDITION: executeCondition(appSpec, (WorkflowConditionNode) node, instantiator, classLoader, token); break; default: break; } }