Author: ceki
Date: Sat Nov  4 22:03:33 2006
New Revision: 659

Added:
   slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/package.html
Modified:
   
slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Log4jLoggerFactory.java
   slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Logger.java
   
slf4j/trunk/log4j-over-slf4j/src/test/java/org/apache/log4j/InvokeLog4jTest.java
   slf4j/trunk/pom.xml
   
slf4j/trunk/slf4j-log4j12/src/main/java/org/slf4j/impl/Log4jLoggerAdapter.java
   slf4j/trunk/slf4j-site/src/site/site.xml
   slf4j/trunk/slf4j-site/src/site/xdocs/download.xml
   slf4j/trunk/slf4j-site/src/site/xdocs/news.xml

Log:
- javadoc improvements
- minor fixes in preparation for the 1.1.0-RC0 release
- the resulting assembly should be named after $aversion not ${parent.version}
- o.a.log4j.Log4jLoggerFactory is now accessible to the same package (instead 
of public)

Modified: 
slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Log4jLoggerFactory.java
==============================================================================
--- 
slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Log4jLoggerFactory.java
 (original)
+++ 
slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Log4jLoggerFactory.java
 Sat Nov  4 22:03:33 2006
@@ -27,7 +27,7 @@
  * 
  * @author Sébastien Pennec
  */
-public class Log4jLoggerFactory {
+class Log4jLoggerFactory {
 
   private static Hashtable log4jLoggers = new Hashtable();
 

Modified: 
slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Logger.java
==============================================================================
--- slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Logger.java     
(original)
+++ slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/Logger.java     
Sat Nov  4 22:03:33 2006
@@ -12,169 +12,196 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- */ 
+ */
 
 package org.apache.log4j;
 
 import org.slf4j.LoggerFactory;
+import org.slf4j.Marker;
+import org.slf4j.MarkerFactory;
 
 /**
  * <p>
- * This class is a re-implementation of the org.apache.log4j.Logger class. It
- * uses a org.slf4j.Logger object to delegate the actual logging to a
- * user-chosen implementation. 
+ * This class is a minimal implementation of the origianl 
org.apache.log4j.Logger class
+ * delegating all calls to a [EMAIL PROTECTED] org.slf4j.Logger} instance, 
which in turn
+ * will delegate to a final logging system chosen by the user..
  * </p>
+ * 
  * <p>
- * Its printing methods that are shared with the
- * org.slf4j.Logger interface redirect the logging requests to the
- * org.slf4j.Logger. Those methods are debug, info, warn and error. However, 
the
- * methods that are now present in the org.slf4j.Logger interface are not
- * implemented. Those are the trace and fatal methods.
- * </p>
+ * Log4j's <code>debug()</code>, <code>info()</code>, <code>warn()</code>, 
+ * <code>error()</code> printing methods are directly mapped to
+ * their SLF4J equivalents. Log4j's <code>trace()</code> printing method is 
+ * mapped to SLF4J's <code>debug()</code> method with a TRACE marker. 
+ * Log4j's <code>fatal()</code> printing method is mapped to SLF4J's 
+ * <code>error()</code> method with a FATAL marker.
  * 
  * @author S&eacute;bastien Pennec
+ * @author Ceki G&uuml;lc&uuml;
  */
 public class Logger {
 
-       private String name;
+  private String name;
 
-       private org.slf4j.Logger lbLogger;
+  private org.slf4j.Logger lbLogger;
 
-       protected Logger(String name) {
-               this.name = name;
-               lbLogger = LoggerFactory.getLogger(name);
-       }
-
-       public static Logger getLogger(String name) {
-               return Log4jLoggerFactory.getLogger(name);
-       }
-
-       public static Logger getLogger(Class clazz) {
-               return getLogger(clazz.getName());
-       }
-
-       public static Logger getRootLogger() {
-               return getLogger("root");
-       }
-
-       public String getName() {
-               return name;
-       }
-
-       public boolean isDebugEnabled() {
-               return lbLogger.isDebugEnabled();
-       }
-
-       public void debug(Object message) {
-               /**
-                * In the debug(Object message) method, as well as other 
printing methods,
-                * we consider that the message passed as a parameter is a 
String. Object
-                * that usually need an ObjectRenderer cannot be sent to these 
methods.
-                */
-               lbLogger.debug((String) message);
-       }
-
-       public void debug(Object message, Throwable t) {
-               lbLogger.debug((String) message, t);
-       }
-
-       public void debug(Object messagePattern, Object arg) {
-               lbLogger.debug((String) messagePattern, arg);
-       }
-
-       public void debug(Object messagePattern, Object arg1, Object arg2) {
-               lbLogger.debug((String) messagePattern, arg1, arg2);
-       }
-
-       public boolean isInfoEnabled() {
-               return lbLogger.isInfoEnabled();
-       }
-
-       public void info(Object message) {
-               lbLogger.info((String) message);
-       }
-
-       public void info(Object message, Throwable t) {
-               lbLogger.info((String) message, t);
-       }
-
-       public void info(Object messagePattern, Object arg) {
-               lbLogger.info((String) messagePattern, arg);
-       }
-
-       public void info(Object messagePattern, Object arg1, Object arg2) {
-               lbLogger.info((String) messagePattern, arg1, arg2);
-       }
-
-       public boolean isWarnEnabled() {
-               return lbLogger.isWarnEnabled();
-       }
-
-       public void warn(Object message) {
-               lbLogger.warn((String) message);
-       }
-
-       public void warn(Object message, Throwable t) {
-               lbLogger.warn((String) message, t);
-       }
-
-       public void warn(Object messagePattern, Object arg) {
-               lbLogger.warn((String) messagePattern, arg);
-       }
-
-       public void warn(Object messagePattern, Object arg1, Object arg2) {
-               lbLogger.warn((String) messagePattern, arg1, arg2);
-       }
-
-       public boolean isErrorEnabled() {
-               return lbLogger.isErrorEnabled();
-       }
-
-       public void error(Object message) {
-               lbLogger.error((String) message);
-       }
-
-       public void error(Object message, Throwable t) {
-               lbLogger.error((String) message, t);
-       }
-
-       public void error(Object messagePattern, Object arg) {
-               lbLogger.error((String) messagePattern, arg);
-       }
-
-       public void error(Object messagePattern, Object arg1, Object arg2) {
-               lbLogger.error((String) messagePattern, arg1, arg2);
-       }
-
-       // public void log(String fqcn, Level level, String message, Throwable 
t) {
-       // //FIXME improve + complete impl.
-       // Logger logger = getLogger(fqcn);
-       // if (Level.DEBUG.equals(level)) {
-       // logger.debug(message, t);
-       // } else if (Level.INFO.equals(level)) {
-       // logger.info(message, t);
-       // } else if (Level.WARN.equals(level)) {
-       // logger.info(message, t);
-       // } else if (Level.ERROR.equals(level)) {
-       // logger.info(message, t);
-       // }
-       // }
-       //  
-       // public boolean isEnabledFor(Level level) {
-       // //FIXME improve + complete impl.
-       // if(Level.DEBUG.equals(level) && lbLogger.isDebugEnabled()) {
-       // return true;
-       // }
-       // if(Level.INFO.equals(level) && lbLogger.isInfoEnabled()) {
-       // return true;
-       // }
-       // if(Level.WARN.equals(level) && lbLogger.isWarnEnabled()) {
-       // return true;
-       // }
-       // if(Level.ERROR.equals(level) && lbLogger.isErrorEnabled()) {
-       // return true;
-       // }
-       // return false;
-       // }
+  private static Marker TRACE_MARKER = MarkerFactory.getMarker("TRACE");
+  private static Marker FATAL_MARKER = MarkerFactory.getMarker("FATAL");
 
+  Logger(String name) {
+    this.name = name;
+    lbLogger = LoggerFactory.getLogger(name);
+  }
+
+  public static Logger getLogger(String name) {
+    return Log4jLoggerFactory.getLogger(name);
+  }
+
+  public static Logger getLogger(Class clazz) {
+    return getLogger(clazz.getName());
+  }
+
+  /**
+   * Does the obvious.
+   * @return
+   */
+  public static Logger getRootLogger() {
+    return getLogger("root");
+  }
+
+  /**
+   * Returns the obvious.
+   * @return
+   */
+  public String getName() {
+    return name;
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#isDebugEnabled} method of 
the SLF4J API, 
+   * in addition, the call is marked with a marker named "TRACE".
+   */
+  public boolean isTraceEnabled() {
+    return lbLogger.isDebugEnabled(TRACE_MARKER);
+  }
+  
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#isDebugEnabled} method of 
the SLF4J API.
+   */
+  public boolean isDebugEnabled() {
+    return lbLogger.isDebugEnabled();
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#isInfoEnabled} method of 
the SLF4J API.
+   */
+  public boolean isInfoEnabled() {
+    return lbLogger.isInfoEnabled();
+  }
+  
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#isWarnEnabled} method of 
the SLF4J API.
+   */
+  public boolean isWarnEnabled() {
+    return lbLogger.isWarnEnabled();
+  }
+  
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#isErrorEnabled} method of 
the SLF4J API.
+   */
+  public boolean isErrorEnabled() {
+    return lbLogger.isErrorEnabled();
+  }
+
+  
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#debug(String)} method of 
the SLF4J API,
+   * in addition, the call is marked with a marker named "TRACE".
+   */
+  public void trace(Object message) {
+    lbLogger.debug(TRACE_MARKER, (String) message);
+  }
+  
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#debug(String,Throwable)} 
method of the 
+   * SLF4J API, in addition, the call is marked with a marker named "TRACE".
+   */
+  public void trace(Object message, Throwable t) {
+    lbLogger.debug(TRACE_MARKER, (String) message, t);
+  }
+  
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#debug(String)} method of 
the SLF4J API.
+   */
+  public void debug(Object message) {
+    // casting to String as SLF4J only accepts String instances, not Object 
+    // instances.
+    lbLogger.debug((String) message);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#debug(String,Throwable)} 
method of the 
+   * SLF4J API.
+   */
+  public void debug(Object message, Throwable t) {
+    lbLogger.debug((String) message, t);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#info(String)} method of 
the SLF4J API.
+   */
+  public void info(Object message) {
+    lbLogger.info((String) message);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#info(String, Throwable)} 
method of the 
+   * SLF4J API.
+   */
+  public void info(Object message, Throwable t) {
+    lbLogger.info((String) message, t);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#warn(String)} method of 
the SLF4J API.
+   */
+  public void warn(Object message) {
+    lbLogger.warn((String) message);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#warn(String,Throwable)} 
method of the SLF4J API.
+   */
+  public void warn(Object message, Throwable t) {
+    lbLogger.warn((String) message, t);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#error(String)} method of 
the SLF4J API.
+   */
+  public void error(Object message) {
+    lbLogger.error((String) message);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#error(String,Throwable)} 
method of the SLF4J API.
+   */
+  public void error(Object message, Throwable t) {
+    lbLogger.error((String) message, t);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#error(String)} method of 
the 
+   * SLF4J API, in addition, the call is marked with a marker named "FATAL".
+   */
+  public void fatal(Object message) {
+    lbLogger.error(FATAL_MARKER, (String) message);
+  }
+
+  /**
+   * Delegates to [EMAIL PROTECTED] org.slf4j.Logger#error(String,Throwable)} 
method of the 
+   * SLF4J API, in addition, the call is marked with a marker named "FATAL".
+   */
+  public void fatal(Object message, Throwable t) {
+    lbLogger.error(FATAL_MARKER, (String) message, t);
+  }
 }

Added: slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/package.html
==============================================================================
--- (empty file)
+++ slf4j/trunk/log4j-over-slf4j/src/main/java/org/apache/log4j/package.html    
Sat Nov  4 22:03:33 2006
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+
+
+<html> 
+  <head>
+      <title></title>
+  </head>
+  
+
+  <body>
+  
+ <p>An rather minimal but sufficient implementation redirecting all
+ calls to a log4j logger to a SLF4J logger.</p>
+
+  </body> 
+</html>
+
+

Modified: 
slf4j/trunk/log4j-over-slf4j/src/test/java/org/apache/log4j/InvokeLog4jTest.java
==============================================================================
--- 
slf4j/trunk/log4j-over-slf4j/src/test/java/org/apache/log4j/InvokeLog4jTest.java
    (original)
+++ 
slf4j/trunk/log4j-over-slf4j/src/test/java/org/apache/log4j/InvokeLog4jTest.java
    Sat Nov  4 22:03:33 2006
@@ -41,12 +41,14 @@
  * that belongs to the log4j-over-slf4j package
  *
  * @author S&eacute;bastien Pennec
+ * @author Ceki G&uuml;lc&uuml;
  */
 public class InvokeLog4jTest extends TestCase {
 
   public void testIsEnabledAPI() {
     // assume that we are running over slf4j-simple
     Logger log = Logger.getLogger(InvokeLog4jTest.class.getName());
+    assertFalse(log.isTraceEnabled());
     assertFalse(log.isDebugEnabled());
     assertTrue(log.isInfoEnabled());
     assertTrue(log.isWarnEnabled());

Modified: slf4j/trunk/pom.xml
==============================================================================
--- slf4j/trunk/pom.xml (original)
+++ slf4j/trunk/pom.xml Sat Nov  4 22:03:33 2006
@@ -157,7 +157,7 @@
               src/main/assembly/source.xml
             </descriptor>
           </descriptors>
-                                       
<finalName>slf4j-${project.version}</finalName>
+                                       <finalName>slf4j-${aversion}</finalName>
                                        
<appendAssemblyId>false</appendAssemblyId>
                                        
<outputDirectory>target/site/dist/</outputDirectory>
                                </configuration>

Modified: 
slf4j/trunk/slf4j-log4j12/src/main/java/org/slf4j/impl/Log4jLoggerAdapter.java
==============================================================================
--- 
slf4j/trunk/slf4j-log4j12/src/main/java/org/slf4j/impl/Log4jLoggerAdapter.java  
    (original)
+++ 
slf4j/trunk/slf4j-log4j12/src/main/java/org/slf4j/impl/Log4jLoggerAdapter.java  
    Sat Nov  4 22:03:33 2006
@@ -42,7 +42,9 @@
  * A wrapper over [EMAIL PROTECTED] org.apache.log4j.Logger
  * org.apache.log4j.Logger} in conformance with the [EMAIL PROTECTED] Logger}
  * interface. Note that the logging levels mentioned in this class
- * refer to those defined in the [EMAIL PROTECTED] org.apache.log4j.Level} 
class.
+ * refer to those defined in the 
+ * <a 
href="http://logging.apache.org/log4j/docs/api/org/apache/log4j/Level.html";><code>org.apache.log4j.Level</code></a>
+ * class.
 
  * @author Ceki G&uuml;lc&uuml;
  */

Modified: slf4j/trunk/slf4j-site/src/site/site.xml
==============================================================================
--- slf4j/trunk/slf4j-site/src/site/site.xml    (original)
+++ slf4j/trunk/slf4j-site/src/site/site.xml    Sat Nov  4 22:03:33 2006
@@ -4,7 +4,7 @@
   <skin>
     <groupId>org.slf4j</groupId>
     <artifactId>slf4j-skin</artifactId>
-    <version>1.1.0</version>
+    <version>1.1.0-RC0</version>
   </skin>
   
   <publishDate position="navigation-bottom" format="dd-MM-yyyy"/>

Modified: slf4j/trunk/slf4j-site/src/site/xdocs/download.xml
==============================================================================
--- slf4j/trunk/slf4j-site/src/site/xdocs/download.xml  (original)
+++ slf4j/trunk/slf4j-site/src/site/xdocs/download.xml  Sat Nov  4 22:03:33 2006
@@ -11,29 +11,17 @@
 
   <h2>Latest official SLF4J version</h2>
 
-  <p>Download version 1.0.2 including <i>full source code</i>,
+  <p>Download version 1.1.0-RC0 including <i>full source code</i>,
   class files and documentation as
   </p>
 
   <ul>
-    <li><a href="dist/slf4j-1.0.2.tar.gz"><b>slf4j-1.0.2.tar.gz</b></a> </li>
-    <li><a href="dist/slf4j-1.0.2.zip"><b>slf4j-1.0.2.zip</b></a> </li>
+    <li><a 
href="dist/slf4j-1.1.0-RC0.tar.gz"><b>slf4j-1.1.0-RC0.tar.gz</b></a> </li>
+    <li><a href="dist/slf4j-1.1.0-RC0.zip"><b>slf4j-1.1.0-RC0.zip</b></a> </li>
     
   </ul>  
 
 
-  <h2>Current development version</h2>
-
-  <p>Download version 1.1.0-beta0 including <i>full source code</i>,
-  class files and documentation as
-  </p>
-
-  <ul>
-    <li><a 
href="dist/slf4j-1.1.0-beta0.tar.gz"><b>slf4j-1.1.0-beta0.tar.gz</b></a> </li>
-    <li><a href="dist/slf4j-1.1.0-beta0.zip"><b>slf4j-1.1.0-beta0.zip</b></a> 
</li>
-    
-  </ul>  
-
   <h2>Previous versions</h2>
   
   <p>Previous versions of SLF4J can be downloaded from the <A

Modified: slf4j/trunk/slf4j-site/src/site/xdocs/news.xml
==============================================================================
--- slf4j/trunk/slf4j-site/src/site/xdocs/news.xml      (original)
+++ slf4j/trunk/slf4j-site/src/site/xdocs/news.xml      Sat Nov  4 22:03:33 2006
@@ -19,15 +19,15 @@
 
   <h3>November 4th, 2006 - Release of SLF4J 1.1.0-RC0</h3>
 
-  <p>Given that release 1.1.0-beta0 consisted mainly of
-  packaging-related changes which seem to work well, this release is
-  marked as RC0.</p>
+  <p>This release consists of bug fixes. Moreover, since the major
+  packaging related changes in 1.1.0-beta0 seem to work well, this
+  release is marked as RC0.</p>
 
   <p>Fixed the JDK 1.5 dependency for the SLF4J build, as reported by
   Boris Unkel in <a
   href="http://bugzilla.slf4j.org/show_bug.cgi?id=28";>bug number
-  28</a>.  SLF4J now explicitly declares a dependency on JDK 1.4 in
-  its pom.xml file.
+  28</a>. SLF4J now explicitly declares a dependency on JDK 1.4 in its
+  pom.xml file.
   </p>
 
   <p>Fixed an incorrect reference to the logback project in slf4j-api
@@ -36,6 +36,13 @@
   29</a>.
   </p>
 
+  <p>Fixed a syncroisation problem in factories of almost all SLF4J
+  bindings. This bug was reported independenly by Howard M. Lewis Ship
+  and Boris Unkel in bug reports <a
+  href="http://bugzilla.slf4j.org/show_bug.cgi?id=26";>26</a> and
+  respectively <a
+  href="http://bugzilla.slf4j.org/show_bug.cgi?id=26";>27</a>.
+  </p>
 
   <hr noshade="noshade" size="1"/>
 
_______________________________________________
dev mailing list
[email protected]
http://www.slf4j.org/mailman/listinfo/dev

Reply via email to