@Override public Map<String, WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime) { Map<String, WorkItemHandler> handlers = new HashMap<String, WorkItemHandler>(); handlers.putAll(super.getWorkItemHandlers(runtime)); handlers.put("Send Task", new SendTaskHandler()); return handlers; }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { // collect message content for verification messageContent.append(workItem.getParameter("Message")); super.executeWorkItem(workItem, manager); }
@Test public void testMessageIntermediateThrow() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-IntermediateThrowEventMessage.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess("MessageIntermediateEvent", params); assertThat(processInstance.getState()).isEqualTo(ProcessInstance.STATE_COMPLETED); }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { // collect message content for verification messageContent.append(workItem.getParameter("Message")); super.executeWorkItem(workItem, manager); }
@Test public void testMessageEnd() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-MessageEndEvent.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess("MessageEndEvent", params); assertThat(processInstance.getState()).isEqualTo(ProcessInstance.STATE_COMPLETED); }
@Test public void testMessageIntermediateThrowWithTransformation() throws Exception { KieBase kbase = createKnowledgeBaseWithoutDumper("BPMN2-IntermediateThrowEventMessageWithTransformation.bpmn2"); ksession = createKnowledgeSession(kbase); final StringBuffer messageContent = new StringBuffer(); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler(){ @Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { // collect message content for verification messageContent.append(workItem.getParameter("Message")); super.executeWorkItem(workItem, manager); } }); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess( "MessageIntermediateEvent", params); assertProcessInstanceCompleted(processInstance); assertThat(messageContent.toString()).isEqualTo("MYVALUE"); }
@Test public void testMessageEnd() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-MessageEndEvent.bpmn2"); StatefulKnowledgeSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess( "MessageEndEvent", params); assertProcessInstanceCompleted(processInstance); }
@Test public void testSendTask() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-SendTask.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("s", "john"); WorkflowProcessInstance processInstance = (WorkflowProcessInstance) ksession .startProcess("SendTask", params); assertProcessInstanceFinished(processInstance, ksession); }
@Test public void testMessageIntermediateThrow() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-IntermediateThrowEventMessage.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess( "MessageIntermediateEvent", params); assertProcessInstanceCompleted(processInstance); }
@Test public void testSendTask() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-SendTask.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("s", "john"); WorkflowProcessInstance processInstance = (WorkflowProcessInstance) ksession.startProcess("SendTask", params); assertProcessInstanceCompleted(processInstance.getId(), ksession); }
@Test public void testMessageEnd() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-MessageEndEvent.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess("MessageEndEvent", params); assertThat(processInstance.getState()).isEqualTo(ProcessInstance.STATE_COMPLETED); }
@Test public void testMessageIntermediateThrow() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-IntermediateThrowEventMessage.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess("MessageIntermediateEvent", params); assertThat(processInstance.getState()).isEqualTo(ProcessInstance.STATE_COMPLETED); }
@Test public void testMessageIntermediateThrowWithTransformation() throws Exception { KieBase kbase = createKnowledgeBaseWithoutDumper("BPMN2-IntermediateThrowEventMessageWithTransformation.bpmn2"); ksession = createKnowledgeSession(kbase); final StringBuffer messageContent = new StringBuffer(); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler(){ @Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { // collect message content for verification messageContent.append(workItem.getParameter("Message")); super.executeWorkItem(workItem, manager); } }); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess( "MessageIntermediateEvent", params); assertProcessInstanceCompleted(processInstance); assertThat(messageContent.toString()).isEqualTo("MYVALUE"); }
@Test public void testMessageIntermediateThrow() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-IntermediateThrowEventMessage.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess( "MessageIntermediateEvent", params); assertProcessInstanceCompleted(processInstance); }
@Test public void testMessageEnd() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-MessageEndEvent.bpmn2"); StatefulKnowledgeSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "MyValue"); ProcessInstance processInstance = ksession.startProcess( "MessageEndEvent", params); assertProcessInstanceCompleted(processInstance); }
@Test public void testSendTask() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-SendTask.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("s", "john"); WorkflowProcessInstance processInstance = (WorkflowProcessInstance) ksession .startProcess("SendTask", params); assertProcessInstanceFinished(processInstance, ksession); }
@Test public void testSendTask() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-SendTask.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Send Task", new SendTaskHandler()); Map<String, Object> params = new HashMap<String, Object>(); params.put("s", "john"); WorkflowProcessInstance processInstance = (WorkflowProcessInstance) ksession.startProcess("SendTask", params); assertProcessInstanceCompleted(processInstance.getId(), ksession); }