diff --git a/scm-webapp/src/main/java/sonia/scm/repository/SynchronizedRepositoryHookEvent.java b/scm-webapp/src/main/java/sonia/scm/repository/SynchronizedRepositoryHookEvent.java index 8bc9c2b210..dc5754d927 100644 --- a/scm-webapp/src/main/java/sonia/scm/repository/SynchronizedRepositoryHookEvent.java +++ b/scm-webapp/src/main/java/sonia/scm/repository/SynchronizedRepositoryHookEvent.java @@ -33,6 +33,8 @@ package sonia.scm.repository; //~--- non-JDK imports -------------------------------------------------------- +import com.google.common.base.Stopwatch; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -118,7 +120,7 @@ public class SynchronizedRepositoryHookEvent implements RepositoryHookEvent { if (changesets == null) { - changesets = wrappedEvent.getChangesets(); + fetchChangesets(); if (changesets != null) { @@ -171,6 +173,26 @@ public class SynchronizedRepositoryHookEvent implements RepositoryHookEvent //~--- methods -------------------------------------------------------------- + /** + * Method description + * + */ + private void fetchChangesets() + { + if (logger.isDebugEnabled()) + { + Stopwatch sw = new Stopwatch().start(); + + changesets = wrappedEvent.getChangesets(); + sw.stop(); + logger.debug("getChangesets() took {}", sw); + } + else + { + changesets = wrappedEvent.getChangesets(); + } + } + /** * Method description *