protected Job selectJobByProcessInstanceId(String processInstanceId) { Job job = managementService .createJobQuery() .processInstanceId(processInstanceId) .singleResult(); return job; } }
@Test public void testQueryByInvalidProcessInstanceId() { JobQuery query = managementService.createJobQuery().processInstanceId("invalid"); verifyQueryResults(query, 0); try { managementService.createJobQuery().processInstanceId(null); fail(); } catch (ProcessEngineException e) {} }
private void setRetries(final String processInstanceId, final int retries) { final Job job = managementService.createJobQuery().processInstanceId(processInstanceId).singleResult(); commandExecutor.execute(new Command<Void>() { public Void execute(CommandContext commandContext) { JobEntity timer = commandContext.getDbEntityManager().selectById(JobEntity.class, job.getId()); timer.setRetries(retries); return null; } }); }
@Override public void execute(ProcessEngine engine, String scenarioName) { ProcessInstance procInstance = engine.getRuntimeService().startProcessInstanceByKey(PROCESS_DEF_KEY, scenarioName); Job job = engine.getManagementService() .createJobQuery() .processInstanceId(procInstance.getId()) .singleResult(); engine.getManagementService().executeJob(job.getId()); } };
public void execute(ProcessEngine engine, String scenarioName) { ProcessInstance instance = engine .getRuntimeService() .startProcessInstanceByKey("NestedNonInterruptingTimerBoundaryEventOnOuterSubprocessScenario", scenarioName); Job job = engine.getManagementService() .createJobQuery().processInstanceId(instance.getId()).singleResult(); engine.getManagementService().executeJob(job.getId()); } };
private Date testExpression(String timeExpression) { // Set the clock fixed HashMap<String, Object> variables1 = new HashMap<String, Object>(); variables1.put("dueDate", timeExpression); // After process start, there should be timer created ProcessInstance pi1 = runtimeService.startProcessInstanceByKey("intermediateTimerEventExample", variables1); assertEquals(1, managementService.createJobQuery().processInstanceId(pi1.getId()).count()); List<Job> jobs = managementService.createJobQuery().executable().list(); assertEquals(1, jobs.size()); return jobs.get(0).getDuedate(); }
public void execute(ProcessEngine engine, String scenarioName) { ProcessInstance instance = engine .getRuntimeService() .startProcessInstanceByKey("NonInterruptingTimerBoundaryEventScenario", scenarioName); Job job = engine.getManagementService() .createJobQuery().processInstanceId(instance.getId()).singleResult(); engine.getManagementService().executeJob(job.getId()); } };
protected Job selectJobByProcessInstanceId(String processInstanceId) { disableAuthorization(); Job job = managementService .createJobQuery() .processInstanceId(processInstanceId) .singleResult(); enableAuthorization(); return job; }
public void execute(ProcessEngine engine, String scenarioName) { ProcessInstance instance = engine .getRuntimeService() .startProcessInstanceByKey("NestedNonInterruptingTimerBoundaryEventOnInnerSubprocessScenario", scenarioName); Job job = engine.getManagementService() .createJobQuery().processInstanceId(instance.getId()).singleResult(); engine.getManagementService().executeJob(job.getId()); } };
@Test public void testSetJobRetriesWithAuthenticatedTenant() { Job timerJob = managementService.createJobQuery() .processInstanceId(processInstance.getId()) .singleResult(); identityService.setAuthentication("aUserId", null, Arrays.asList(TENANT_ONE)); managementService.setJobRetries(timerJob.getId(), 5); assertEquals(5, managementService.createJobQuery() .processInstanceId(processInstance.getId()) .singleResult() .getRetries()); }
@Test public void testQueryByConfiguration() { String jobId = managementService.createJobQuery().processInstanceId(processInstanceIds.get(0)).singleResult().getId(); IncidentQuery query = runtimeService.createIncidentQuery().configuration(jobId); assertEquals(1, query.count()); List<Incident> incidents = query.list(); assertFalse(incidents.isEmpty()); assertEquals(1, incidents.size()); }
@Deployment(resources = {"org/camunda/bpm/engine/test/api/mgmt/timerOnTask.bpmn20.xml"}) public void testDeleteJobDeletion() { ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("timerOnTask"); Job timerJob = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); assertNotNull("Task timer should be there", timerJob); managementService.deleteJob(timerJob.getId()); timerJob = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); assertNull("There should be no job now. It was deleted", timerJob); }
@Deployment public void testLongProcessDefinitionKey() { String key = "myrealrealrealrealrealrealrealrealrealrealreallongprocessdefinitionkeyawesome"; String processInstanceId = runtimeService.startProcessInstanceByKey(key).getId(); Job job = managementService.createJobQuery().processInstanceId(processInstanceId).singleResult(); assertEquals(key, job.getProcessDefinitionKey()); }
@Test public void testSetJobDueDateWithNoAuthenticatedTenant() { Job timerJob = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); identityService.setAuthentication("aUserId", null); // then thrown.expect(ProcessEngineException.class); thrown.expectMessage("Cannot update the job '" + timerJob.getId() +"' because it belongs to no authenticated tenant."); // when managementService.setJobDuedate(timerJob.getId(), new Date()); }
protected List<String> setupFailedJobs() { List<String> jobIds = new ArrayList<String>(); Deployment deploy = testHelper.deploy(JOB_EXCEPTION_DEFINITION_XML); ProcessDefinition sourceDefinition = engineRule.getRepositoryService() .createProcessDefinitionQuery().deploymentId(deploy.getId()).singleResult(); processInstance = engineRule.getRuntimeService().startProcessInstanceById(sourceDefinition.getId()); List<Job> jobs = managementService.createJobQuery().processInstanceId(processInstance.getId()).list(); for (Job job : jobs) { jobIds.add(job.getId()); } return jobIds; }
@Deployment public void testJobSuspensionStateUpdate() { // given ProcessInstance instance = runtimeService.startProcessInstanceByKey("process"); String id = instance.getProcessInstanceId(); //when runtimeService.suspendProcessInstanceById(id); Job job = managementService.createJobQuery().processInstanceId(id).singleResult(); // then assertTrue(job.isSuspended()); }
@Test @OperateOnDeployment("dummy-client") public void testGracefulDegradationOnMissingBean() { // when processInstance = engine1.getRuntimeService().startProcessInstanceByKey("priorityProcess"); // then the job was created successfully and has the default priority on bean evaluation failure Job job = engine1.getManagementService().createJobQuery().processInstanceId(processInstance.getProcessInstanceId()).singleResult(); Assert.assertEquals(DefaultJobPriorityProvider.DEFAULT_PRIORITY_ON_RESOLUTION_FAILURE, job.getPriority()); }
@Test public void testQueryByExecutionId() { Job job = managementService.createJobQuery().processInstanceId(processInstanceIdOne).singleResult(); JobQuery query = managementService.createJobQuery().executionId(job.getExecutionId()); assertEquals(query.singleResult().getId(), job.getId()); verifyQueryResults(query, 1); }
/** * Check if property "DefaultNumberOfRetries" will be used */ @Deployment(resources = { "org/camunda/bpm/engine/test/bpmn/async/FoxJobRetryCmdTest.testFailedTask.bpmn20.xml" }) public void testDefaultNumberOfRetryProperty() { ProcessInstance pi = runtimeService.startProcessInstanceByKey("failedTask"); assertNotNull(pi); Job job = managementService.createJobQuery().processInstanceId(pi.getProcessInstanceId()).singleResult(); assertNotNull(job); assertEquals(pi.getProcessInstanceId(), job.getProcessInstanceId()); assertEquals(2, job.getRetries()); }
@Test @Deployment(resources = {"org/camunda/bpm/engine/test/api/mgmt/ManagementServiceTest.testGetJobExceptionStacktrace.bpmn20.xml"}) public void testQueryByExceptionMessage() { JobQuery query = managementService.createJobQuery().exceptionMessage(EXCEPTION_MESSAGE); verifyQueryResults(query, 0); ProcessInstance processInstance = startProcessInstanceWithFailingJob(); Job job = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); query = managementService.createJobQuery().exceptionMessage(job.getExceptionMessage()); verifyFailedJob(query, processInstance); }