private Long createdAt;
private Long buildDate;
private String status = STATUS_UNPROCESSED;
- private Integer purgeStatus;
private Boolean last;
private String codePeriodVersion;
private String projectVersion;
return this;
}
- @CheckForNull
- public Integer getPurgeStatus() {
- return purgeStatus;
- }
-
- public SnapshotDto setPurgeStatus(@Nullable Integer purgeStatus) {
- this.purgeStatus = purgeStatus;
- return this;
- }
-
public Boolean getLast() {
return last;
}
Objects.equals(createdAt, that.createdAt) &&
Objects.equals(buildDate, that.buildDate) &&
Objects.equals(status, that.status) &&
- Objects.equals(purgeStatus, that.purgeStatus) &&
Objects.equals(last, that.last) &&
Objects.equals(codePeriodVersion, that.codePeriodVersion) &&
Objects.equals(projectVersion, that.projectVersion) &&
@Override
public int hashCode() {
- return Objects.hash(id, uuid, componentUuid, createdAt, buildDate, status, purgeStatus, last, codePeriodVersion, projectVersion, periodMode, periodParam, periodDate);
+ return Objects.hash(id, uuid, componentUuid, createdAt, buildDate, status, last, codePeriodVersion, projectVersion, periodMode, periodParam, periodDate);
}
@Override
", createdAt=" + createdAt +
", buildDate=" + buildDate +
", status='" + status + '\'' +
- ", purgeStatus=" + purgeStatus +
", last=" + last +
", codePeriodVersion='" + codePeriodVersion + '\'' +
", projectVersion='" + projectVersion + '\'' +
void deleteAnalysisWastedMeasures(@Param("analysisUuids") List<String> analysisUuids, @Param("metricIds") List<Long> metricIds);
+ /**
+ * Purge status flag is used to not attempt to remove duplications & historical data of analysis of which we already
+ * removed them.
+ */
void updatePurgeStatusToOne(@Param("analysisUuids") List<String> analysisUuid);
void resolveComponentIssuesNotAlreadyResolved(@Param("componentUuids") List<String> componentUuids, @Param("dateAsLong") Long dateAsLong);
private final String componentUuid;
private String[] status;
private Boolean islast;
+ /**
+ * If {@code true}, selects only analysis which have not been purged from historical and duplication data before.
+ */
private Boolean notPurged;
public PurgeSnapshotQuery(String componentUuid) {
s.created_at as createdAt,
s.build_date as buildDate,
s.status as status,
- s.purge_status as purgeStatus,
s.islast as last,
s.version as rawCodePeriodVersion,
s.project_version as rawProjectVersion,
created_at,
build_date,
status,
- purge_status,
islast,
version,
project_version,
#{createdAt, jdbcType=BIGINT},
#{buildDate, jdbcType=BIGINT},
#{status, jdbcType=VARCHAR},
- #{purgeStatus, jdbcType=INTEGER},
#{last, jdbcType=BOOLEAN},
#{codePeriodVersion, jdbcType=VARCHAR},
#{projectVersion, jdbcType=VARCHAR},
.setUuid("ABCD")
.setStatus("P")
.setLast(true)
- .setPurgeStatus(1)
.setPeriodMode("days")
.setPeriodParam("30")
.setPeriodDate(1500000000001L)
assertThat(result.getComponentUuid()).isEqualTo(project.uuid());
assertThat(result.getStatus()).isEqualTo("P");
assertThat(result.getLast()).isTrue();
- assertThat(result.getPurgeStatus()).isEqualTo(1);
assertThat(result.getCodePeriodVersion()).isEqualTo("2.1-SNAPSHOT");
assertThat(result.getProjectVersion()).isEqualTo("2.1.0.2336");
assertThat(result.getPeriodMode()).isEqualTo("days");
SnapshotDto dto = underTest.insert(db.getSession(), newAnalysis(project)
.setStatus("P")
.setLast(true)
- .setPurgeStatus(1)
.setPeriodMode("days")
.setPeriodParam("30")
.setPeriodDate(1500000000001L)
assertThat(dto.getComponentUuid()).isEqualTo(project.uuid());
assertThat(dto.getStatus()).isEqualTo("P");
assertThat(dto.getLast()).isTrue();
- assertThat(dto.getPurgeStatus()).isEqualTo(1);
assertThat(dto.getPeriodMode()).isEqualTo("days");
assertThat(dto.getPeriodModeParameter()).isEqualTo("30");
assertThat(dto.getPeriodDate()).isEqualTo(1500000000001L);
.setComponentUuid("uuid_3")
.setStatus("P")
.setLast(true)
- .setPurgeStatus(1)
.setCodePeriodVersion("2.1-SNAPSHOT")
.setPeriodMode("days1")
.setPeriodParam("30")