protected Boolean isForwardAllowed(final TaskInstance task, final IdentityProvider identityProvider) { if ("Completed".equals(task.getStatus())) { return false; } final String actualOwner = task.getActualOwner(); if (actualOwner != null && actualOwner.equals(identityProvider.getName())) { return true; } final List<String> roles = identityProvider.getRoles(); final List<String> potentialOwners = task.getPotentialOwners(); if (potentialOwners != null && Collections.disjoint(potentialOwners, roles) == false) { return true; } final List<String> businessAdministrators = task.getBusinessAdmins(); if (businessAdministrators != null && Collections.disjoint(businessAdministrators, roles) == false) { return true; } return false; }
protected Boolean isDelegationAllowed(final TaskInstance task, final IdentityProvider identityProvider) { if ("Completed".equals(task.getStatus())) { return false;
Assertions.assertThat( instance.getExpirationDate() ).isEqualTo( task.getExpirationTime() ); Assertions.assertThat( instance.getPriority() ).isEqualTo( task.getPriority() ); Assertions.assertThat( instance.getStatus() ).isEqualTo( task.getStatus() );
assertThat(userTask.getContainerId()).isEqualTo(CONTAINER_ID); assertThat(userTask.getName()).isEqualTo("Evaluate items?"); assertThat(userTask.getStatus()).isEqualTo(Status.Completed.toString()); assertThat(userTask.getContainerId()).isEqualTo(CONTAINER_ID_101); assertThat(userTask.getName()).isEqualTo("Evaluate items?"); assertThat(userTask.getStatus()).isEqualTo(Status.Completed.toString()); assertThat(userTask.getContainerId()).isEqualTo(CONTAINER_ID_101); assertThat(userTask.getName()).isEqualTo("Approve"); assertThat(userTask.getStatus()).isEqualTo(Status.Completed.toString());
private void checkTaskStatusAndActualOwner(String containerId, Long taskId, Status status, String actualOwner) { TaskInstance task = taskClient.getTaskInstance(containerId, taskId); assertEquals(taskId, task.getId()); assertEquals(status.toString(), task.getStatus()); assertEquals(actualOwner, task.getActualOwner()); } }
taskInstance.setProcessId( task.getProcessId() ); taskInstance.setStatus( task.getStatus() );
taskInstance.setProcessId(task.getProcessId()); taskInstance.setStatus(task.getStatus());
taskInstance.setProcessId(task.getProcessId()); taskInstance.setStatus(task.getStatus());
assertNotNull(userTask); assertEquals("Evaluate items?", userTask.getName()); assertEquals(Status.Completed.toString(), userTask.getStatus());
@Override public TaskAssignmentSummary apply(final TaskInstance task, final IdentityProvider identityProvider) { if (task == null) { return null; } else { final TaskAssignmentSummary summary = new TaskAssignmentSummary(); summary.setTaskId(task.getId()); summary.setActualOwner(task.getActualOwner()); summary.setTaskName(task.getName()); summary.setPotOwnersString(task.getPotentialOwners()); summary.setCreatedBy(task.getCreatedBy()); summary.setBusinessAdmins(task.getBusinessAdmins()); summary.setStatus(task.getStatus()); summary.setDelegationAllowed(isDelegationAllowed(task, identityProvider)); summary.setForwardAllowed(isForwardAllowed(task, identityProvider)); return summary; } }
KieServerAssert.assertNullOrEmpty(taskInstance.getDescription()); KieServerAssert.assertNullOrEmpty(taskInstance.getSubject()); assertEquals("Reserved", taskInstance.getStatus()); assertEquals(0, taskInstance.getPriority().intValue()); assertEquals(USER_YODA, taskInstance.getActualOwner());
private void assertTaskInstace(TaskInstance expected, TaskInstance actual) { assertNotNull(actual); assertEquals(expected.getName(), actual.getName()); KieServerAssert.assertNullOrEmpty(actual.getDescription()); assertEquals(expected.getStatus(), actual.getStatus()); assertEquals(expected.getPriority(), actual.getPriority()); assertEquals(expected.getActualOwner(), actual.getActualOwner()); assertEquals(expected.getCreatedBy(), actual.getCreatedBy()); assertEquals(expected.getProcessId(), actual.getProcessId()); assertEquals(expected.getContainerId(), actual.getContainerId()); assertEquals(expected.getProcessInstanceId(), actual.getProcessInstanceId()); }
@Test public void testExitUserTask() throws Exception { Long processInstanceId = processClient.startProcess(CONTAINER_ID, PROCESS_ID_USERTASK); assertNotNull(processInstanceId); assertTrue(processInstanceId.longValue() > 0); try { List<TaskSummary> taskList = taskClient.findTasksAssignedAsPotentialOwner(USER_YODA, 0, 10); assertNotNull(taskList); assertEquals(1, taskList.size()); TaskSummary taskSummary = taskList.get(0); assertEquals(Status.Reserved.toString(), taskSummary.getStatus()); // exit task changeUser(USER_ADMINISTRATOR); taskClient.exitTask(CONTAINER_ID, taskSummary.getId(), USER_ADMINISTRATOR); changeUser(USER_YODA); TaskInstance task = taskClient.findTaskById(taskSummary.getId()); assertNotNull(task); assertEquals(taskSummary.getId(), task.getId()); assertEquals(Status.Exited.toString(), task.getStatus()); } finally { processClient.abortProcessInstance(CONTAINER_ID, processInstanceId); changeUser(TestConfig.getUsername()); } }
assertNotNull(userTask); assertEquals("Evaluate items?", userTask.getName()); assertEquals(Status.Completed.toString(), userTask.getStatus());
@Override public TaskSummary apply(final TaskInstance taskInstance) { if (taskInstance == null) { return null; } else { return TaskSummary.builder() .id(taskInstance.getId()) .name(taskInstance.getName()) .description(taskInstance.getDescription()) .status(taskInstance.getStatus()) .priority(taskInstance.getPriority()) .actualOwner(taskInstance.getActualOwner()) .createdBy(taskInstance.getCreatedBy()) .createdOn(taskInstance.getCreatedOn()) .activationTime(taskInstance.getActivationTime()) .expirationTime(taskInstance.getExpirationDate()) .processId(taskInstance.getProcessId()) .processInstanceId(taskInstance.getProcessInstanceId()) .deploymentId(taskInstance.getContainerId()) .parentId(taskInstance.getParentId()) .errorCount(0) .build(); } } }
KieServerAssert.assertNullOrEmpty(taskInstance.getDescription()); KieServerAssert.assertNullOrEmpty(taskInstance.getSubject()); assertEquals("Reserved", taskInstance.getStatus()); assertEquals(0, taskInstance.getPriority().intValue()); assertEquals(USER_YODA, taskInstance.getActualOwner());