From 6db4261a984da3d70cd3ac35869f19a75edc0ce8 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 05 Dec 2012 19:05:59 -0500
Subject: [PATCH] Implemented hot-reloadable CRL

---
 src/com/gitblit/utils/ActivityUtils.java |   19 +++++++++++++------
 1 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/src/com/gitblit/utils/ActivityUtils.java b/src/com/gitblit/utils/ActivityUtils.java
index d603a49..80aaebb 100644
--- a/src/com/gitblit/utils/ActivityUtils.java
+++ b/src/com/gitblit/utils/ActivityUtils.java
@@ -82,6 +82,9 @@
 		Map<String, Activity> activity = new HashMap<String, Activity>();
 		for (RepositoryModel model : models) {
 			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 +97,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 +106,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 +158,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 +181,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