From 99f359e07087d826fdb024e4d205c2cb645f1d2a Mon Sep 17 00:00:00 2001
From: saheba <mail@saheba.net>
Date: Mon, 25 Mar 2013 16:32:53 -0400
Subject: [PATCH] +feature: automatic tagging of each push with an incremental revision number per repository
---
src/com/gitblit/utils/ActivityUtils.java | 25 ++++++++++++++++++-------
1 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/src/com/gitblit/utils/ActivityUtils.java b/src/com/gitblit/utils/ActivityUtils.java
index d603a49..732fdeb 100644
--- a/src/com/gitblit/utils/ActivityUtils.java
+++ b/src/com/gitblit/utils/ActivityUtils.java
@@ -36,9 +36,9 @@
import com.gitblit.GitBlit;
import com.gitblit.models.Activity;
-import com.gitblit.models.Activity.RepositoryCommit;
import com.gitblit.models.GravatarProfile;
import com.gitblit.models.RefModel;
+import com.gitblit.models.RepositoryCommit;
import com.gitblit.models.RepositoryModel;
import com.google.gson.reflect.TypeToken;
@@ -81,7 +81,14 @@
Map<String, Activity> activity = new HashMap<String, Activity>();
for (RepositoryModel model : models) {
+ if (model.maxActivityCommits == -1) {
+ // skip this repository
+ continue;
+ }
if (model.hasCommits && model.lastChange.after(thresholdDate)) {
+ if (model.isCollectingGarbage) {
+ continue;
+ }
Repository repository = GitBlit.self()
.getRepository(model.name);
List<String> branches = new ArrayList<String>();
@@ -94,7 +101,7 @@
branches.add(objectId);
}
Map<ObjectId, List<RefModel>> allRefs = JGitUtils
- .getAllRefs(repository);
+ .getAllRefs(repository, model.showRemoteBranches);
for (String branch : branches) {
String shortName = branch;
@@ -103,7 +110,11 @@
}
List<RevCommit> commits = JGitUtils.getRevLog(repository,
branch, thresholdDate);
- for (RevCommit commit : commits) {
+ if (model.maxActivityCommits > 0 && commits.size() > model.maxActivityCommits) {
+ // trim commits to maximum count
+ commits = commits.subList(0, model.maxActivityCommits);
+ }
+ for (RevCommit commit : commits) {
Date date = JGitUtils.getCommitDate(commit);
String dateStr = df.format(date);
if (!activity.containsKey(dateStr)) {
@@ -151,16 +162,16 @@
* @param email
* address to query Gravatar
* @param width
- * size of thumbnail. if width <= 0, the defalt of 60 is used.
+ * size of thumbnail. if width <= 0, the default of 50 is used.
* @return
*/
public static String getGravatarThumbnailUrl(String email, int width) {
if (width <= 0) {
- width = 60;
+ width = 50;
}
String emailHash = StringUtils.getMD5(email);
String url = MessageFormat.format(
- "http://www.gravatar.com/avatar/{0}?s={1,number,0}&d=identicon", emailHash, width);
+ "https://www.gravatar.com/avatar/{0}?s={1,number,0}&d=identicon", emailHash, width);
return url;
}
@@ -174,7 +185,7 @@
* @throws IOException
*/
public static GravatarProfile getGravatarProfile(String hash) throws IOException {
- String url = MessageFormat.format("http://www.gravatar.com/{0}.json", hash);
+ String url = MessageFormat.format("https://www.gravatar.com/{0}.json", hash);
// Gravatar has a complex json structure
Type profileType = new TypeToken<Map<String, List<GravatarProfile>>>() {
}.getType();
--
Gitblit v1.9.1