public static JBPMMessages.WorkItem writeWorkItem(MarshallerWriteContext context, WorkItem workItem, boolean includeVariables) throws IOException { JBPMMessages.WorkItem.Builder _workItem = JBPMMessages.WorkItem.newBuilder() .setId( workItem.getId() ) .setProcessInstancesId( workItem.getProcessInstanceId() ) .setName( workItem.getName() ) .setState( workItem.getState() ); if (workItem instanceof org.drools.core.process.instance.WorkItem) { if (((org.drools.core.process.instance.WorkItem)workItem).getDeploymentId() != null){ _workItem.setDeploymentId(((org.drools.core.process.instance.WorkItem)workItem).getDeploymentId()); } _workItem.setNodeId(((org.drools.core.process.instance.WorkItem)workItem).getNodeId()) .setNodeInstanceId(((org.drools.core.process.instance.WorkItem)workItem).getNodeInstanceId()); } if ( includeVariables ) { Map<String, Object> parameters = workItem.getParameters(); for ( Map.Entry<String, Object> entry : parameters.entrySet() ) { _workItem.addVariable( marshallVariable( context, entry.getKey(), entry.getValue() ) ); } } return _workItem.build(); }
private void handleWorkItemHandlerException(ProcessWorkItemHandlerException handlerException, WorkItem workItem) { Map<String, Object> parameters = new HashMap<>(); parameters.put("DeploymentId", workItem.getDeploymentId()); parameters.put("ProcessInstanceId", workItem.getProcessInstanceId()); parameters.put("WorkItemId", workItem.getId());
String deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId(); deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId();
@Override public Void execute(Context context) { KieSession ksession = ((RegistryContext) context).lookup( KieSession.class ); ProcessInstance processInstance = ksession.getProcessInstance(pId); assertNotNull(processInstance); NodeInstance nodeInstance = ((WorkflowProcessInstance) processInstance) .getNodeInstance(((org.drools.core.process.instance.WorkItem) workItem).getNodeInstanceId()); assertNotNull(nodeInstance); assertTrue(nodeInstance instanceof WorkItemNodeInstance); String deploymentId = ((WorkItemNodeInstance) nodeInstance).getWorkItem().getDeploymentId(); long nodeInstanceId = ((WorkItemNodeInstance) nodeInstance).getWorkItem().getNodeInstanceId(); long nodeId = ((WorkItemNodeInstance) nodeInstance).getWorkItem().getNodeId(); assertEquals(((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId(), deploymentId); assertEquals(((org.drools.core.process.instance.WorkItem) workItem).getNodeId(), nodeId); assertEquals(((org.drools.core.process.instance.WorkItem) workItem).getNodeInstanceId(), nodeInstanceId); return null; } });
String deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId(); deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId();
public static JBPMMessages.WorkItem writeWorkItem(MarshallerWriteContext context, WorkItem workItem, boolean includeVariables) throws IOException { JBPMMessages.WorkItem.Builder _workItem = JBPMMessages.WorkItem.newBuilder() .setId( workItem.getId() ) .setProcessInstancesId( workItem.getProcessInstanceId() ) .setName( workItem.getName() ) .setState( workItem.getState() ); if (workItem instanceof org.drools.core.process.instance.WorkItem) { if (((org.drools.core.process.instance.WorkItem)workItem).getDeploymentId() != null){ _workItem.setDeploymentId(((org.drools.core.process.instance.WorkItem)workItem).getDeploymentId()); } _workItem.setNodeId(((org.drools.core.process.instance.WorkItem)workItem).getNodeId()) .setNodeInstanceId(((org.drools.core.process.instance.WorkItem)workItem).getNodeInstanceId()); } if ( includeVariables ) { Map<String, Object> parameters = workItem.getParameters(); for ( Map.Entry<String, Object> entry : parameters.entrySet() ) { _workItem.addVariable( marshallVariable( context, entry.getKey(), entry.getValue() ) ); } } return _workItem.build(); }
private void handleWorkItemHandlerException(ProcessWorkItemHandlerException handlerException, WorkItem workItem) { Map<String, Object> parameters = new HashMap<>(); parameters.put("DeploymentId", workItem.getDeploymentId()); parameters.put("ProcessInstanceId", workItem.getProcessInstanceId()); parameters.put("WorkItemId", workItem.getId());
public String getWorkItem(String containerId, Number processInstanceId, Number workItemId, String marshallingType) { containerId = context.getContainerId(containerId, new ByProcessInstanceIdContainerLocator(processInstanceId.longValue())); WorkItem workItem = processService.getWorkItem(containerId, processInstanceId.longValue(), workItemId.longValue()); if (workItem == null) { throw new IllegalStateException("Unable to find work item with id " + workItemId); } WorkItemInstance workItemInstance = WorkItemInstance.builder() .id(workItem.getId()) .nodeInstanceId(((org.drools.core.process.instance.WorkItem) workItem).getNodeInstanceId()) .processInstanceId(workItem.getProcessInstanceId()) .containerId(((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId()) .name(workItem.getName()) .nodeId(((org.drools.core.process.instance.WorkItem) workItem).getNodeId()) .parameters(workItem.getParameters()) .state(workItem.getState()) .build(); logger.debug("About to marshal work item {}", workItemInstance); String response = marshallerHelper.marshal(containerId, marshallingType, workItemInstance, new ByProcessInstanceIdContainerLocator(processInstanceId.longValue())); return response; }
String deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId(); deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId();
RuntimeEngine engine = null; if (localksession == null) { runtimeManager = RuntimeManagerRegistry.get().getManager(((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId()); engine = runtimeManager.getRuntimeEngine(ProcessInstanceIdContext.get(workItem.getProcessInstanceId())); localksession = engine.getKieSession();
public String getWorkItemByProcessInstance(String containerId, Number processInstanceId, String marshallingType) { containerId = context.getContainerId(containerId, new ByProcessInstanceIdContainerLocator(processInstanceId.longValue())); List<WorkItem> workItems = processService.getWorkItemByProcessInstance(containerId, processInstanceId.longValue()); WorkItemInstance[] instances = new WorkItemInstance[workItems.size()]; int counter = 0; for (WorkItem workItem : workItems) { WorkItemInstance workItemInstance = WorkItemInstance.builder() .id(workItem.getId()) .nodeInstanceId(((org.drools.core.process.instance.WorkItem) workItem).getNodeInstanceId()) .processInstanceId(workItem.getProcessInstanceId()) .containerId(((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId()) .name(workItem.getName()) .nodeId(((org.drools.core.process.instance.WorkItem) workItem).getNodeId()) .parameters(workItem.getParameters()) .state(workItem.getState()) .build(); instances[counter] = workItemInstance; counter++; } WorkItemInstanceList result = new WorkItemInstanceList(instances); logger.debug("About to marshal work items {}", result); String response = marshallerHelper.marshal(containerId, marshallingType, result); return response; }
RuntimeEngine engine = null; if (localksession == null) { runtimeManager = RuntimeManagerRegistry.get().getManager(((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId()); engine = runtimeManager.getRuntimeEngine(ProcessInstanceIdContext.get(workItem.getProcessInstanceId())); localksession = engine.getKieSession();
@Override public Void execute(Context context) { KieSession ksession = ((RegistryContext) context).lookup( KieSession.class ); ProcessInstance processInstance = ksession.getProcessInstance(pId); assertNotNull(processInstance); NodeInstance nodeInstance = ((WorkflowProcessInstance) processInstance) .getNodeInstance(((org.drools.core.process.instance.WorkItem) workItem).getNodeInstanceId()); assertNotNull(nodeInstance); assertTrue(nodeInstance instanceof WorkItemNodeInstance); String deploymentId = ((WorkItemNodeInstance) nodeInstance).getWorkItem().getDeploymentId(); long nodeInstanceId = ((WorkItemNodeInstance) nodeInstance).getWorkItem().getNodeInstanceId(); long nodeId = ((WorkItemNodeInstance) nodeInstance).getWorkItem().getNodeId(); assertEquals(((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId(), deploymentId); assertEquals(((org.drools.core.process.instance.WorkItem) workItem).getNodeId(), nodeId); assertEquals(((org.drools.core.process.instance.WorkItem) workItem).getNodeInstanceId(), nodeInstanceId); return null; } });
String deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId(); deploymentId = ((org.drools.core.process.instance.WorkItem) workItem).getDeploymentId();