private List<String> extractWarnings(DbSession dbSession, CeActivityDto activityDto, Set<AdditionalField> additionalFields) { if (additionalFields.contains(AdditionalField.WARNINGS)) { List<CeTaskMessageDto> dtos = dbClient.ceTaskMessageDao().selectByTask(dbSession, activityDto.getUuid()); return dtos.stream() .map(CeTaskMessageDto::getMessage) .collect(MoreCollectors.toList(dtos.size())); } return Collections.emptyList(); }
/** * @return the messages for the specific task, if any, in ascending order of column {@code CREATED_AT}. */ public List<CeTaskMessageDto> selectByTask(DbSession dbSession, String taskUuid) { return getMapper(dbSession).selectByTask(taskUuid); }
private void insertMessages(String taskUuid, int messageCount) { IntStream.range(0, messageCount) .forEach(i -> db.getDbClient().ceTaskMessageDao().insert(db.getSession(), new CeTaskMessageDto() .setUuid("uuid_" + taskUuid + "_" + i) .setTaskUuid(taskUuid) .setMessage("m_" + taskUuid + "_" + i) .setCreatedAt(taskUuid.hashCode() + i))); db.commit(); }
public void insert(DbSession dbSession, Message message) { dbClient.ceTaskMessageDao().insert(dbSession, new CeTaskMessageDto() .setUuid(uuidFactory.create()) .setTaskUuid(ceTask.getUuid()) .setMessage(message.getText()) .setCreatedAt(message.getTimestamp())); }
private void insertWarnings(CeActivityDto task, int warningCount) { IntStream.range(0, warningCount).forEach(i -> db.getDbClient().ceTaskMessageDao().insert(dbSession, new CeTaskMessageDto() .setUuid(UuidFactoryFast.getInstance().create()) .setTaskUuid(task.getUuid()) .setMessage("message_" + task.getUuid() + "_" + i) .setCreatedAt(task.getUuid().hashCode() + i))); db.commit(); }
private AnalysisStatusWsResponse.Component formatComponent(DbSession dbSession, ComponentDto component, @Nullable CeActivityDto lastActivity, @Nullable String branchKey, @Nullable String pullRequestKey) { AnalysisStatusWsResponse.Component.Builder builder = AnalysisStatusWsResponse.Component.newBuilder() .setOrganization(getOrganizationKey(dbSession, component)) .setKey(component.getKey()) .setName(component.name()); if (branchKey != null) { builder.setBranch(branchKey); } else if (pullRequestKey != null) { builder.setPullRequest(pullRequestKey); } if (lastActivity != null) { List<String> warnings = dbClient.ceTaskMessageDao().selectByTask(dbSession, lastActivity.getUuid()).stream() .map(CeTaskMessageDto::getMessage) .collect(Collectors.toList()); builder.addAllWarnings(warnings); } return builder.build(); }
public void insert(DbSession dbSession, CeTaskMessageDto dto) { getMapper(dbSession).insert(dto); }
private CeTaskMessageDto insertMessage(String taskUuid, int i, long createdAt) { CeTaskMessageDto res = new CeTaskMessageDto() .setUuid("message_" + i) .setTaskUuid(taskUuid) .setMessage("test_" + i) .setCreatedAt(createdAt); DbSession dbSession = dbTester.getSession(); underTest.insert(dbSession, res); dbSession.commit(); return res; } }
@Test public void selectByTask_returns_empty_on_empty_table() { String taskUuid = randomAlphabetic(10); List<CeTaskMessageDto> dto = underTest.selectByTask(dbTester.getSession(), taskUuid); assertThat(dto).isEmpty(); }
@Test public void no_warning_detail_on_task_in_queue() { UserDto user = db.users().insertUser(); userSession.logIn(user).setRoot(); CeQueueDto queueDto = createAndPersistQueueTask(null, user); IntStream.range(0, 1 + new Random().nextInt(5)) .forEach(i -> db.getDbClient().ceTaskMessageDao().insert(db.getSession(), new CeTaskMessageDto() .setUuid("u_" + i) .setTaskUuid(queueDto.getUuid()) .setMessage("m_" + i) .setCreatedAt(queueDto.getUuid().hashCode() + i))); db.commit(); Ce.TaskResponse taskResponse = ws.newRequest() .setParam("id", SOME_TASK_UUID) .executeProtobuf(Ce.TaskResponse.class); Ce.Task task = taskResponse.getTask(); assertThat(task.getWarningCount()).isZero(); assertThat(task.getWarningsList()).isEmpty(); }
@Test public void populates_warning_count_of_activities_but_not_warnings() { ComponentDto privateProject = db.components().insertPrivateProject(); userSession.addProjectPermission(UserRole.USER, privateProject); SnapshotDto analysis = db.components().insertSnapshot(privateProject); CeActivityDto activity = insertActivity("Short", privateProject, SUCCESS, analysis); int messageCount = 1 + new Random().nextInt(10); IntStream.range(0, messageCount).forEach(i -> db.getDbClient().ceTaskMessageDao().insert(db.getSession(), new CeTaskMessageDto() .setUuid("uuid_" + i) .setTaskUuid(activity.getUuid()) .setMessage("m_" + i) .setCreatedAt(i))); db.commit(); Ce.ComponentResponse response = ws.newRequest() .setParam(PARAM_COMPONENT, privateProject.getKey()) .executeProtobuf(Ce.ComponentResponse.class); assertThat(response.hasCurrent()).isTrue(); assertThat(response.getCurrent()) .extracting(Ce.Task::getWarningCount, Ce.Task::getWarningsList) .containsOnly(messageCount, emptyList()); }
private void createTaskMessage(CeActivityDto activity, String warning) { db.getDbClient().ceTaskMessageDao().insert(db.getSession(), new CeTaskMessageDto() .setUuid("m-uuid-" + counter++) .setTaskUuid(activity.getUuid()) .setMessage(warning) .setCreatedAt(counter)); db.commit(); }
private CeTaskMessageDto insertWarning(CeActivityDto task, int i) { CeTaskMessageDto res = new CeTaskMessageDto() .setUuid(UuidFactoryFast.getInstance().create()) .setTaskUuid(task.getUuid()) .setMessage("msg_" + task.getUuid() + "_" + i) .setCreatedAt(task.getUuid().hashCode() + i); db.getDbClient().ceTaskMessageDao().insert(db.getSession(), res); db.getSession().commit(); return res; }