use of org.camunda.bpm.container.RuntimeContainerDelegate in project camunda-bpm-platform by camunda.
the class TaskRestServiceInteractionTest method setUpRuntimeData.
@Before
public void setUpRuntimeData() {
taskServiceMock = mock(TaskService.class);
when(processEngine.getTaskService()).thenReturn(taskServiceMock);
mockTask = MockProvider.createMockTask();
mockQuery = mock(TaskQuery.class);
when(mockQuery.initializeFormKeys()).thenReturn(mockQuery);
when(mockQuery.taskId(anyString())).thenReturn(mockQuery);
when(mockQuery.singleResult()).thenReturn(mockTask);
when(taskServiceMock.createTaskQuery()).thenReturn(mockQuery);
List<IdentityLink> identityLinks = new ArrayList<IdentityLink>();
mockAssigneeIdentityLink = MockProvider.createMockUserAssigneeIdentityLink();
identityLinks.add(mockAssigneeIdentityLink);
mockOwnerIdentityLink = MockProvider.createMockUserOwnerIdentityLink();
identityLinks.add(mockOwnerIdentityLink);
mockCandidateGroupIdentityLink = MockProvider.createMockCandidateGroupIdentityLink();
identityLinks.add(mockCandidateGroupIdentityLink);
mockCandidateGroup2IdentityLink = MockProvider.createAnotherMockCandidateGroupIdentityLink();
identityLinks.add(mockCandidateGroup2IdentityLink);
when(taskServiceMock.getIdentityLinksForTask(EXAMPLE_TASK_ID)).thenReturn(identityLinks);
mockTaskComment = MockProvider.createMockTaskComment();
when(taskServiceMock.getTaskComment(EXAMPLE_TASK_ID, EXAMPLE_TASK_COMMENT_ID)).thenReturn(mockTaskComment);
mockTaskComments = MockProvider.createMockTaskComments();
when(taskServiceMock.getTaskComments(EXAMPLE_TASK_ID)).thenReturn(mockTaskComments);
when(taskServiceMock.createComment(EXAMPLE_TASK_ID, null, EXAMPLE_TASK_COMMENT_FULL_MESSAGE)).thenReturn(mockTaskComment);
mockTaskAttachment = MockProvider.createMockTaskAttachment();
when(taskServiceMock.getTaskAttachment(EXAMPLE_TASK_ID, EXAMPLE_TASK_ATTACHMENT_ID)).thenReturn(mockTaskAttachment);
mockTaskAttachments = MockProvider.createMockTaskAttachments();
when(taskServiceMock.getTaskAttachments(EXAMPLE_TASK_ID)).thenReturn(mockTaskAttachments);
when(taskServiceMock.createAttachment(anyString(), anyString(), anyString(), anyString(), anyString(), anyString())).thenReturn(mockTaskAttachment);
when(taskServiceMock.createAttachment(anyString(), anyString(), anyString(), anyString(), anyString(), any(InputStream.class))).thenReturn(mockTaskAttachment);
when(taskServiceMock.getTaskAttachmentContent(EXAMPLE_TASK_ID, EXAMPLE_TASK_ATTACHMENT_ID)).thenReturn(new ByteArrayInputStream(createMockByteData()));
formServiceMock = mock(FormService.class);
when(processEngine.getFormService()).thenReturn(formServiceMock);
TaskFormData mockFormData = MockProvider.createMockTaskFormData();
when(formServiceMock.getTaskFormData(anyString())).thenReturn(mockFormData);
VariableMap variablesMock = MockProvider.createMockFormVariables();
when(formServiceMock.getTaskFormVariables(eq(EXAMPLE_TASK_ID), Matchers.<Collection<String>>any(), anyBoolean())).thenReturn(variablesMock);
repositoryServiceMock = mock(RepositoryService.class);
when(processEngine.getRepositoryService()).thenReturn(repositoryServiceMock);
ProcessDefinition mockDefinition = MockProvider.createMockDefinition();
when(repositoryServiceMock.getProcessDefinition(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID)).thenReturn(mockDefinition);
managementServiceMock = mock(ManagementService.class);
when(processEngine.getManagementService()).thenReturn(managementServiceMock);
when(managementServiceMock.getProcessApplicationForDeployment(MockProvider.EXAMPLE_DEPLOYMENT_ID)).thenReturn(MockProvider.EXAMPLE_PROCESS_APPLICATION_NAME);
when(managementServiceMock.getHistoryLevel()).thenReturn(ProcessEngineConfigurationImpl.HISTORYLEVEL_FULL);
HistoryService historyServiceMock = mock(HistoryService.class);
when(processEngine.getHistoryService()).thenReturn(historyServiceMock);
historicTaskInstanceQueryMock = mock(HistoricTaskInstanceQuery.class);
when(historyServiceMock.createHistoricTaskInstanceQuery()).thenReturn(historicTaskInstanceQueryMock);
when(historicTaskInstanceQueryMock.taskId(eq(EXAMPLE_TASK_ID))).thenReturn(historicTaskInstanceQueryMock);
HistoricTaskInstance historicTaskInstanceMock = createMockHistoricTaskInstance();
when(historicTaskInstanceQueryMock.singleResult()).thenReturn(historicTaskInstanceMock);
// replace the runtime container delegate & process application service with a mock
ProcessApplicationService processApplicationService = mock(ProcessApplicationService.class);
ProcessApplicationInfo appMock = MockProvider.createMockProcessApplicationInfo();
when(processApplicationService.getProcessApplicationInfo(MockProvider.EXAMPLE_PROCESS_APPLICATION_NAME)).thenReturn(appMock);
RuntimeContainerDelegate delegate = mock(RuntimeContainerDelegate.class);
when(delegate.getProcessApplicationService()).thenReturn(processApplicationService);
RuntimeContainerDelegate.INSTANCE.set(delegate);
}
use of org.camunda.bpm.container.RuntimeContainerDelegate in project camunda-bpm-platform by camunda.
the class ProcessApplicationContextInterceptor method getPaReference.
protected ProcessApplicationReference getPaReference(ProcessApplicationIdentifier processApplicationIdentifier) {
if (processApplicationIdentifier.getReference() != null) {
return processApplicationIdentifier.getReference();
} else if (processApplicationIdentifier.getProcessApplication() != null) {
return processApplicationIdentifier.getProcessApplication().getReference();
} else if (processApplicationIdentifier.getName() != null) {
RuntimeContainerDelegate runtimeContainerDelegate = RuntimeContainerDelegate.INSTANCE.get();
ProcessApplicationReference reference = runtimeContainerDelegate.getDeployedProcessApplication(processApplicationIdentifier.getName());
if (reference == null) {
throw LOG.paWithNameNotRegistered(processApplicationIdentifier.getName());
} else {
return reference;
}
} else {
throw LOG.cannotReolvePa(processApplicationIdentifier);
}
}
use of org.camunda.bpm.container.RuntimeContainerDelegate in project camunda-bpm-platform by camunda.
the class RuntimeContainerJobExecutor method getExecuteJobsRunnable.
@Override
public Runnable getExecuteJobsRunnable(List<String> jobIds, ProcessEngineImpl processEngine) {
final RuntimeContainerDelegate runtimeContainerDelegate = getRuntimeContainerDelegate();
final ExecutorService executorService = runtimeContainerDelegate.getExecutorService();
return executorService.getExecuteJobsRunnable(jobIds, processEngine);
}
use of org.camunda.bpm.container.RuntimeContainerDelegate in project camunda-bpm-platform by camunda.
the class ProcessDefinitionRestServiceInteractionTest method setUpRuntimeData.
@Before
public void setUpRuntimeData() {
ProcessDefinition mockDefinition = MockProvider.createMockDefinition();
setUpRuntimeDataForDefinition(mockDefinition);
managementServiceMock = mock(ManagementService.class);
when(processEngine.getManagementService()).thenReturn(managementServiceMock);
when(managementServiceMock.getProcessApplicationForDeployment(MockProvider.EXAMPLE_DEPLOYMENT_ID)).thenReturn(MockProvider.EXAMPLE_PROCESS_APPLICATION_NAME);
// replace the runtime container delegate & process application service with a mock
ProcessApplicationService processApplicationService = mock(ProcessApplicationService.class);
ProcessApplicationInfo appMock = MockProvider.createMockProcessApplicationInfo();
when(processApplicationService.getProcessApplicationInfo(MockProvider.EXAMPLE_PROCESS_APPLICATION_NAME)).thenReturn(appMock);
RuntimeContainerDelegate delegate = mock(RuntimeContainerDelegate.class);
when(delegate.getProcessApplicationService()).thenReturn(processApplicationService);
RuntimeContainerDelegate.INSTANCE.set(delegate);
}
use of org.camunda.bpm.container.RuntimeContainerDelegate in project camunda-bpm-platform by camunda.
the class TaskRestServiceQueryTest method testSimpleHalTaskQuery.
@Test
public void testSimpleHalTaskQuery() {
String queryName = "name";
// setup user query mock
List<User> mockUsers = MockProvider.createMockUsers();
UserQuery sampleUserQuery = mock(UserQuery.class);
when(sampleUserQuery.listPage(0, 1)).thenReturn(mockUsers);
when(sampleUserQuery.userIdIn(MockProvider.EXAMPLE_TASK_ASSIGNEE_NAME)).thenReturn(sampleUserQuery);
when(sampleUserQuery.userIdIn(MockProvider.EXAMPLE_TASK_OWNER)).thenReturn(sampleUserQuery);
when(sampleUserQuery.count()).thenReturn(1l);
when(processEngine.getIdentityService().createUserQuery()).thenReturn(sampleUserQuery);
// setup process definition query mock
List<ProcessDefinition> mockDefinitions = MockProvider.createMockDefinitions();
ProcessDefinitionQuery sampleProcessDefinitionQuery = mock(ProcessDefinitionQuery.class);
when(sampleProcessDefinitionQuery.listPage(0, 1)).thenReturn(mockDefinitions);
when(sampleProcessDefinitionQuery.processDefinitionIdIn(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID)).thenReturn(sampleProcessDefinitionQuery);
when(sampleProcessDefinitionQuery.count()).thenReturn(1l);
when(processEngine.getRepositoryService().createProcessDefinitionQuery()).thenReturn(sampleProcessDefinitionQuery);
// setup case definition query mock
List<CaseDefinition> mockCaseDefinitions = MockProvider.createMockCaseDefinitions();
CaseDefinitionQuery sampleCaseDefinitionQuery = mock(CaseDefinitionQuery.class);
when(sampleCaseDefinitionQuery.listPage(0, 1)).thenReturn(mockCaseDefinitions);
when(sampleCaseDefinitionQuery.caseDefinitionIdIn(MockProvider.EXAMPLE_CASE_DEFINITION_ID)).thenReturn(sampleCaseDefinitionQuery);
when(sampleCaseDefinitionQuery.count()).thenReturn(1l);
when(processEngine.getRepositoryService().createCaseDefinitionQuery()).thenReturn(sampleCaseDefinitionQuery);
// setup example process application context path
when(processEngine.getManagementService().getProcessApplicationForDeployment(MockProvider.EXAMPLE_DEPLOYMENT_ID)).thenReturn(MockProvider.EXAMPLE_PROCESS_APPLICATION_NAME);
// replace the runtime container delegate & process application service with a mock
ProcessApplicationService processApplicationService = mock(ProcessApplicationService.class);
ProcessApplicationInfo appMock = MockProvider.createMockProcessApplicationInfo();
when(processApplicationService.getProcessApplicationInfo(MockProvider.EXAMPLE_PROCESS_APPLICATION_NAME)).thenReturn(appMock);
RuntimeContainerDelegate delegate = mock(RuntimeContainerDelegate.class);
when(delegate.getProcessApplicationService()).thenReturn(processApplicationService);
RuntimeContainerDelegate.INSTANCE.set(delegate);
Response response = given().queryParam("name", queryName).header("accept", Hal.APPLICATION_HAL_JSON).then().expect().statusCode(Status.OK.getStatusCode()).contentType(Hal.APPLICATION_HAL_JSON).when().get(TASK_QUERY_URL);
InOrder inOrder = inOrder(mockQuery);
inOrder.verify(mockQuery).taskName(queryName);
inOrder.verify(mockQuery).list();
// validate embedded tasks
String content = response.asString();
List<Map<String, Object>> instances = from(content).getList("_embedded.task");
Assert.assertEquals("There should be one task returned.", 1, instances.size());
Assert.assertNotNull("The returned task should not be null.", instances.get(0));
Map<String, Object> taskObject = instances.get(0);
String returnedTaskName = (String) taskObject.get("name");
String returnedId = (String) taskObject.get("id");
String returnedAssignee = (String) taskObject.get("assignee");
String returnedCreateTime = (String) taskObject.get("created");
String returnedDueDate = (String) taskObject.get("due");
String returnedFollowUpDate = (String) taskObject.get("followUp");
String returnedDelegationState = (String) taskObject.get("delegationState");
String returnedDescription = (String) taskObject.get("description");
String returnedExecutionId = (String) taskObject.get("executionId");
String returnedOwner = (String) taskObject.get("owner");
String returnedParentTaskId = (String) taskObject.get("parentTaskId");
int returnedPriority = (Integer) taskObject.get("priority");
String returnedProcessDefinitionId = (String) taskObject.get("processDefinitionId");
String returnedProcessInstanceId = (String) taskObject.get("processInstanceId");
String returnedTaskDefinitionKey = (String) taskObject.get("taskDefinitionKey");
String returnedCaseDefinitionId = (String) taskObject.get("caseDefinitionId");
String returnedCaseInstanceId = (String) taskObject.get("caseInstanceId");
String returnedCaseExecutionId = (String) taskObject.get("caseExecutionId");
boolean returnedSuspensionState = (Boolean) taskObject.get("suspended");
String returnedFormKey = (String) taskObject.get("formKey");
String returnedTenantId = (String) taskObject.get("tenantId");
Assert.assertEquals(MockProvider.EXAMPLE_TASK_NAME, returnedTaskName);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_ID, returnedId);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_ASSIGNEE_NAME, returnedAssignee);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_CREATE_TIME, returnedCreateTime);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_DUE_DATE, returnedDueDate);
Assert.assertEquals(MockProvider.EXAMPLE_FOLLOW_UP_DATE, returnedFollowUpDate);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_DELEGATION_STATE.toString(), returnedDelegationState);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_DESCRIPTION, returnedDescription);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_EXECUTION_ID, returnedExecutionId);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_OWNER, returnedOwner);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_PARENT_TASK_ID, returnedParentTaskId);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_PRIORITY, returnedPriority);
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID, returnedProcessDefinitionId);
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_INSTANCE_ID, returnedProcessInstanceId);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_DEFINITION_KEY, returnedTaskDefinitionKey);
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_ID, returnedCaseDefinitionId);
Assert.assertEquals(MockProvider.EXAMPLE_CASE_INSTANCE_ID, returnedCaseInstanceId);
Assert.assertEquals(MockProvider.EXAMPLE_CASE_EXECUTION_ID, returnedCaseExecutionId);
Assert.assertEquals(MockProvider.EXAMPLE_TASK_SUSPENSION_STATE, returnedSuspensionState);
Assert.assertEquals(MockProvider.EXAMPLE_TENANT_ID, returnedTenantId);
// validate the task count
Assert.assertEquals(1l, from(content).getLong("count"));
// validate links
Map<String, Object> selfReference = from(content).getMap("_links.self");
Assert.assertNotNull(selfReference);
Assert.assertEquals("/task", selfReference.get("href"));
// validate embedded assignees:
List<Map<String, Object>> embeddedAssignees = from(content).getList("_embedded.assignee");
Assert.assertEquals("There should be one assignee returned.", 1, embeddedAssignees.size());
Map<String, Object> embeddedAssignee = embeddedAssignees.get(0);
Assert.assertNotNull("The returned assignee should not be null.", embeddedAssignee);
Assert.assertEquals(MockProvider.EXAMPLE_USER_ID, embeddedAssignee.get("id"));
Assert.assertEquals(MockProvider.EXAMPLE_USER_FIRST_NAME, embeddedAssignee.get("firstName"));
Assert.assertEquals(MockProvider.EXAMPLE_USER_LAST_NAME, embeddedAssignee.get("lastName"));
Assert.assertEquals(MockProvider.EXAMPLE_USER_EMAIL, embeddedAssignee.get("email"));
// validate embedded owners:
List<Map<String, Object>> embeddedOwners = from(content).getList("_embedded.owner");
Assert.assertEquals("There should be one owner returned.", 1, embeddedOwners.size());
Map<String, Object> embeddedOwner = embeddedOwners.get(0);
Assert.assertNotNull("The returned owner should not be null.", embeddedOwner);
Assert.assertEquals(MockProvider.EXAMPLE_USER_ID, embeddedOwner.get("id"));
Assert.assertEquals(MockProvider.EXAMPLE_USER_FIRST_NAME, embeddedOwner.get("firstName"));
Assert.assertEquals(MockProvider.EXAMPLE_USER_LAST_NAME, embeddedOwner.get("lastName"));
Assert.assertEquals(MockProvider.EXAMPLE_USER_EMAIL, embeddedOwner.get("email"));
// validate embedded processDefinitions:
List<Map<String, Object>> embeddedDefinitions = from(content).getList("_embedded.processDefinition");
Assert.assertEquals("There should be one processDefinition returned.", 1, embeddedDefinitions.size());
Map<String, Object> embeddedProcessDefinition = embeddedDefinitions.get(0);
Assert.assertNotNull("The returned processDefinition should not be null.", embeddedProcessDefinition);
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID, embeddedProcessDefinition.get("id"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY, embeddedProcessDefinition.get("key"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_CATEGORY, embeddedProcessDefinition.get("category"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_NAME, embeddedProcessDefinition.get("name"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_DESCRIPTION, embeddedProcessDefinition.get("description"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_VERSION, embeddedProcessDefinition.get("version"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_RESOURCE_NAME, embeddedProcessDefinition.get("resource"));
Assert.assertEquals(MockProvider.EXAMPLE_DEPLOYMENT_ID, embeddedProcessDefinition.get("deploymentId"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_DIAGRAM_RESOURCE_NAME, embeddedProcessDefinition.get("diagram"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_IS_SUSPENDED, embeddedProcessDefinition.get("suspended"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_APPLICATION_CONTEXT_PATH, embeddedProcessDefinition.get("contextPath"));
// validate embedded caseDefinitions:
List<Map<String, Object>> embeddedCaseDefinitions = from(content).getList("_embedded.caseDefinition");
Assert.assertEquals("There should be one caseDefinition returned.", 1, embeddedCaseDefinitions.size());
Map<String, Object> embeddedCaseDefinition = embeddedCaseDefinitions.get(0);
Assert.assertNotNull("The returned caseDefinition should not be null.", embeddedCaseDefinition);
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_ID, embeddedCaseDefinition.get("id"));
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_KEY, embeddedCaseDefinition.get("key"));
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_CATEGORY, embeddedCaseDefinition.get("category"));
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_NAME, embeddedCaseDefinition.get("name"));
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_VERSION, embeddedCaseDefinition.get("version"));
Assert.assertEquals(MockProvider.EXAMPLE_CASE_DEFINITION_RESOURCE_NAME, embeddedCaseDefinition.get("resource"));
Assert.assertEquals(MockProvider.EXAMPLE_DEPLOYMENT_ID, embeddedCaseDefinition.get("deploymentId"));
Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_APPLICATION_CONTEXT_PATH, embeddedCaseDefinition.get("contextPath"));
}
Aggregations