From 1fa5e85b2d208636a6237ef8930f200767165baa Mon Sep 17 00:00:00 2001 From: James Moger Date: Tue, 7 Jun 2011 20:55:19 -0400 Subject: Improved metrics page and added metrics links to branches panel. --- src/com/gitblit/utils/MetricUtils.java | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'src/com/gitblit/utils') diff --git a/src/com/gitblit/utils/MetricUtils.java b/src/com/gitblit/utils/MetricUtils.java index d8286e29..492b0243 100644 --- a/src/com/gitblit/utils/MetricUtils.java +++ b/src/com/gitblit/utils/MetricUtils.java @@ -39,10 +39,12 @@ public class MetricUtils { private static final Logger LOGGER = LoggerFactory.getLogger(MetricUtils.class); - public static List getDateMetrics(Repository r, boolean includeTotal, String format) { + public static List getDateMetrics(Repository r, String objectId, boolean includeTotal, String format) { Metric total = new Metric("TOTAL"); final Map metricMap = new HashMap(); - + if (StringUtils.isEmpty(objectId)) { + objectId = Constants.HEAD; + } if (JGitUtils.hasCommits(r)) { final List tags = JGitUtils.getTags(r, true, -1); final Map tagMap = new HashMap(); @@ -51,7 +53,7 @@ public class MetricUtils { } try { RevWalk walk = new RevWalk(r); - ObjectId object = r.resolve(Constants.HEAD); + ObjectId object = r.resolve(objectId); RevCommit lastCommit = walk.parseCommit(object); walk.markStart(lastCommit); @@ -62,12 +64,9 @@ public class MetricUtils { int diffDays = (lastCommit.getCommitTime() - firstCommit.getCommitTime()) / (60 * 60 * 24); total.duration = diffDays; - if (diffDays <= 90) { + if (diffDays <= 365) { // Days df = new SimpleDateFormat("yyyy-MM-dd"); - } else if (diffDays > 90 && diffDays < 365) { - // Weeks - df = new SimpleDateFormat("yyyy-MM (w)"); } else { // Months df = new SimpleDateFormat("yyyy-MM"); @@ -108,13 +107,15 @@ public class MetricUtils { return metrics; } - public static List getAuthorMetrics(Repository r, boolean byEmail) { + public static List getAuthorMetrics(Repository r, String objectId, boolean byEmail) { final Map metricMap = new HashMap(); - + if (StringUtils.isEmpty(objectId)) { + objectId = Constants.HEAD; + } if (JGitUtils.hasCommits(r)) { try { RevWalk walk = new RevWalk(r); - ObjectId object = r.resolve(Constants.HEAD); + ObjectId object = r.resolve(objectId); RevCommit lastCommit = walk.parseCommit(object); walk.markStart(lastCommit); -- cgit v1.2.3