assertNull(handler.getWorkItem()); assertEquals(0, dynamicContext.getNodeInstances().size()); DynamicUtils.addDynamicSubProcess(dynamicContext, ksession, "org.drools.subflow", parameters); assertNotNull(handler.getWorkItem()); assertEquals(1, dynamicContext.getNodeInstances().size());
DynamicNodeInstance dynamicContext = (DynamicNodeInstance) ((WorkflowProcessInstance) processInstance) .getNodeInstances().iterator().next(); DynamicUtils.addDynamicSubProcess(dynamicContext, ksession, "Minimal", new HashMap<String, Object>()); ksession = restoreSession(ksession, true);
@Test public void testAdHocProcessDynamicSubProcess() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-AdHocProcess.bpmn2", "BPMN2-MinimalProcess.bpmn2"); ksession = createKnowledgeSession(kbase); ProcessInstance processInstance = ksession.startProcess("AdHocProcess"); assertTrue(processInstance.getState() == ProcessInstance.STATE_ACTIVE); ksession = restoreSession(ksession, true); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", new DoNothingWorkItemHandler()); logger.debug("Triggering node"); ksession.signalEvent("Task1", null, processInstance.getId()); assertProcessInstanceActive(processInstance); TestWorkItemHandler workItemHandler2 = new TestWorkItemHandler(); ksession.getWorkItemManager().registerWorkItemHandler("OtherTask", workItemHandler2); DynamicUtils.addDynamicSubProcess(processInstance, ksession, "Minimal", new HashMap<String, Object>()); ksession = restoreSession(ksession, true); ksession.signalEvent("User1", null, processInstance.getId()); assertProcessInstanceActive(processInstance); ksession.insert(new Person()); ksession.signalEvent("Task3", null, processInstance.getId()); assertProcessInstanceFinished(processInstance, ksession); }
DynamicNodeInstance dynamicContext = (DynamicNodeInstance) ((WorkflowProcessInstance) processInstance) .getNodeInstances().iterator().next(); DynamicUtils.addDynamicSubProcess(dynamicContext, ksession, "ServiceProcess", new HashMap<String, Object>()); ksession = restoreSession(ksession, true);
private void addSubProcessInstance() { DynamicNodeInstance dynamicNodeInstance = (DynamicNodeInstance) processInstance.getNodeInstances().iterator().next(); DynamicUtils.addDynamicSubProcess(dynamicNodeInstance, ksession, "com.sample.contactCustomer", null); }
DynamicUtils.addDynamicSubProcess(dynamicNodeInstance, ksession, "com.sample.contactCustomer", null);
DynamicNodeInstance dynamicContext = (DynamicNodeInstance) ((WorkflowProcessInstance) processInstance) .getNodeInstances().iterator().next(); DynamicUtils.addDynamicSubProcess(dynamicContext, ksession, "Minimal", new HashMap<String, Object>()); ksession = restoreSession(ksession, true);
DynamicNodeInstance dynamicContext = (DynamicNodeInstance) ((WorkflowProcessInstance) processInstance) .getNodeInstances().iterator().next(); DynamicUtils.addDynamicSubProcess(dynamicContext, ksession, "ServiceProcess", new HashMap<String, Object>()); ksession = restoreSession(ksession, true);
@Test public void testAdHocProcessDynamicSubProcess() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-AdHocProcess.bpmn2", "BPMN2-MinimalProcess.bpmn2"); ksession = createKnowledgeSession(kbase); ProcessInstance processInstance = ksession.startProcess("AdHocProcess"); assertTrue(processInstance.getState() == ProcessInstance.STATE_ACTIVE); ksession = restoreSession(ksession, true); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", new DoNothingWorkItemHandler()); logger.debug("Triggering node"); ksession.signalEvent("Task1", null, processInstance.getId()); assertProcessInstanceActive(processInstance); TestWorkItemHandler workItemHandler2 = new TestWorkItemHandler(); ksession.getWorkItemManager().registerWorkItemHandler("OtherTask", workItemHandler2); DynamicUtils.addDynamicSubProcess(processInstance, ksession, "Minimal", new HashMap<String, Object>()); ksession = restoreSession(ksession, true); ksession.signalEvent("User1", null, processInstance.getId()); assertProcessInstanceActive(processInstance); ksession.insert(new Person()); ksession.signalEvent("Task3", null, processInstance.getId()); assertProcessInstanceFinished(processInstance, ksession); }