Package org.apache.commons.logging
Class LogFactory
- java.lang.Object
-
- org.apache.commons.logging.LogFactory
-
public class LogFactory extends Object
This is an adaptation of the Jakarta Commons Logging API that returns a logger that does nothing.- Author:
- Alin Dreghiciu, Craig R. McClanahan, Costin Manolache, Richard A. Sitze
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ObjectgetAttribute(String name)Return the configuration attribute with the specified name (if any), ornullif there is no such attribute.String[]getAttributeNames()Return an array containing the names of all currently defined configuration attributes.static LogFactorygetFactory()LoggetInstance(Class clazz)Convenience method to derive a name from the specified class and callgetInstance(String)with it.LoggetInstance(String name)Construct (if necessary) and return aLoginstance, using the factory's current set of configuration attributes.static LoggetLog(Class clazz)Convenience method to return a named logger, without the application having to care about factories.static LoggetLog(String name)Convenience method to return a named logger, without the application having to care about factories.static voidrelease()Release any internal references to previously createdLoginstances returned by this factory.static voidrelease(ClassLoader classLoader)Release any internal references to previously createdLogFactoryinstances that have been associated with the specified class loader (if any), after calling the instance methodrelease()on each of them.static voidreleaseAll()Release any internal references to previously createdLogFactoryinstances, after calling the instance methodrelease()on each of them.voidremoveAttribute(String name)Remove any configuration attribute associated with the specified name.voidsetAttribute(String name, Object value)Set the configuration attribute with the specified name.
-
-
-
Method Detail
-
getFactory
public static LogFactory getFactory() throws LogConfigurationException
- Returns:
- the LogFactory instance to use.
- Throws:
LogConfigurationException- if the implementation class is not available or cannot be instantiated.
-
getLog
public static Log getLog(Class clazz) throws LogConfigurationException
Convenience method to return a named logger, without the application having to care about factories.- Parameters:
clazz- Class from which a log name will be derived- Returns:
- the Log instance to use for the class
- Throws:
LogConfigurationException- if a suitableLoginstance cannot be returned
-
getLog
public static Log getLog(String name) throws LogConfigurationException
Convenience method to return a named logger, without the application having to care about factories.- Parameters:
name- Logical name of theLoginstance to be returned (the meaning of this name is only known to the underlying logging implementation that is being wrapped)- Returns:
- the Log instance to use for the class of the given name
- Throws:
LogConfigurationException- if a suitableLoginstance cannot be returned
-
release
public static void release(ClassLoader classLoader)
Release any internal references to previously createdLogFactoryinstances that have been associated with the specified class loader (if any), after calling the instance methodrelease()on each of them.- Parameters:
classLoader- ClassLoader for which to release the LogFactory
-
releaseAll
public static void releaseAll()
Release any internal references to previously createdLogFactoryinstances, after calling the instance methodrelease()on each of them. This is useful in environments like servlet containers, which implement application reloading by throwing away a ClassLoader. Dangling references to objects in that class loader would prevent garbage collection.
-
getAttribute
public Object getAttribute(String name)
Return the configuration attribute with the specified name (if any), ornullif there is no such attribute.- Parameters:
name- Name of the attribute to return- Returns:
- always return null. This method is not supported in Pax Logging.
-
getAttributeNames
public String[] getAttributeNames()
Return an array containing the names of all currently defined configuration attributes. If there are no such attributes, a zero length array is returned.- Returns:
- always returns an emtpy String array. This method is not supported in Pax Logging.
-
getInstance
public Log getInstance(Class clazz) throws LogConfigurationException
Convenience method to derive a name from the specified class and callgetInstance(String)with it.- Parameters:
clazz- Class for which a suitable Log name will be derived- Returns:
- the Log instance to use for the given class.
- Throws:
LogConfigurationException- if a suitableLoginstance cannot be returned
-
getInstance
public Log getInstance(String name) throws LogConfigurationException
Construct (if necessary) and return a
Loginstance, using the factory's current set of configuration attributes.NOTE - Depending upon the implementation of the
LogFactoryyou are using, theLoginstance you are returned may or may not be local to the current application, and may or may not be returned again on a subsequent call with the same name argument.- Parameters:
name- Logical name of theLoginstance to be returned (the meaning of this name is only known to the underlying logging implementation that is being wrapped)- Returns:
- the Log instance of the class with the given name.
- Throws:
LogConfigurationException- if a suitableLoginstance cannot be returned
-
release
public static void release()
Release any internal references to previously createdLoginstances returned by this factory. This is useful in environments like servlet containers, which implement application reloading by throwing away a ClassLoader. Dangling references to objects in that class loader would prevent garbage collection.
-
removeAttribute
public void removeAttribute(String name)
Remove any configuration attribute associated with the specified name. If there is no such attribute, no action is taken.- Parameters:
name- Name of the attribute to remove
-
setAttribute
public void setAttribute(String name, Object value)
Set the configuration attribute with the specified name. Calling this with anullvalue is equivalent to callingremoveAttribute(name).- Parameters:
name- Name of the attribute to setvalue- Value of the attribute to set, ornullto remove any setting for this attribute
-
-