public long getProcessInstanceId(WorkItem workItem) { return workItem.getProcessInstanceId(); }
@Override public void handleAbortException(Throwable cause, WorkItem workItem, WorkItemManager manager) { if( getAndIncreaseExceptionCount(workItem.getProcessInstanceId()) < exceptionCountLimit ) { workItem.getParameters().put(this.workItemExceptionParameterName, cause); ((org.drools.core.process.instance.WorkItemManager) manager).signalEvent(this.eventType, (org.drools.core.process.instance.WorkItem) workItem, workItem.getProcessInstanceId()); } }
@Override public void handleExecuteException(Throwable cause, WorkItem workItem, WorkItemManager manager) { if( getAndIncreaseExceptionCount(workItem.getProcessInstanceId()) < exceptionCountLimit ) { workItem.getParameters().put(this.workItemExceptionParameterName, cause); ((org.drools.core.process.instance.WorkItemManager) manager).signalEvent(this.eventType, (org.drools.core.process.instance.WorkItem) workItem, workItem.getProcessInstanceId()); } else { if( cause instanceof RuntimeException ) { throw (RuntimeException) cause; } else { throw new WorkItemHandlerRuntimeException(cause, "Signalling process instance " + workItem.getProcessInstanceId() + " with '" + this.eventType + "' resulted this exception."); } } }
public WorkItemExceptionInfo(WorkItem workItem, Throwable cause, boolean onExecute) { this.timeThrown = new Date(); this.cause = cause; this.onExecute = onExecute; this.processInstanceId = workItem.getProcessInstanceId(); this.workItemId = workItem.getId(); this.workItemName = workItem.getName(); this.workItemParameters = Collections.unmodifiableMap(workItem.getParameters()); }
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Long threadId = (Long) workItem.getParameter("id"); workItems.put(workItem.getProcessInstanceId(), threadId); } public void abortWorkItem(WorkItem arg0, WorkItemManager arg1) {
inputList.add(handlerMethodStem); inputList.add(String.valueOf(workItem.getId())); inputList.add(String.valueOf(workItem.getProcessInstanceId())); inputList.add(workItem.getName()); inputList.add(handlerMethodStem); inputList.add(String.valueOf(workItem.getProcessInstanceId())); break; case PROCESS_INSTANCE_ID: inputList.add(String.valueOf(workItem.getProcessInstanceId())); break; case SERVICE:
@Override public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { RuntimeEngine runtime = runtimeManager.getRuntimeEngine(ProcessInstanceIdContext.get(workItem.getProcessInstanceId())); KieSession ksessionById = runtime.getKieSession();
@Override public void abortWorkItem(WorkItem workItem, WorkItemManager manager) { RuntimeEngine runtime = runtimeManager.getRuntimeEngine(ProcessInstanceIdContext.get(workItem.getProcessInstanceId())); Task task = runtime.getTaskService().getTaskByWorkItemId(workItem.getId()); if (task != null) { try { String adminUser = ADMIN_USER; List<OrganizationalEntity> businessAdmins = task.getPeopleAssignments().getBusinessAdministrators(); for (OrganizationalEntity admin : businessAdmins) { if (admin instanceof Group) { continue; } if (!admin.getId().equals(ADMIN_USER)) { adminUser = admin.getId(); break; } } logger.debug("Task {} is going to be exited by {} who is business admin", task.getId(), adminUser); runtime.getTaskService().exit(task.getId(), adminUser); } catch (PermissionDeniedException e) { logger.info(e.getMessage()); } } }
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(); }
taskData.setProcessInstanceId(workItem.getProcessInstanceId()); if (session != null) { if (session.getProcessInstance(workItem.getProcessInstanceId()) != null) { taskData.setProcessId(session.getProcessInstance(workItem.getProcessInstanceId()).getProcess().getId()); String deploymentId = ((WorkItemImpl) workItem).getDeploymentId(); taskData.setDeploymentId(deploymentId);
assertEquals("john", workItem.getParameter("ActorId")); long childPI = workItem.getProcessInstanceId(); assertNotEquals("Child process instance must be different", processInstance.getId(), childPI);
public long getProcessInstanceId(WorkItem workItem) { return workItem.getProcessInstanceId(); }
public long getProcessInstanceId() { return delegate.getProcessInstanceId(); }
@Override public void handleAbortException(Throwable cause, WorkItem workItem, WorkItemManager manager) { if( getAndIncreaseExceptionCount(workItem.getProcessInstanceId()) < exceptionCountLimit ) { workItem.getParameters().put(this.workItemExceptionParameterName, cause); ((org.drools.core.process.instance.WorkItemManager) manager).signalEvent(this.eventType, (org.drools.core.process.instance.WorkItem) workItem, workItem.getProcessInstanceId()); } }
@Override public void handleExecuteException(Throwable cause, WorkItem workItem, WorkItemManager manager) { if( getAndIncreaseExceptionCount(workItem.getProcessInstanceId()) < exceptionCountLimit ) { workItem.getParameters().put(this.workItemExceptionParameterName, cause); ((org.drools.core.process.instance.WorkItemManager) manager).signalEvent(this.eventType, (org.drools.core.process.instance.WorkItem) workItem, workItem.getProcessInstanceId()); } else { if( cause instanceof RuntimeException ) { throw (RuntimeException) cause; } else { throw new WorkItemHandlerRuntimeException(cause, "Signalling process instance " + workItem.getProcessInstanceId() + " with '" + this.eventType + "' resulted this exception."); } } }
public WorkItemExceptionInfo(WorkItem workItem, Throwable cause, boolean onExecute) { this.timeThrown = new Date(); this.cause = cause; this.onExecute = onExecute; this.processInstanceId = workItem.getProcessInstanceId(); this.workItemId = workItem.getId(); this.workItemName = workItem.getName(); this.workItemParameters = Collections.unmodifiableMap(workItem.getParameters()); }
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) { Long threadId = (Long) workItem.getParameter("id"); workItems.put(workItem.getProcessInstanceId(), threadId); } public void abortWorkItem(WorkItem arg0, WorkItemManager arg1) {
/** * Sets a variable value. * * @param name variable name * @param item work item instance * @param value a variable value */ protected void setVariable(final WorkItem item, final String name, final Object value) { final WorkflowProcessInstance variables = ((WorkflowProcessInstance) getSession().getProcessInstance( item.getProcessInstanceId())); variables.setVariable(name, value); }
@Override public void setResult(WorkItem result) { this.id = result.getId(); this.name = result.getName(); this.parameters = result.getParameters(); this.processInstanceId = result.getProcessInstanceId(); this.results = result.getResults(); this.state = result.getState(); }
@Override public void setResult(WorkItem result) { this.id = result.getId(); this.name = result.getName(); this.parameters = result.getParameters(); this.processInstanceId = result.getProcessInstanceId(); this.results = result.getResults(); this.state = result.getState(); }