http://bugzilla.slf4j.org/show_bug.cgi?id=132
Robert Elliot <rob...@teviotia.co.uk> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #58|Second patch with better |Inlined - note, cannot use description|implementation |Collections.list(Enumeration | |e) as it is not in Java 1.3. --- Comment #4 from Robert Elliot <rob...@teviotia.co.uk> 2009-05-13 22:30:16 --- (From update of attachment 58) ><HTML><HEAD/><BODY linkifying="false" linkified="0" >linkifytime="12"><PRE>Index: src/main/java/org/slf4j/LoggerFactory.java >=================================================================== >--- src/main/java/org/slf4j/LoggerFactory.java (revision 1331) >+++ src/main/java/org/slf4j/LoggerFactory.java (working copy) >@@ -24,8 +24,14 @@ > > package org.slf4j; > >+import java.io.File; >+import java.io.IOException; >+import java.net.URL; >+import java.util.ArrayList; > import java.util.Arrays; >+import java.util.Enumeration; > import java.util.List; >+import java.util.zip.ZipFile; > > import org.slf4j.helpers.SubstituteLoggerFactory; > import org.slf4j.helpers.Util; >@@ -105,6 +111,25 @@ > private final static void performInitialization() { > bind(); > versionSanityCheck(); >+ onlyOneImplementationSanityCheck(); >+ } >+ >+ private static String staticLoggerBinderPath = >StaticLoggerBinder.class.getName().replace('.', File.separatorChar) + ".class"; >+ >+ private static void onlyOneImplementationSanityCheck() { >+ try { >+ Enumeration paths = >LoggerFactory.class.getClassLoader().getResources(staticLoggerBinderPath); >+ List implementations = new ArrayList(); >+ while (paths.hasMoreElements()) { >+ implementations.add(paths.nextElement()); >+ } >+ if (implementations.size() > 1) { >+ throw new IllegalStateException("ClassPath contains more than one >SLF4J implementation: " + implementations); >+ } >+ } catch (IOException ioe) { >+ Util.reportFailure("Error getting resources from path", ioe); >+ } > } > > private final static void bind() { -- Configure bugmail: http://bugzilla.slf4j.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. _______________________________________________ dev mailing list dev@slf4j.org http://www.slf4j.org/mailman/listinfo/dev