You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2019/04/07 12:30:53 UTC

[lucene-solr] 13/34: Fix LoggerFactory to use default LogContext only when running tests

This is an automated email from the ASF dual-hosted git repository.

uschindler pushed a commit to branch jira/lucene-2562-luke-swing-3
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 78888f44b042555678de616287f7db46cf8b6433
Author: Uwe Schindler <us...@apache.org>
AuthorDate: Fri Apr 5 13:52:48 2019 +0200

    Fix LoggerFactory to use default LogContext only when running tests
---
 .../apache/lucene/luke/app/desktop/LukeMain.java   |  2 -
 .../org/apache/lucene/luke/util/LoggerFactory.java | 55 ++++++++++++----------
 2 files changed, 29 insertions(+), 28 deletions(-)

diff --git a/lucene/luke/src/java/org/apache/lucene/luke/app/desktop/LukeMain.java b/lucene/luke/src/java/org/apache/lucene/luke/app/desktop/LukeMain.java
index 7926d94..4339ed0 100644
--- a/lucene/luke/src/java/org/apache/lucene/luke/app/desktop/LukeMain.java
+++ b/lucene/luke/src/java/org/apache/lucene/luke/app/desktop/LukeMain.java
@@ -71,8 +71,6 @@ public class LukeMain {
   }
 
   public static void main(String[] args) throws Exception {
-    LoggerFactory.initializeContext();
-
     String lookAndFeelClassName = UIManager.getSystemLookAndFeelClassName();
     if (!lookAndFeelClassName.contains("AquaLookAndFeel") && !lookAndFeelClassName.contains("PlasticXPLookAndFeel")) {
       // may be running on linux platform
diff --git a/lucene/luke/src/java/org/apache/lucene/luke/util/LoggerFactory.java b/lucene/luke/src/java/org/apache/lucene/luke/util/LoggerFactory.java
index 23fcefe..ff7e7e4 100644
--- a/lucene/luke/src/java/org/apache/lucene/luke/util/LoggerFactory.java
+++ b/lucene/luke/src/java/org/apache/lucene/luke/util/LoggerFactory.java
@@ -34,38 +34,41 @@ import org.apache.lucene.luke.app.desktop.util.TextAreaAppender;
  */
 public class LoggerFactory {
 
-  private static LoggerContext context = LoggerContext.getContext();
+  private static final LoggerContext context;
+  static {
+    if (System.getProperty("tests.LUCENE_VERSION") != null) {
+      context= LoggerContext.getContext();
+    } else {
+      ConfigurationBuilder<BuiltConfiguration> builder = ConfigurationBuilderFactory.newConfigurationBuilder();
+      builder.add(builder.newRootLogger(Level.INFO));
+      context = Configurator.initialize(builder.build());
 
-  public static Logger getLogger(Class<?> clazz) {
-    return context.getLogger(clazz.getName());
-  }
-
-  public synchronized static void initializeContext() {
-    ConfigurationBuilder<BuiltConfiguration> builder = ConfigurationBuilderFactory.newConfigurationBuilder();
-    builder.add(builder.newRootLogger(Level.INFO));
-    context = Configurator.initialize(builder.build());
+      PatternLayout layout = PatternLayout.newBuilder()
+          .withPattern("[%d{ISO8601}] %5p (%F:%L) - %m%n")
+          .build();
 
-    PatternLayout layout = PatternLayout.newBuilder()
-        .withPattern("[%d{ISO8601}] %5p (%F:%L) - %m%n")
-        .build();
+      Appender fileAppender = FileAppender.newBuilder()
+          .setName("File")
+          .setLayout(layout)
+          .withFileName(System.getProperty("user.home") + "/.luke.d/luke.log")
+          .withAppend(false)
+            .build();
+      fileAppender.start();
 
-    Appender fileAppender = FileAppender.newBuilder()
-        .setName("File")
-        .setLayout(layout)
-        .withFileName(System.getProperty("user.home") + "/.luke.d/luke.log")
-        .withAppend(false)
+      Appender textAreaAppender = TextAreaAppender.newBuilder()
+          .setName("TextArea")
+          .setLayout(layout)
           .build();
-    fileAppender.start();
+      textAreaAppender.start();
 
-    Appender textAreaAppender = TextAreaAppender.newBuilder()
-        .setName("TextArea")
-        .setLayout(layout)
-        .build();
-    textAreaAppender.start();
+      context.getRootLogger().addAppender(fileAppender);
+      context.getRootLogger().addAppender(textAreaAppender);
+      context.updateLoggers();
+    }
+  }
 
-    context.getRootLogger().addAppender(fileAppender);
-    context.getRootLogger().addAppender(textAreaAppender);
-    context.updateLoggers();
+  public static Logger getLogger(Class<?> clazz) {
+    return context.getLogger(clazz.getName());
   }
 
 }