protected WorkflowTask getNextTaskForWorkflow(String workflowInstanceId) { WorkflowTaskQuery taskQuery = new WorkflowTaskQuery(); taskQuery.setProcessId(workflowInstanceId); taskQuery.setTaskState(WorkflowTaskState.IN_PROGRESS); List<WorkflowTask> workflowTasks = workflowService.queryTasks(taskQuery); assertEquals(1, workflowTasks.size()); return workflowTasks.get(0); }
processTaskQuery.setProcessId(resetDetails.getWorkflowId()); List<WorkflowTask> tasks = workflowService.queryTasks(processTaskQuery, false);
protected void checkProcessIdQuery(String workflowInstanceId, List<String> expectedTaskIds, WorkflowTaskState state) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(state); taskQuery.setProcessId(workflowInstanceId); checkTasksFoundUsingQuery(expectedTaskIds, taskQuery); taskQuery = createWorkflowTaskQuery(state); taskQuery.setProcessId(BPMEngineRegistry.createGlobalId(getEngine(), "99999999999")); checkNoTasksFoundUsingQuery(taskQuery); }
protected void checkTaskPropsQuery(List<String> expectedTaskIds, WorkflowTaskState state, String optionalProcessId) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(state); Map<QName, Object> taskProps = new HashMap<QName, Object>(); taskProps.put(customStringProp, "stringValue"); taskQuery.setTaskCustomProps(taskProps); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkTasksFoundUsingQuery(expectedTaskIds, taskQuery); taskProps = new HashMap<QName, Object>(); taskProps.put(customStringProp, "otherValue"); taskQuery = createWorkflowTaskQuery(state); taskQuery.setTaskCustomProps(taskProps); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkNoTasksFoundUsingQuery(taskQuery); }
processTaskQuery.setProcessId(resetDetails.getWorkflowId()); List<WorkflowTask> tasks = workflowService.queryTasks(processTaskQuery, false);
@Override protected void checkQueryTasksInactiveWorkflow(String workflowInstanceId) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(WorkflowTaskState.COMPLETED); taskQuery.setActive(false); taskQuery.setProcessId(workflowInstanceId); List<WorkflowTask> tasks = workflowService.queryTasks(taskQuery); assertNotNull(tasks); assertEquals(3, tasks.size()); taskQuery = createWorkflowTaskQuery(WorkflowTaskState.COMPLETED); taskQuery.setActive(true); taskQuery.setProcessId(workflowInstanceId); checkNoTasksFoundUsingQuery(taskQuery); }
private boolean fromSameParallelReviewWorkflow(WorkflowTask wt, String userName) { // check whether this is parallel review workflow, "parallel" will match all parallel workflows (any engine) if (wt.getPath().getInstance().getDefinition().getName().toLowerCase().contains("parallel")) { WorkflowTaskQuery tasksQuery = new WorkflowTaskQuery(); tasksQuery.setTaskState(null); tasksQuery.setActive(null); tasksQuery.setProcessId(wt.getPath().getInstance().getId()); List<WorkflowTask> allWorkflowTasks = workflowService.queryTasks(tasksQuery, true); for (WorkflowTask task : allWorkflowTasks) { if (isInitiatorOrAssignee(task, userName)) { // if at list one match then user has task from the same workflow return true; } } } return false; }
protected void checkQueryTasksInactiveWorkflow(String workflowInstanceId) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(WorkflowTaskState.COMPLETED); taskQuery.setActive(false); taskQuery.setProcessId(workflowInstanceId); List<WorkflowTask> tasks = workflowService.queryTasks(taskQuery); assertNotNull(tasks); assertEquals(3, tasks.size()); taskQuery = createWorkflowTaskQuery(WorkflowTaskState.COMPLETED); taskQuery.setActive(true); taskQuery.setProcessId(workflowInstanceId); checkNoTasksFoundUsingQuery(taskQuery); }
protected void checkIsActiveQuery(List<String> expectedTaskIds, WorkflowTaskState state, String optionalProcessId) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(state); taskQuery.setActive(true); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkTasksFoundUsingQuery(expectedTaskIds, taskQuery); taskQuery = createWorkflowTaskQuery(state); taskQuery.setActive(false); if(optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkNoTasksFoundUsingQuery(taskQuery); }
private boolean fromSameParallelReviewWorkflow(WorkflowTask wt, String userName) { // check whether this is parallel review workflow, "parallel" will match all parallel workflows (any engine) if (wt.getPath().getInstance().getDefinition().getName().toLowerCase().contains("parallel")) { WorkflowTaskQuery tasksQuery = new WorkflowTaskQuery(); tasksQuery.setTaskState(null); tasksQuery.setActive(null); tasksQuery.setProcessId(wt.getPath().getInstance().getId()); List<WorkflowTask> allWorkflowTasks = workflowService.queryTasks(tasksQuery, true); for (WorkflowTask task : allWorkflowTasks) { if (isInitiatorOrAssignee(task, userName)) { // if at list one match then user has task from the same workflow return true; } } } return false; }
protected void checkActorIdQuery(String actorId, List<String> expectedTaskIds, WorkflowTaskState state, String optionalProcessId) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(state); taskQuery.setActorId(actorId); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkTasksFoundUsingQuery(expectedTaskIds, taskQuery); taskQuery = createWorkflowTaskQuery(state); taskQuery.setActorId(USER3); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkNoTasksFoundUsingQuery(taskQuery); }
private boolean isUserPartOfProcess(WorkflowTask wt, String userName) { WorkflowTaskQuery tasksQuery = new WorkflowTaskQuery(); tasksQuery.setTaskState(null); tasksQuery.setActive(null); tasksQuery.setProcessId(wt.getPath().getInstance().getId()); List<WorkflowTask> allWorkflowTasks = workflowService.queryTasks(tasksQuery, true); for (WorkflowTask task : allWorkflowTasks) { if (isInitiatorOrAssignee(task, userName)) { // if at list one match then user has task from the same workflow return true; } } return false; }
private boolean isUserPartOfProcess(WorkflowTask wt, String userName) { WorkflowTaskQuery tasksQuery = new WorkflowTaskQuery(); tasksQuery.setTaskState(null); tasksQuery.setActive(null); tasksQuery.setProcessId(wt.getPath().getInstance().getId()); List<WorkflowTask> allWorkflowTasks = workflowService.queryTasks(tasksQuery, true); for (WorkflowTask task : allWorkflowTasks) { if (isInitiatorOrAssignee(task, userName)) { // if at list one match then user has task from the same workflow return true; } } return false; }
protected void checkTaskNameQuery(QName taskName, List<String> expectedTaskIds, WorkflowTaskState state, String optionalProcessId) { WorkflowTaskQuery taskQuery = createWorkflowTaskQuery(state); taskQuery.setTaskName(taskName); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkTasksFoundUsingQuery(expectedTaskIds, taskQuery); QName unexistingTaskName = QName.createQName(NamespaceService.WORKFLOW_MODEL_1_0_URI, "unexistingTask"); taskQuery = createWorkflowTaskQuery(state); taskQuery.setTaskName(unexistingTaskName); if (optionalProcessId != null) { taskQuery.setProcessId(optionalProcessId); } checkNoTasksFoundUsingQuery(taskQuery); }
query.setProcessId(predicate[1]);
query.setProcessId(predicate[1]);
taskQuery.setProcessId(path.getInstance().getId());
taskQuery.setProcessId(createGlobalId(task.getProcessInstanceId())); taskQuery.setProcessId(createGlobalId("nonexistentProcess"));
taskQuery.setProcessId(createGlobalId(task.getProcessInstanceId())); taskQuery.setActive(Boolean.FALSE); taskQuery.setProcessId(createGlobalId("nonexistantProcess"));