public static HistoricExternalTaskLogDto fromHistoricExternalTaskLog(HistoricExternalTaskLog historicExternalTaskLog) { HistoricExternalTaskLogDto result = new HistoricExternalTaskLogDto(); result.id = historicExternalTaskLog.getId(); result.timestamp = historicExternalTaskLog.getTimestamp(); result.removalTime = historicExternalTaskLog.getRemovalTime(); result.externalTaskId = historicExternalTaskLog.getExternalTaskId(); result.topicName = historicExternalTaskLog.getTopicName(); result.workerId = historicExternalTaskLog.getWorkerId(); result.priority = historicExternalTaskLog.getPriority(); result.retries = historicExternalTaskLog.getRetries(); result.errorMessage = historicExternalTaskLog.getErrorMessage(); result.activityId = historicExternalTaskLog.getActivityId(); result.activityInstanceId = historicExternalTaskLog.getActivityInstanceId(); result.executionId = historicExternalTaskLog.getExecutionId(); result.processInstanceId = historicExternalTaskLog.getProcessInstanceId(); result.processDefinitionId = historicExternalTaskLog.getProcessDefinitionId(); result.processDefinitionKey = historicExternalTaskLog.getProcessDefinitionKey(); result.tenantId = historicExternalTaskLog.getTenantId(); result.rootProcessInstanceId = historicExternalTaskLog.getRootProcessInstanceId(); result.creationLog = historicExternalTaskLog.isCreationLog(); result.failureLog = historicExternalTaskLog.isFailureLog(); result.successLog = historicExternalTaskLog.isSuccessLog(); result.deletionLog = historicExternalTaskLog.isDeletionLog();
protected void assertHistoricLogPropertiesAreProperlySet(ExternalTask task, HistoricExternalTaskLog log) { assertNotNull(log); assertNotNull(log.getId()); assertNotNull(log.getTimestamp()); assertEquals(task.getId(), log.getExternalTaskId()); assertEquals(task.getActivityId(), log.getActivityId()); assertEquals(task.getActivityInstanceId(), log.getActivityInstanceId()); assertEquals(task.getTopicName(), log.getTopicName()); assertEquals(task.getRetries(), log.getRetries()); assertEquals(task.getExecutionId(), log.getExecutionId()); assertEquals(task.getProcessInstanceId(), log.getProcessInstanceId()); assertEquals(task.getProcessDefinitionId(), log.getProcessDefinitionId()); assertEquals(task.getProcessDefinitionKey(), log.getProcessDefinitionKey()); assertEquals(task.getPriority(), log.getPriority()); }
@Test public void testQueryByExecutionIds() { // given startExternalTaskProcesses(2); HistoricExternalTaskLog taskLog = retrieveFirstHistoricExternalTaskLog(); // when HistoricExternalTaskLog log = historyService .createHistoricExternalTaskLogQuery() .executionIdIn(taskLog.getExecutionId()) .singleResult(); // then assertNotNull(log); assertThat(log.getId(), is(taskLog.getId())); }
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getExternalTaskId(); } });
@Test public void testQueryById() { // given startExternalTaskProcesses(2); String logId = retrieveFirstHistoricExternalTaskLog().getId(); // when HistoricExternalTaskLog log = historyService .createHistoricExternalTaskLogQuery() .logId(logId) .singleResult(); // then assertNotNull(log); assertThat(log.getId(), is(logId)); }
@Override public Long getProperty(HistoricExternalTaskLog obj) { return obj.getPriority(); } });
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getProcessDefinitionId(); } });
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getProcessInstanceId(); } });
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getActivityInstanceId(); } });
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getActivityId(); } });
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getExecutionId(); } });
@Test public void testErrorMessageTruncation() { // given String exceptionMessage = createStringOfLength(1000); ExternalTask task = startExternalTaskProcess(); reportExternalTaskFailure(task.getId(), exceptionMessage, ERROR_DETAILS); // when HistoricExternalTaskLog failedLog = historyService .createHistoricExternalTaskLogQuery() .failureLog() .singleResult(); String errorMessage = failedLog.getErrorMessage(); String expectedErrorMessage = exceptionMessage.substring(0, ExternalTaskEntity.MAX_EXCEPTION_MESSAGE_LENGTH); // then assertNotNull(failedLog); assertEquals(ExternalTaskEntity.MAX_EXCEPTION_MESSAGE_LENGTH, errorMessage.length()); assertEquals(expectedErrorMessage, errorMessage); }
protected void assertHistoricLogPropertiesAreProperlySet(ExternalTask task, HistoricExternalTaskLog log) { assertNotNull(log); assertNotNull(log.getId()); assertNotNull(log.getTimestamp()); assertEquals(task.getId(), log.getExternalTaskId()); assertEquals(task.getActivityId(), log.getActivityId()); assertEquals(task.getActivityInstanceId(), log.getActivityInstanceId()); assertEquals(task.getTopicName(), log.getTopicName()); assertEquals(task.getRetries(), log.getRetries()); assertEquals(task.getExecutionId(), log.getExecutionId()); assertEquals(task.getProcessInstanceId(), log.getProcessInstanceId()); assertEquals(task.getProcessDefinitionId(), log.getProcessDefinitionId()); assertEquals(task.getProcessDefinitionKey(), log.getProcessDefinitionKey()); assertEquals(task.getPriority(), log.getPriority()); }
@Test public void testQueryByExternalTaskId() { // given startExternalTaskProcesses(2); String logExternalTaskId = retrieveFirstHistoricExternalTaskLog().getExternalTaskId(); // when HistoricExternalTaskLog log = historyService .createHistoricExternalTaskLogQuery() .externalTaskId(logExternalTaskId) .singleResult(); // then assertNotNull(log); assertThat(log.getExternalTaskId(), is(logExternalTaskId)); }
@Test public void testGetErrorDetailsAuthenticatedTenant() { // given identityService.setAuthentication("user", null, Collections.singletonList(TENANT_ONE)); String failedHistoricExternalTaskLogId = historyService .createHistoricExternalTaskLogQuery() .failureLog() .tenantIdIn(TENANT_ONE) .singleResult() .getId(); // when String stacktrace = historyService.getHistoricExternalTaskLogErrorDetails(failedHistoricExternalTaskLogId); // then assertThat(stacktrace, is(notNullValue())); assertThat(stacktrace, is(ERROR_DETAILS)); }
@Test public void testQueryByPriorityRange() { // given startExternalTaskProcesses(5); // when List<HistoricExternalTaskLog> externalTaskLogs = historyService .createHistoricExternalTaskLogQuery() .priorityLowerThanOrEquals(3L) .priorityHigherThanOrEquals(1L) .list(); // then assertThat(externalTaskLogs.size(), is(3)); for (HistoricExternalTaskLog log : externalTaskLogs) { assertTrue(log.getPriority() <= 3 && log.getPriority() >= 1); } }
@Test public void testQueryByExecutionIds() { // given startExternalTaskProcesses(2); HistoricExternalTaskLog taskLog = retrieveFirstHistoricExternalTaskLog(); // when HistoricExternalTaskLog log = historyService .createHistoricExternalTaskLogQuery() .executionIdIn(taskLog.getExecutionId()) .singleResult(); // then assertNotNull(log); assertThat(log.getId(), is(taskLog.getId())); }
@Override public String getProperty(HistoricExternalTaskLog obj) { ProcessDefinition processDefinition = repositoryService.getProcessDefinition(obj.getProcessDefinitionId()); return processDefinition.getKey(); } });
@Test public void testQueryByProcessInstanceId() { // given startExternalTaskProcesses(2); String processInstanceId = retrieveFirstHistoricExternalTaskLog().getProcessInstanceId(); // when HistoricExternalTaskLog log = historyService .createHistoricExternalTaskLogQuery() .processInstanceId(processInstanceId) .singleResult(); // then assertNotNull(log); assertThat(log.getProcessInstanceId(), is(processInstanceId)); }
@Override public String getProperty(HistoricExternalTaskLog obj) { return obj.getActivityInstanceId(); } });