diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java index ca3d24790..2fa6e5cff 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java @@ -217,7 +217,7 @@ public static enum RequestPolicy { private PackWriter.Statistics statistics; - private UploadPackLogger logger; + private UploadPackLogger logger = UploadPackLogger.NULL; /** * Create a new pack upload for an open repository. @@ -376,6 +376,11 @@ public void setPackConfig(PackConfig pc) { this.packConfig = pc; } + /** @return the configured logger. */ + public UploadPackLogger getLogger() { + return logger; + } + /** * Set the logger. * @@ -1111,7 +1116,7 @@ else if (ref.getName().startsWith(Constants.R_HEADS)) if (sideband) pckOut.end(); - if (logger != null && statistics != null) + if (statistics != null) logger.onPackStatistics(statistics); } } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPackLogger.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPackLogger.java index 6e37b837b..45f91ed81 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPackLogger.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPackLogger.java @@ -54,6 +54,13 @@ * the connection information before invoking UploadPack. */ public interface UploadPackLogger { + /** A simple no-op logger. */ + public static final UploadPackLogger NULL = new UploadPackLogger() { + public void onPackStatistics(PackWriter.Statistics stats) { + // Do nothing. + } + }; + /** * Notice to the logger after a pack has been sent. *