From ea148c80ea6e12860a646bfaf60a0b712ebc8958 Mon Sep 17 00:00:00 2001 From: Leif Åstrand Date: Thu, 1 Aug 2013 12:18:05 +0300 Subject: Disable all logging if production mode is enabled (#12299) Change-Id: Ia6b05c0ebaf1f0bb4fb675392cc8f634cab8e494 --- .../vaadin/client/ApplicationConfiguration.java | 24 +++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'client') diff --git a/client/src/com/vaadin/client/ApplicationConfiguration.java b/client/src/com/vaadin/client/ApplicationConfiguration.java index ecd957194d..da8f521799 100644 --- a/client/src/com/vaadin/client/ApplicationConfiguration.java +++ b/client/src/com/vaadin/client/ApplicationConfiguration.java @@ -610,6 +610,11 @@ public class ApplicationConfiguration implements EntryPoint { getLogger().log(Level.SEVERE, e.getMessage(), e); } }); + + if (isProductionMode()) { + // Disable all logging if in production mode + Logger.getLogger("").setLevel(Level.OFF); + } } Profiler.leave("ApplicationConfiguration.onModuleLoad"); @@ -649,7 +654,11 @@ public class ApplicationConfiguration implements EntryPoint { /** * Checks if client side is in debug mode. Practically this is invoked by - * adding ?debug parameter to URI. + * adding ?debug parameter to URI. Please note that debug mode is always + * disabled if production mode is enabled, but disabling production mode + * does not automatically enable debug mode. + * + * @see #isProductionMode() * * @return true if client side is currently been debugged */ @@ -658,6 +667,19 @@ public class ApplicationConfiguration implements EntryPoint { && Window.Location.getParameter("debug") != null; } + /** + * Checks if production mode is enabled. When production mode is enabled, + * client-side logging is disabled. There may also be other performance + * optimizations. + * + * @since 7.1.2 + * @return true if production mode is enabled; otherwise + * false. + */ + public static boolean isProductionMode() { + return !isDebugAvailable(); + } + private native static boolean isDebugAvailable() /*-{ if($wnd.vaadin.debug) { -- cgit v1.2.3