private void select() { WorkItem workItem = getSelectedWorkItem(); if (workItem != null) { UIWorkItemHandlerDialog dialog = new UIWorkItemHandlerDialog(UIWorkItemHandler.this, workItem); dialog.setVisible(true); } }
@Override public Map<String, WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime) { Map<String, WorkItemHandler> handlers = super.getWorkItemHandlers(runtime); handlers.put("MyTask", new DoNothingWorkItemHandler()); return handlers; }
public KieSession createSession(KieBase kbase, Environment env) { KieSession session = createKieSession(kbase, env); session.getWorkItemManager().registerWorkItemHandler("Human Task", new SystemOutWorkItemHandler()); return session; }
public UIWorkItemHandler() { setSize(new Dimension(400, 300)); setTitle("Work Items"); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); initializeComponent(); }
public void complete(WorkItem workItem, Map<String, Object> results) { WorkItemManager manager = workItems.get(workItem); if (manager != null) { manager.completeWorkItem(workItem.getId(), results); workItems.remove(workItem); reloadWorkItemsList(); } selectButton.setEnabled(getSelectedWorkItem() != null); }
public UIWorkItemHandlerDialog(UIWorkItemHandler handler, WorkItem workItem) { super(handler, "Execute Work Item", true); this.handler = handler; this.workItem = workItem; setSize(new Dimension(400, 300)); initializeComponent(); }
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { workItems.put(workItem, manager); reloadWorkItemsList(); }
public void valueChanged(ListSelectionEvent e) { selectButton.setEnabled(getSelectedWorkItem() != null); } });
public WorkItem getSelectedWorkItem() { int index = workItemsList.getSelectedIndex(); if (index != -1) { Object selected = workItemsList.getModel().getElementAt(index); if (selected instanceof WorkItemWrapper) { return ((WorkItemWrapper) selected).getWorkItem(); } } return null; }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { super.executeWorkItem(workItem, manager); workItems.add(workItem); }
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { assertEquals("SimpleService", workItem.getParameter("Interface")); assertEquals("hello", workItem.getParameter("Operation")); assertEquals("java.lang.String", workItem.getParameter("ParameterType")); assertEquals("##WebService", workItem.getParameter("implementation")); assertEquals("hello", workItem.getParameter("operationImplementationRef")); assertEquals("SimpleService", workItem.getParameter("interfaceImplementationRef")); super.executeWorkItem(workItem, manager); }
@Override public Map<String, WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime) { Map<String, WorkItemHandler> handlers = super.getWorkItemHandlers(runtime); handlers.put("MyTask", new DoNothingWorkItemHandler()); return handlers; }
@Test // JBPM-3951 public void testServiceTaskInterface() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-ServiceTask.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Service Task", new SystemOutWorkItemHandler()); Map<String, Object> params = new HashMap<String, Object>(); WorkflowProcessInstance processInstance = (WorkflowProcessInstance) ksession.startProcess("EAID_DP000000_23D3_4e7e_80FE_6D8C0AF83CAA", params); assertProcessInstanceFinished(processInstance, ksession); }
public void abort(WorkItem workItem) { WorkItemManager manager = workItems.get(workItem); if (manager != null) { manager.abortWorkItem(workItem.getId()); workItems.remove(workItem); reloadWorkItemsList(); } selectButton.setEnabled(getSelectedWorkItem() != null); }
public void abortWorkItem(WorkItem workItem, WorkItemManager manager) { workItems.remove(workItem); reloadWorkItemsList(); }
@Test public void testUserTaskWithDataStoreScenario() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-UserTaskWithDataStore.bpmn2"); StatefulKnowledgeSession ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", new DoNothingWorkItemHandler()); ksession.startProcess("UserProcess"); // we can't test further as user tasks are asynchronous. }
@Test public void testErrorBoundaryEvent() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-ErrorBoundaryEventInterrupting.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("MyTask", new DoNothingWorkItemHandler()); ProcessInstance processInstance = ksession .startProcess("ErrorBoundaryEvent"); assertProcessInstanceFinished(processInstance, ksession); }
@Test public void testSignalBoundaryEventInterrupting() throws Exception { KieBase kbase = createKnowledgeBase("BPMN2-SignalBoundaryEventInterrupting.bpmn2"); ksession = createKnowledgeSession(kbase); ksession.getWorkItemManager().registerWorkItemHandler("MyTask", new DoNothingWorkItemHandler()); ProcessInstance processInstance = ksession .startProcess("SignalBoundaryEvent"); assertProcessInstanceActive(processInstance); ksession = restoreSession(ksession, true); ksession.signalEvent("MyMessage", null); assertProcessInstanceFinished(processInstance, ksession); }