Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.logging
Class LogSource

    java.lang.Object
      org.apache.commons.logging.LogSource

Deprecated. Use `LogFactory` instead - The default factory implementation performs exactly the same algorithm as this class did

public class LogSource
extends java.lang.Object

Factory for creating `Log` instances. Applications should call the `makeNewLogInstance()` method to instantiate new instances of the configured `Log` 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 the `org.apache.commons.logging.Log` implementation class you want to use.
- At runtime, call `LogSource.setLogImplementation()`.

Version:
  $Id: LogSource.java 424107 2006-07-20 23:15:42Z skitching $
Author:
  Rod Waldhoff

Field Summary
`protected static boolean` | `jdk14IsAvailable` Deprecated. Is JDK 1.4 logging available
`protected static boolean` | `log4jIsAvailable` Deprecated. Is log4j available (in the current classpath)
`protected static java.lang.reflect.Constructor` | `logImplctor` Deprecated. Constructor for current log class
`protected static java.util.Hashtable` | `logs` Deprecated.

Method Summary
`static Log` | `getInstance(java.lang.Class clazz)` Deprecated. Get a `Log` instance by class
`static Log` | `getInstance(java.lang.String name)` Deprecated. Get a `Log` instance by class name
`static java.lang.String[]` | `getLogNames()` Deprecated. Returns a `String` array containing the names of all logs known to me.
`static Log` | `makeNewLogInstance(java.lang.String name)` Deprecated. Create a new `Log` 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.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

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.ExceptionInInitializerError,
                                            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 implement `Log`, and provide a constructor that takes a single `String` argument (containing the name of the log).

  Throws:
    `java.lang.LinkageError`
    `java.lang.ExceptionInInitializerError`
    `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 implement `Log`, and provide a constructor that takes a single `String` 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 a `Log` instance by class name

### getInstance

    public static Log getInstance(java.lang.Class clazz)

  Deprecated.
  Get a `Log` instance by class

### makeNewLogInstance

    public static Log makeNewLogInstance(java.lang.String name)

  Deprecated.
  Create a new `Log` 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 the `Log` interface. This class must also have a public constructor that takes a single `String` argument (containing the name of the `Log` 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 a `String` array containing the names of all logs known to me.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2007 The Apache Software Foundation. All Rights Reserved.