]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-7316 do not create a builder for each changeset 790/head
authorSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Tue, 23 Feb 2016 17:40:27 +0000 (18:40 +0100)
committerSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Wed, 24 Feb 2016 14:47:25 +0000 (15:47 +0100)
server/sonar-server/src/main/java/org/sonar/server/computation/scm/ReportScmInfo.java

index 5921675707e8b040e00d744da7432bdd6bcb984e..08f31fcb30989973abdbfda77c688a1a4c048948 100644 (file)
@@ -74,6 +74,7 @@ class ReportScmInfo implements ScmInfo {
   private static class LineIndexToChangeset implements Function<Integer, Changeset> {
     private final BatchReport.Changesets changesets;
     private final Map<Integer, Changeset> changesetCache;
+    private final Changeset.Builder builder = Changeset.newChangesetBuilder();
 
     public LineIndexToChangeset(BatchReport.Changesets changesets) {
       this.changesets = changesets;
@@ -93,10 +94,10 @@ class ReportScmInfo implements ScmInfo {
       return res;
     }
 
-    private static Changeset convert(BatchReport.Changesets.Changeset changeset, int line) {
+    private Changeset convert(BatchReport.Changesets.Changeset changeset, int line) {
       checkState(changeset.hasRevision(), "Changeset on line %s must have a revision", line);
       checkState(changeset.hasDate(), "Changeset on line %s must have a date", line);
-      return Changeset.newChangesetBuilder()
+      return builder
         .setRevision(changeset.getRevision())
         .setAuthor(changeset.hasAuthor() ? changeset.getAuthor() : null)
         .setDate(changeset.getDate())