Author: seb
Date: Wed Feb 21 16:47:06 2007
New Revision: 740

Added:
   slf4j/trunk/slf4j-api/src/main/java/org/slf4j/MarkerFactory.java
   slf4j/trunk/slf4j-api/src/main/java/org/slf4j/impl/StaticMarkerBinder.java
Removed:
   slf4j/trunk/slf4j-jcl/src/main/java/org/slf4j/MarkerFactory.java
   slf4j/trunk/slf4j-jdk14/src/main/java/org/slf4j/MarkerFactory.java
   slf4j/trunk/slf4j-log4j12/src/main/java/org/slf4j/MarkerFactory.java
   slf4j/trunk/slf4j-nop/src/main/java/org/slf4j/MarkerFactory.java
Modified:
   slf4j/trunk/slf4j-api/pom.xml

Log:
Moved the MarkerFactory to the slf4j-api module

Modified: slf4j/trunk/slf4j-api/pom.xml
==============================================================================
--- slf4j/trunk/slf4j-api/pom.xml       (original)
+++ slf4j/trunk/slf4j-api/pom.xml       Wed Feb 21 16:47:06 2007
@@ -67,7 +67,7 @@
         </executions>
         <configuration>
           <tasks>
-            <echo>Removing slf4j-api's dummy StaticLoggerBinder</echo>
+            <echo>Removing slf4j-api's dummy StaticLoggerBinder and 
StaticMarkerBinder</echo>
             <delete dir="target/classes/org/slf4j/impl"/>
           </tasks>
         </configuration>

Added: slf4j/trunk/slf4j-api/src/main/java/org/slf4j/MarkerFactory.java
==============================================================================
--- (empty file)
+++ slf4j/trunk/slf4j-api/src/main/java/org/slf4j/MarkerFactory.java    Wed Feb 
21 16:47:06 2007
@@ -0,0 +1,89 @@
+/*
+ * Copyright (c) 2004-2005 SLF4J.ORG
+ *
+ * All rights reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining
+ * a copy of this software and associated documentation files (the
+ * "Software"), to  deal in  the Software without  restriction, including
+ * without limitation  the rights to  use, copy, modify,  merge, publish,
+ * distribute, and/or sell copies of  the Software, and to permit persons
+ * to whom  the Software is furnished  to do so, provided  that the above
+ * copyright notice(s) and this permission notice appear in all copies of
+ * the  Software and  that both  the above  copyright notice(s)  and this
+ * permission notice appear in supporting documentation.
+ *
+ * THE  SOFTWARE IS  PROVIDED  "AS  IS", WITHOUT  WARRANTY  OF ANY  KIND,
+ * EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR  A PARTICULAR PURPOSE AND NONINFRINGEMENT
+ * OF  THIRD PARTY  RIGHTS. IN  NO EVENT  SHALL THE  COPYRIGHT  HOLDER OR
+ * HOLDERS  INCLUDED IN  THIS  NOTICE BE  LIABLE  FOR ANY  CLAIM, OR  ANY
+ * SPECIAL INDIRECT  OR CONSEQUENTIAL DAMAGES, OR  ANY DAMAGES WHATSOEVER
+ * RESULTING FROM LOSS  OF USE, DATA OR PROFITS, WHETHER  IN AN ACTION OF
+ * CONTRACT, NEGLIGENCE  OR OTHER TORTIOUS  ACTION, ARISING OUT OF  OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ * Except as  contained in  this notice, the  name of a  copyright holder
+ * shall not be used in advertising or otherwise to promote the sale, use
+ * or other dealings in this Software without prior written authorization
+ * of the copyright holder.
+ *
+ */
+package org.slf4j;
+
+import org.slf4j.helpers.Util;
+import org.slf4j.impl.StaticMarkerBinder;
+
+/**
+ * MarkerFactory is a utility class producing [EMAIL PROTECTED] Marker} 
instances as
+ * appropriate for the logging system currently in use.
+ * 
+ * <p>
+ * This class is essentially implemented as a wrapper around an
+ * [EMAIL PROTECTED] IMarkerFactory} instance bound at compile time.
+ * 
+ * <p>
+ * Please note that all methods in this class are static.
+ * 
+ * @author Ceki G&uuml;lc&uuml;
+ */
+public class MarkerFactory {
+  static IMarkerFactory markerFactory;
+
+  private MarkerFactory() {
+  }
+
+  static {
+    try {
+      markerFactory = StaticMarkerBinder.SINGLETON.getMarkerFactory();
+    } catch (Exception e) {
+      // we should never get here
+      Util.reportFailure("Could not instantiate instance of class ["
+          + StaticMarkerBinder.SINGLETON.getMarkerFactoryClassStr() + "]", e);
+    }
+  }
+
+  /**
+   * Return a Marker instance as specified by the name parameter using the
+   * previously bound [EMAIL PROTECTED] IMarkerFactory}instance.
+   * 
+   * @param name
+   *          The name of the [EMAIL PROTECTED] Marker} object to return.
+   * @return marker
+   */
+  public static Marker getMarker(String name) {
+    return markerFactory.getMarker(name);
+  }
+
+  /**
+   * Return the [EMAIL PROTECTED] IMarkerFactory}instance in use.
+   * 
+   * <p>The IMarkerFactory instance is usually bound with this class at 
+   * compile time.
+   * 
+   * @return the IMarkerFactory instance in use
+   */
+  public static IMarkerFactory getIMarkerFactory() {
+    return markerFactory;
+  }
+}
\ No newline at end of file

Added: 
slf4j/trunk/slf4j-api/src/main/java/org/slf4j/impl/StaticMarkerBinder.java
==============================================================================
--- (empty file)
+++ slf4j/trunk/slf4j-api/src/main/java/org/slf4j/impl/StaticMarkerBinder.java  
Wed Feb 21 16:47:06 2007
@@ -0,0 +1,77 @@
+/*
+ * Copyright (c) 2004-2005 SLF4J.ORG
+ * Copyright (c) 2004-2005 QOS.ch
+ *
+ * All rights reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining
+ * a copy of this software and associated documentation files (the
+ * "Software"), to  deal in  the Software without  restriction, including
+ * without limitation  the rights to  use, copy, modify,  merge, publish,
+ * distribute, and/or sell copies of  the Software, and to permit persons
+ * to whom  the Software is furnished  to do so, provided  that the above
+ * copyright notice(s) and this permission notice appear in all copies of
+ * the  Software and  that both  the above  copyright notice(s)  and this
+ * permission notice appear in supporting documentation.
+ *
+ * THE  SOFTWARE IS  PROVIDED  "AS  IS", WITHOUT  WARRANTY  OF ANY  KIND,
+ * EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR  A PARTICULAR PURPOSE AND NONINFRINGEMENT
+ * OF  THIRD PARTY  RIGHTS. IN  NO EVENT  SHALL THE  COPYRIGHT  HOLDER OR
+ * HOLDERS  INCLUDED IN  THIS  NOTICE BE  LIABLE  FOR ANY  CLAIM, OR  ANY
+ * SPECIAL INDIRECT  OR CONSEQUENTIAL DAMAGES, OR  ANY DAMAGES WHATSOEVER
+ * RESULTING FROM LOSS  OF USE, DATA OR PROFITS, WHETHER  IN AN ACTION OF
+ * CONTRACT, NEGLIGENCE  OR OTHER TORTIOUS  ACTION, ARISING OUT OF  OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ * Except as  contained in  this notice, the  name of a  copyright holder
+ * shall not be used in advertising or otherwise to promote the sale, use
+ * or other dealings in this Software without prior written authorization
+ * of the copyright holder.
+ *
+ */
+
+package org.slf4j.impl;
+
+import org.slf4j.IMarkerFactory;
+import org.slf4j.MarkerFactory;
+import org.slf4j.helpers.BasicMarkerFactory;
+import org.slf4j.spi.MarkerFactoryBinder;
+
+/**
+ * 
+ * The binding of [EMAIL PROTECTED] MarkerFactory} class with an actual 
instance of 
+ * [EMAIL PROTECTED] IMarkerFactory} is performed using information returned 
by this class. 
+ * 
+ * This class is meant to provide a dummy StaticMarkerBinder to the slf4j-api 
module.
+ * 
+ * @author Ceki G&uuml;lc&uuml;
+ */
+public class StaticMarkerBinder implements MarkerFactoryBinder {
+
+  /**
+   * The unique instance of this class.
+   */
+  public static final StaticMarkerBinder SINGLETON = new StaticMarkerBinder();
+
+  private StaticMarkerBinder() {
+  }
+  
+  /**
+   * Currently this method always returns an instance of 
+   * [EMAIL PROTECTED] BasicMarkerFactory}.
+   */
+  public IMarkerFactory getMarkerFactory() {
+    return null;
+  }
+  
+  /**
+   * Currently, this method returns the class name of
+   * [EMAIL PROTECTED] BasicMarkerFactory}.
+   */
+  public String getMarkerFactoryClassStr() {
+    return BasicMarkerFactory.class.getName();
+  }
+  
+  
+}
_______________________________________________
dev mailing list
[email protected]
http://www.slf4j.org/mailman/listinfo/dev

Reply via email to