Refine search
public String toString() { return "[" + workItem.getId() + "] " + workItem.getParameter("TaskName"); } }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { this.workItem = workItem; if (processId != null && strategy != null) { if (workItem.getParameter("isCheckedCheckbox") != null) { manager.completeWorkItem(workItem.getId(), workItem.getParameters()); } else { throw new ProcessWorkItemHandlerException(processId, strategy, new RuntimeException("On purpose")); } } manager.completeWorkItem(workItem.getId(), null); }
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { String messageId = (String) workItem.getParameter("MessageId"); waiting.put(messageId, workItem.getId()); }
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { String message = (String) workItem.getParameter("Message"); logger.debug("Sending message: {}", message); manager.completeWorkItem(workItem.getId(), null); }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Integer x = (Integer) workItem.getParameter("input1"); x++; Map<String, Object> results = new HashMap<String, Object>(); results.put("output1", x); manager.completeWorkItem(workItem.getId(), results); }
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { String message = (String) workItem.getParameter("Message"); myList.add(message); manager.completeWorkItem(workItem.getId(), null); } public void abortWorkItem(WorkItem workItem, WorkItemManager manager) {
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Integer x = (Integer) workItem.getParameter("input1"); x++; Map<String, Object> results = new HashMap<String, Object>(); results.put("output1", x); manager.completeWorkItem(workItem.getId(), results); }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Integer x = (Integer) workItem.getParameter("input1"); x++; Map<String, Object> results = new HashMap<String, Object>(); results.put("output1", x); manager.completeWorkItem(workItem.getId(), results); }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Integer x = (Integer) workItem.getParameter("input1"); x++; Map<String, Object> results = new HashMap<String, Object>(); results.put("output1", x); manager.completeWorkItem(workItem.getId(), results); }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Task task = createTaskBasedOnWorkItemParams(ksession, workItem); ContentData content = createTaskContentBasedOnWorkItemParams(ksession, workItem); try { long taskId = ((InternalTaskService) taskService).addTask(task, content); if (isAutoClaim(ksession, workItem, task)) { taskService.claim(taskId, (String) workItem.getParameter("SwimlaneActorId")); } } catch (Exception e) { if (action.equals(OnErrorAction.ABORT)) { manager.abortWorkItem(workItem.getId()); } else if (action.equals(OnErrorAction.RETHROW)) { if (e instanceof RuntimeException) { throw (RuntimeException) e; } else { throw new RuntimeException(e); } } else if (action.equals(OnErrorAction.LOG)) { StringBuilder logMsg = new StringBuilder(); logMsg.append(new Date()).append(": Error when creating task on task server for work item id ").append(workItem.getId()); logMsg.append(". Error reported by task server: ").append(e.getMessage()); logger.error(logMsg.toString(), e); } } }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { String signal = (String) workItem.getParameter("Signal"); ksession.signalEvent(signal, null); manager.completeWorkItem(workItem.getId(), null); }
List<Long> workItemIds = new ArrayList<Long>(); for( WorkItem workItem : workItems ) { if( "Thr".equals(workItem.getParameter("NodeName")) ) { workItemIds.add(workItem.getId()); if( "Two".equals(workItem.getParameter("NodeName")) ) { workItemIds.add(workItem.getId()); if( "One".equals(workItem.getParameter("NodeName")) ) { workItemIds.add(workItem.getId());
Object throwObj = workItem.getParameter(ExceptionService.exceptionParameterName); assertThat(throwObj instanceof Throwable).isTrue().withFailMessage("WorkItem doesn't contain Throwable."); assertThat(((Throwable) throwObj).getMessage().endsWith(input)).isTrue().withFailMessage("Exception message does not match service input."); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null);
@Test public void testLane() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-Lane.bpmn2"); KieSession ksession = createKnowledgeSession(kbase); TestWorkItemHandler workItemHandler = new TestWorkItemHandler(); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", workItemHandler); ProcessInstance processInstance = ksession.startProcess("UserTask"); assertThat(processInstance.getState()).isEqualTo(ProcessInstance.STATE_ACTIVE); ksession = restoreSession(ksession, true); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", workItemHandler); WorkItem workItem = workItemHandler.getWorkItem(); assertThat(workItem).isNotNull(); assertThat(workItem.getParameter("ActorId")).isEqualTo("john"); Map<String, Object> results = new HashMap<String, Object>(); results.put("ActorId", "mary"); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), results); ksession = restoreSession(ksession, true); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", workItemHandler); workItem = workItemHandler.getWorkItem(); assertThat(workItem).isNotNull(); assertThat(workItem.getParameter("SwimlaneActorId")).isEqualTo("mary"); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertProcessInstanceCompleted(processInstance.getId(), ksession); }
ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); Object throwObj = workItem.getParameter(ExceptionService.exceptionParameterName); assertThat(throwObj instanceof Throwable).isTrue().withFailMessage("WorkItem doesn't contain Throwable."); assertThat(((Throwable) throwObj).getMessage().endsWith(input)).isTrue().withFailMessage("Exception message does not match service input.");
assertThat(workItem.getParameter("ActorId")).isEqualTo("john"); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertProcessInstanceFinished(processInstance, ksession); assertNodeTriggered(processInstanceId, "StartTimer", "Script 2", "User task", "End");
@Test public void testMultipleEventBasedStartEventsSignalStart() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-MultipleEventBasedStartEventProcess.bpmn2"); ksession = createKnowledgeSession(kbase); TestWorkItemHandler workItemHandler = new TestWorkItemHandler(); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", workItemHandler); final List<Long> list = new ArrayList<Long>(); ksession.addEventListener(new DefaultProcessEventListener() { public void afterProcessStarted(ProcessStartedEvent event) { list.add(event.getProcessInstance().getId()); } }); ksession.signalEvent("startSignal", null); assertThat(list.size()).isEqualTo(1); WorkItem workItem = workItemHandler.getWorkItem(); long processInstanceId = ((WorkItemImpl) workItem) .getProcessInstanceId(); ProcessInstance processInstance = ksession .getProcessInstance(processInstanceId); ksession = restoreSession(ksession, true); assertThat(workItem).isNotNull(); assertThat(workItem.getParameter("ActorId")).isEqualTo("john"); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertProcessInstanceFinished(processInstance, ksession); }
WorkItem workItem = workItemHandler.getWorkItem(); assertThat(workItem).isNotNull(); assertThat(workItem.getParameter("ActorId")).isEqualTo("john"); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertProcessInstanceCompleted(processInstance.getId(), ksession);
@Test public void testMultipleStartEventsRegularStart() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-MultipleStartEventProcessLongInterval.bpmn2"); ksession = createKnowledgeSession(kbase); TestWorkItemHandler workItemHandler = new TestWorkItemHandler(); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", workItemHandler); ProcessInstance processInstance = ksession .startProcess("MultipleStartEvents"); assertProcessInstanceActive(processInstance); ksession = restoreSession(ksession, true); WorkItem workItem = workItemHandler.getWorkItem(); assertThat(workItem).isNotNull(); assertThat(workItem.getParameter("ActorId")).isEqualTo("john"); ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertProcessInstanceFinished(processInstance, ksession); }
@Test public void testInterruptingEscalationBoundaryEventOnTask() throws Exception { KieBase kbase = createKnowledgeBase("escalation/BPMN2-EscalationBoundaryEventOnTaskInterrupting.bpmn2"); ksession = createKnowledgeSession(kbase); TestWorkItemHandler handler = new TestWorkItemHandler(); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", handler); ksession.addEventListener(LOGGING_EVENT_LISTENER); ProcessInstance processInstance = ksession.startProcess("BPMN2-EscalationBoundaryEventOnTask"); List<WorkItem> workItems = handler.getWorkItems(); assertEquals(2, workItems.size()); WorkItem workItem = workItems.get(0); if (!"john".equalsIgnoreCase((String) workItem.getParameter("ActorId"))) { workItem = workItems.get(1); } ksession.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertProcessInstanceFinished(processInstance, ksession); }