[jboss-svn-commits] JBoss Common SVN: r3398 - common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Jul 29 17:17:04 EDT 2009


Author: david.lloyd at jboss.com
Date: 2009-07-29 17:17:04 -0400 (Wed, 29 Jul 2009)
New Revision: 3398

Modified:
   common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPlugin.java
   common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPluginInstance.java
Log:
Refactor to reuse logger instances always and complete i18n support for those logger backends which support it

Modified: common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPlugin.java
===================================================================
--- common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPlugin.java	2009-07-28 23:54:07 UTC (rev 3397)
+++ common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPlugin.java	2009-07-29 21:17:04 UTC (rev 3398)
@@ -22,12 +22,17 @@
 
 package org.jboss.logging.jdk;
 
-import org.jboss.logging.*;
+import org.jboss.logging.LoggerPlugin;
+import org.jboss.logging.LoggerPluginInstance;
+import org.jboss.logging.MDCProvider;
+import org.jboss.logging.MDCSupport;
+import org.jboss.logging.NDCProvider;
+import org.jboss.logging.NDCSupport;
 
 /**
  *
  */
-public class JDK14LoggerPlugin implements LoggerPlugin {
+public class JDK14LoggerPlugin implements LoggerPlugin, NDCSupport, MDCSupport {
    private final MDCProvider mdcProvider;
    private final NDCProvider ndcProvider;
 
@@ -36,8 +41,8 @@
       ndcProvider = new JDKNDCProvider();
    }
 
-   public LoggerPluginInstance getInstance(String name) {
-      return new JDK14LoggerPluginInstance(name);
+   public LoggerPluginInstance getInstance(String name, String resourceBundleName) {
+      return new JDK14LoggerPluginInstance(name, resourceBundleName);
    }
 
    public MDCProvider getMDCProvider() {

Modified: common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPluginInstance.java
===================================================================
--- common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPluginInstance.java	2009-07-28 23:54:07 UTC (rev 3397)
+++ common-logging-jdk/trunk/src/main/java/org/jboss/logging/jdk/JDK14LoggerPluginInstance.java	2009-07-29 21:17:04 UTC (rev 3398)
@@ -1,8 +1,8 @@
 /*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
  *
  * This is free software; you can redistribute it and/or modify it
  * under the terms of the GNU Lesser General Public License as
@@ -22,90 +22,66 @@
 
 package org.jboss.logging.jdk;
 
-import org.jboss.logging.*;
+import org.jboss.logging.AbstractLoggerPluginInstance;
+import org.jboss.logging.LoggerPluginInstance;
 
 import java.util.logging.Level;
 import java.util.logging.LogRecord;
 import java.util.logging.Logger;
 
-/** An example LoggerPlugin which uses the JDK java.util.logging framework.
+import java.util.Map;
+import java.util.EnumMap;
+
+/**
+ * An example LoggerPlugin which uses the JDK java.util.logging framework.
  *
  * @author Scott.Stark at jboss.org
  * @author David M. Lloyd
  * @version $Revison:$
  */
-public class JDK14LoggerPluginInstance extends AbstractLoggerPluginInstance implements LoggerPluginInstance
-{
-   private Logger log;
-   private String name;
+public class JDK14LoggerPluginInstance extends AbstractLoggerPluginInstance implements LoggerPluginInstance {
 
-   public JDK14LoggerPluginInstance(String name) {
-      this.name = name;
-   }
+    @SuppressWarnings({ "NonConstantLogger" })
+    private final Logger log;
+    private final String name;
 
-   public void init(String name)
-   {
-      this.name = name;
-      log = Logger.getLogger(name);
-   }
+    public JDK14LoggerPluginInstance(final String name, final String resourceBundleName) {
+        super(name, resourceBundleName);
+        this.name = name;
+        log = resourceBundleName == null ? Logger.getLogger(name) : Logger.getLogger(name, resourceBundleName);
+    }
 
-   private void doLog(Level level, Object message, Object[] params, Throwable t) {
-      LogRecord record = new LogRecord(level, message.toString());
-      record.setParameters(params);
-      record.setLoggerName(name);
-      record.setThrown(t);
-      record.setSourceMethodName(null); // prevent expensive, yet pointless, lookup
-      log.log(record);
-   }
+    private static final Map<org.jboss.logging.Logger.Level, Level> LEVEL_MAP;
 
-   public boolean isTraceEnabled()
-   {
-      return log.isLoggable(JBossLevel.TRACE);
-   }
+    static {
+        final EnumMap<org.jboss.logging.Logger.Level, Level> map = new EnumMap<org.jboss.logging.Logger.Level, Level>(org.jboss.logging.Logger.Level.class);
+        map.put(org.jboss.logging.Logger.Level.TRACE, JBossLevel.TRACE);
+        map.put(org.jboss.logging.Logger.Level.DEBUG, JBossLevel.DEBUG);
+        map.put(org.jboss.logging.Logger.Level.INFO, JBossLevel.INFO);
+        map.put(org.jboss.logging.Logger.Level.WARN, JBossLevel.WARN);
+        map.put(org.jboss.logging.Logger.Level.ERROR, JBossLevel.ERROR);
+        map.put(org.jboss.logging.Logger.Level.FATAL, JBossLevel.FATAL);
+        LEVEL_MAP = map;
+    }
 
-   public void trace(String loggerFcqn, Object message, Object[] params, Throwable t) {
-      doLog(JBossLevel.TRACE, message, params, t);
-   }
+    public boolean isEnabled(final org.jboss.logging.Logger.Level level) {
+        return log.isLoggable(LEVEL_MAP.get(level));
+    }
 
-   @Deprecated
-   public boolean isDebugEnabled()
-   {
-      return log.isLoggable(JBossLevel.DEBUG);
-   }
+    public void log(final org.jboss.logging.Logger.Level level, final String loggerFqcn, final Object message, final Object[] params, final Throwable t) {
+        LogRecord record = new LogRecord(LEVEL_MAP.get(level), String.valueOf(message));
+        record.setParameters(params);
+        record.setLoggerName(name);
+        record.setThrown(t);
+        record.setSourceMethodName(null); // prevent expensive, yet guaranteed to be incorrect lookup
+        log.log(record);
+    }
 
-   public void debug(String loggerFcqn, Object message, Object[] params, Throwable t) {
-      doLog(JBossLevel.DEBUG, message, params, t);
-   }
-
-   @Deprecated
-   public boolean isInfoEnabled()
-   {
-      return log.isLoggable(JBossLevel.INFO);
-   }
-
-   public void info(String loggerFcqn, Object message, Object[] params, Throwable t) {
-      doLog(JBossLevel.INFO, message, params, t);
-   }
-
-   public void warn(String loggerFcqn, Object message, Object[] params, Throwable t) {
-      doLog(JBossLevel.WARN, message, params, t);
-   }
-
-   public void error(String loggerFcqn, Object message, Object[] params, Throwable t) {
-      doLog(JBossLevel.ERROR, message, params, t);
-   }
-
-   public void fatal(String loggerFcqn, Object message, Object[] params, Throwable t) {
-      doLog(JBossLevel.FATAL, message, params, t);
-   }
-
-   public NDCProvider getNDCProvider()
-   {
-      return new JDKNDCProvider();
-   }
-
-   public MDCProvider getMDCProvider()
-   {
-      return new JDKMDCProvider();
-   }
+    protected void log(final org.jboss.logging.Logger.Level level, final String loggerFqcn, final String message, final Throwable t) {
+        LogRecord record = new LogRecord(LEVEL_MAP.get(level), message);
+        record.setLoggerName(name);
+        record.setThrown(t);
+        record.setSourceMethodName(null); // prevent expensive, yet guaranteed to be incorrect lookup
+        log.log(record);
+    }
 }



More information about the jboss-svn-commits mailing list