From cf17b2267bab439cadafbc1def298bae0d5ea659 Mon Sep 17 00:00:00 2001 From: James Moger Date: Thu, 30 May 2013 23:29:25 -0400 Subject: Added a Dashboard page with a daily ref log of starred/owned repos This is a work-in-progress and is mostly working like I want, but will require some refactoring to make it even more useful and less complex. --- src/main/java/com/gitblit/models/PushLogEntry.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/main/java/com/gitblit/models/PushLogEntry.java') diff --git a/src/main/java/com/gitblit/models/PushLogEntry.java b/src/main/java/com/gitblit/models/PushLogEntry.java index d8f0b091..8b006d96 100644 --- a/src/main/java/com/gitblit/models/PushLogEntry.java +++ b/src/main/java/com/gitblit/models/PushLogEntry.java @@ -54,6 +54,8 @@ public class PushLogEntry implements Serializable, Comparable { private final Map refUpdates; private final Map refIdChanges; + + private int authorCount; /** * Constructor for specified duration of push from start date. @@ -72,6 +74,7 @@ public class PushLogEntry implements Serializable, Comparable { this.commits = new LinkedHashSet(); this.refUpdates = new HashMap(); this.refIdChanges = new HashMap(); + this.authorCount = -1; } /** @@ -152,6 +155,7 @@ public class PushLogEntry implements Serializable, Comparable { public RepositoryCommit addCommit(String branch, RevCommit commit) { RepositoryCommit commitModel = new RepositoryCommit(repository, branch, commit); if (commits.add(commitModel)) { + authorCount = -1; return commitModel; } return null; @@ -165,6 +169,7 @@ public class PushLogEntry implements Serializable, Comparable { */ public void addCommits(List list) { commits.addAll(list); + authorCount = -1; } /** @@ -254,6 +259,18 @@ public class PushLogEntry implements Serializable, Comparable { return list; } + public int getAuthorCount() { + if (authorCount == -1) { + Set authors = new HashSet(); + for (RepositoryCommit commit : commits) { + String name = commit.getAuthorIdent().getName(); + authors.add(name); + } + authorCount = authors.size(); + } + return authorCount; + } + /** * The total number of commits in the push. * -- cgit v1.2.3