Class LogSource
- java.lang.Object
-
- org.apache.commons.logging.LogSource
-
public class LogSource extends java.lang.Object
Deprecated.UseLogFactory
instead - The default factory implementation performs exactly the same algorithm as this class didFactory for creatingLog
instances. Applications should call themakeNewLogInstance()
method to instantiate new instances of the configuredLog
implementation class.By default, calling
getInstance()
will use the following algorithm:- If Log4J is available, return an instance of
org.apache.commons.logging.impl.Log4JLogger
. - If JDK 1.4 or later is available, return an instance of
org.apache.commons.logging.impl.Jdk14Logger
. - Otherwise, return an instance of
org.apache.commons.logging.impl.NoOpLog
.
You can change the default behavior in one of two ways:
- On the startup command line, set the system property
org.apache.commons.logging.log
to the name of theorg.apache.commons.logging.Log
implementation class you want to use. - At runtime, call
LogSource.setLogImplementation()
.
- Version:
- $Id: LogSource.java 1432675 2013-01-13 17:53:30Z tn $
- If Log4J is available, return an instance of
-
-
Field Summary
Fields Modifier and Type Field Description protected static boolean
jdk14IsAvailable
Deprecated.Is JDK 1.4 logging availableprotected static boolean
log4jIsAvailable
Deprecated.Is log4j available (in the current classpath)protected static java.lang.reflect.Constructor
logImplctor
Deprecated.Constructor for current log classprotected static java.util.Hashtable
logs
Deprecated.
-
Constructor Summary
Constructors Modifier Constructor Description private
LogSource()
Deprecated.Don't allow others to create instances.
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static Log
getInstance(java.lang.Class clazz)
Deprecated.Get aLog
instance by class.static Log
getInstance(java.lang.String name)
Deprecated.Get aLog
instance by class name.static java.lang.String[]
getLogNames()
Deprecated.Returns aString
array containing the names of all logs known to me.static Log
makeNewLogInstance(java.lang.String name)
Deprecated.Create a newLog
implementation, based on the given name.static void
setLogImplementation(java.lang.Class logclass)
Deprecated.Set the log implementation/log implementation factory by class.static void
setLogImplementation(java.lang.String classname)
Deprecated.Set the log implementation/log implementation factory by the name of the class.
-
-
-
Field Detail
-
logs
protected static java.util.Hashtable logs
Deprecated.
-
log4jIsAvailable
protected static boolean log4jIsAvailable
Deprecated.Is log4j available (in the current classpath)
-
jdk14IsAvailable
protected static boolean jdk14IsAvailable
Deprecated.Is JDK 1.4 logging available
-
logImplctor
protected static java.lang.reflect.Constructor logImplctor
Deprecated.Constructor for current log class
-
-
Method Detail
-
setLogImplementation
public static void setLogImplementation(java.lang.String classname) throws java.lang.LinkageError, java.lang.NoSuchMethodException, java.lang.SecurityException, java.lang.ClassNotFoundException
Deprecated.Set the log implementation/log implementation factory by the name of the class. The given class must implementLog
, and provide a constructor that takes a singleString
argument (containing the name of the log).- Throws:
java.lang.LinkageError
java.lang.NoSuchMethodException
java.lang.SecurityException
java.lang.ClassNotFoundException
-
setLogImplementation
public static void setLogImplementation(java.lang.Class logclass) throws java.lang.LinkageError, java.lang.ExceptionInInitializerError, java.lang.NoSuchMethodException, java.lang.SecurityException
Deprecated.Set the log implementation/log implementation factory by class. The given class must implementLog
, and provide a constructor that takes a singleString
argument (containing the name of the log).- Throws:
java.lang.LinkageError
java.lang.ExceptionInInitializerError
java.lang.NoSuchMethodException
java.lang.SecurityException
-
getInstance
public static Log getInstance(java.lang.String name)
Deprecated.Get aLog
instance by class name.
-
getInstance
public static Log getInstance(java.lang.Class clazz)
Deprecated.Get aLog
instance by class.
-
makeNewLogInstance
public static Log makeNewLogInstance(java.lang.String name)
Deprecated.Create a newLog
implementation, based on the given name.The specific
Log
implementation returned is determined by the value of the org.apache.commons.logging.log property. The value of org.apache.commons.logging.log may be set to the fully specified name of a class that implements theLog
interface. This class must also have a public constructor that takes a singleString
argument (containing the name of theLog
to be constructed.When org.apache.commons.logging.log is not set, or when no corresponding class can be found, this method will return a Log4JLogger if the log4j Logger class is available in the
LogSource
's classpath, or a Jdk14Logger if we are on a JDK 1.4 or later system, or NoOpLog if neither of the above conditions is true.- Parameters:
name
- the log name (or category)
-
getLogNames
public static java.lang.String[] getLogNames()
Deprecated.Returns aString
array containing the names of all logs known to me.
-
-