diff options
author | James Moger <james.moger@gitblit.com> | 2013-05-30 23:29:25 -0400 |
---|---|---|
committer | James Moger <james.moger@gitblit.com> | 2013-05-30 23:29:25 -0400 |
commit | cf17b2267bab439cadafbc1def298bae0d5ea659 (patch) | |
tree | 0896000f050112e5382dcf146300e89780a5a203 /src/main/java/com/gitblit/models/PushLogEntry.java | |
parent | 962827130933297711bc6b4384edcc769e3eed05 (diff) | |
download | gitblit-cf17b2267bab439cadafbc1def298bae0d5ea659.tar.gz gitblit-cf17b2267bab439cadafbc1def298bae0d5ea659.zip |
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.
Diffstat (limited to 'src/main/java/com/gitblit/models/PushLogEntry.java')
-rw-r--r-- | src/main/java/com/gitblit/models/PushLogEntry.java | 17 |
1 files changed, 17 insertions, 0 deletions
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<PushLogEntry> { private final Map<String, ReceiveCommand.Type> refUpdates;
private final Map<String, String> refIdChanges;
+
+ private int authorCount;
/**
* Constructor for specified duration of push from start date.
@@ -72,6 +74,7 @@ public class PushLogEntry implements Serializable, Comparable<PushLogEntry> { this.commits = new LinkedHashSet<RepositoryCommit>();
this.refUpdates = new HashMap<String, ReceiveCommand.Type>();
this.refIdChanges = new HashMap<String, String>();
+ this.authorCount = -1;
}
/**
@@ -152,6 +155,7 @@ public class PushLogEntry implements Serializable, Comparable<PushLogEntry> { 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<PushLogEntry> { */
public void addCommits(List<RepositoryCommit> list) {
commits.addAll(list);
+ authorCount = -1;
}
/**
@@ -254,6 +259,18 @@ public class PushLogEntry implements Serializable, Comparable<PushLogEntry> { return list;
}
+ public int getAuthorCount() {
+ if (authorCount == -1) {
+ Set<String> authors = new HashSet<String>();
+ 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.
*
|