@Override public String getDeleteReason() { return historicProcessInstance.getDeleteReason(); }
@Override public String getDeleteReason() { return historicProcessInstance.getDeleteReason(); }
@Override public String getDeleteReason() { return historicProcessInstance.getDeleteReason(); }
@SuppressWarnings("deprecation") @Override public SlpTaskState getCurrentState() { if (processInstance.getEndActivityId() == null) { if (processInstance.getDeleteReason() != null && !processInstance.getDeleteReason().isEmpty()) { try { SlpTaskState slpTaskState = SlpTaskState.fromValue(processInstance.getDeleteReason()); if (slpTaskState == SlpTaskState.SLP_TASK_STATE_FINISHED || slpTaskState == SlpTaskState.SLP_TASK_STATE_ERROR || slpTaskState == SlpTaskState.SLP_TASK_STATE_ABORTED) { return slpTaskState; } } catch (IllegalArgumentException e) { return SlpTaskState.SLP_TASK_STATE_ABORTED; } } return SlpTaskState.SLP_TASK_STATE_ABORTED; } else { return SlpTaskState.SLP_TASK_STATE_FINISHED; } }
@Override protected AbstractFlowLogData createLogData(final ActivitiEvent event) { final String processInstanceId = event.getProcessInstanceId(); this.log.fine("The process instance '" + processInstanceId + "' is canceled."); final HistoricProcessInstanceQuery processQuery = event.getEngineServices().getHistoryService() .createHistoricProcessInstanceQuery().processInstanceId(processInstanceId); final HistoricProcessInstance processResult = processQuery.singleResult(); final Map<String, Object> processVariables = processResult.getProcessVariables(); final String flowInstanceId = (String) processVariables .get(ActivitiSEConstants.Activiti.VAR_PETALS_FLOW_INSTANCE_ID); final String flowStepId = (String) processVariables .get(ActivitiSEConstants.Activiti.VAR_PETALS_FLOW_STEP_ID); return new ProcessInstanceFlowStepFailureLogData(flowInstanceId, flowStepId, processResult.getDeleteReason()); } }
job.setDeleteReason(historicProcessInstance.getDeleteReason());
@SuppressWarnings("deprecation") public HistoricProcessInstanceResponse createHistoricProcessInstanceResponse(HistoricProcessInstance processInstance, RestUrlBuilder urlBuilder) { HistoricProcessInstanceResponse result = new HistoricProcessInstanceResponse(); result.setBusinessKey(processInstance.getBusinessKey()); result.setDeleteReason(processInstance.getDeleteReason()); result.setDurationInMillis(processInstance.getDurationInMillis()); result.setEndActivityId(processInstance.getEndActivityId()); result.setEndTime(processInstance.getEndTime()); result.setId(processInstance.getId()); result.setName(processInstance.getName()); result.setProcessDefinitionId(processInstance.getProcessDefinitionId()); result.setProcessDefinitionUrl(urlBuilder.buildUrl(RestUrls.URL_PROCESS_DEFINITION, processInstance.getProcessDefinitionId())); result.setStartActivityId(processInstance.getStartActivityId()); result.setStartTime(processInstance.getStartTime()); result.setStartUserId(processInstance.getStartUserId()); result.setSuperProcessInstanceId(processInstance.getSuperProcessInstanceId()); result.setUrl(urlBuilder.buildUrl(RestUrls.URL_HISTORIC_PROCESS_INSTANCE, processInstance.getId())); if (processInstance.getProcessVariables() != null) { Map<String, Object> variableMap = processInstance.getProcessVariables(); for (String name : variableMap.keySet()) { result.addVariable(createRestVariable(name, variableMap.get(name), RestVariableScope.LOCAL, processInstance.getId(), VARIABLE_HISTORY_PROCESS, false, urlBuilder)); } } result.setTenantId(processInstance.getTenantId()); return result; }
job.setDeleteReason(historicProcessInstance.getDeleteReason());
activitiHistoryService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).singleResult(); assertNotNull(historicProcessInstance); assertEquals(ACTIVITI_JOB_DELETE_REASON, historicProcessInstance.getDeleteReason());
activitiHistoryService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).singleResult(); assertNotNull(historicProcessInstance); assertEquals(ACTIVITI_JOB_DELETE_REASON, historicProcessInstance.getDeleteReason());
/** * Asserts that the deleteJob call will move the job to completion, and add a record in the history instance with the specified delete reason. * * @throws Exception */ @Test public void testDeleteJob() throws Exception { // Start a job that will wait in a receive task jobDefinitionServiceTestHelper.createJobDefinition(ACTIVITI_XML_TEST_RECEIVE_TASK_WITH_CLASSPATH); Job job = jobService.createAndStartJob(jobServiceTestHelper.createJobCreateRequest(TEST_ACTIVITI_NAMESPACE_CD, TEST_ACTIVITI_JOB_NAME)); // Create a job delete request JobDeleteRequest jobDeleteRequest = new JobDeleteRequest(); jobDeleteRequest.setDeleteReason("test delete reason"); Job deleteJobResponse = jobService.deleteJob(job.getId(), jobDeleteRequest); // Assert delete job response assertEquals(job.getId(), deleteJobResponse.getId()); assertNull(deleteJobResponse.getNamespace()); assertNull(deleteJobResponse.getJobName()); assertEquals(JobStatusEnum.COMPLETED, deleteJobResponse.getStatus()); assertEquals(jobDeleteRequest.getDeleteReason(), deleteJobResponse.getDeleteReason()); // Assert historic process instance HistoricProcessInstance historicProcessInstance = activitiHistoryService.createHistoricProcessInstanceQuery().processInstanceId(job.getId()).singleResult(); assertNotNull(historicProcessInstance); assertEquals(jobDeleteRequest.getDeleteReason(), historicProcessInstance.getDeleteReason()); }