From 08310a613a5d52ce81b5a3cb9ff26f28c2645456 Mon Sep 17 00:00:00 2001 From: Teryk Bellahsene Date: Tue, 6 Jan 2015 12:38:35 +0100 Subject: [PATCH] SONAR-5911 add analysis date to issues change log --- .../server/computation/AnalysisReportService.java | 11 ++++++++++- .../server/computation/ComputeEngineContext.java | 8 ++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/AnalysisReportService.java b/server/sonar-server/src/main/java/org/sonar/server/computation/AnalysisReportService.java index 658b2b520cd..ab4f4a87415 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/computation/AnalysisReportService.java +++ b/server/sonar-server/src/main/java/org/sonar/server/computation/AnalysisReportService.java @@ -46,6 +46,7 @@ import javax.annotation.Nullable; import java.io.*; import java.util.ArrayList; +import java.util.Date; import java.util.List; public class AnalysisReportService implements ServerComponent { @@ -132,6 +133,7 @@ public class AnalysisReportService implements ServerComponent { defaultIssue.setLine(issue.line()); defaultIssue.setEffortToFix(issue.effortToFix()); setDebt(defaultIssue, issue.debt()); + setFieldDiffs(defaultIssue, issue.diffFields(), context.getAnalysisDate()); defaultIssue.setStatus(issue.status()); defaultIssue.setResolution(issue.resolution()); defaultIssue.setReporter(issue.reporter()); @@ -143,13 +145,20 @@ public class AnalysisReportService implements ServerComponent { defaultIssue.setCreationDate(issue.creationDate()); defaultIssue.setUpdateDate(issue.updateDate()); defaultIssue.setCloseDate(issue.closeDate()); - defaultIssue.setCurrentChange(FieldDiffs.parse(issue.diffFields())); defaultIssue.setChanged(issue.isChanged()); defaultIssue.setNew(issue.isNew()); defaultIssue.setSelectedAt(issue.selectedAt()); return defaultIssue; } + private DefaultIssue setFieldDiffs(DefaultIssue issue, String diffFields, Date analysisDate) { + FieldDiffs fieldDiffs = FieldDiffs.parse(diffFields); + fieldDiffs.setCreationDate(analysisDate); + issue.setCurrentChange(fieldDiffs); + + return issue; + } + private DefaultIssue setComponentId(DefaultIssue issue, ReportComponent component) { if (component != null) { issue.setComponentId((long) component.id()); diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/ComputeEngineContext.java b/server/sonar-server/src/main/java/org/sonar/server/computation/ComputeEngineContext.java index c62ccf1dbb5..09aa16566fa 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/computation/ComputeEngineContext.java +++ b/server/sonar-server/src/main/java/org/sonar/server/computation/ComputeEngineContext.java @@ -30,6 +30,7 @@ import javax.annotation.CheckForNull; import javax.annotation.Nullable; import java.io.File; +import java.util.Date; import java.util.HashMap; import java.util.Map; @@ -39,6 +40,7 @@ public class ComputeEngineContext { private final ComponentDto project; private File reportDirectory; private Map components = new HashMap<>(); + private Date analysisDate; public ComputeEngineContext(AnalysisReportDto reportDto, ComponentDto project) { this.reportDto = reportDto; @@ -62,6 +64,7 @@ public class ComputeEngineContext { } public void addResources(ReportComponents reportComponents) { + analysisDate = reportComponents.analysisDate(); addResource(reportComponents.root()); } @@ -81,4 +84,9 @@ public class ComputeEngineContext { addResource(childResource); } } + + @CheckForNull + public Date getAnalysisDate() { + return analysisDate; + } } -- 2.39.5