LogSource (Apache Commons Logging 1.2 API)

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 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 1432675 2013-01-13 17:53:30Z tn $

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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 Constructor` | `logImplctor` Deprecated. Constructor for current log class
    `protected static Hashtable` | `logs` Deprecated.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Log` | `getInstance(Class clazz)` Deprecated. Get a `Log` instance by class.
    `static Log` | `getInstance(String name)` Deprecated. Get a `Log` instance by class name.
    `static String[]` | `getLogNames()` Deprecated. Returns a `String` array containing the names of all logs known to me.
    `static Log` | `makeNewLogInstance(String name)` Deprecated. Create a new `Log` implementation, based on the given name.
    `static void` | `setLogImplementation(Class logclass)` Deprecated. Set the log implementation/log implementation factory by class.
    `static void` | `setLogImplementation(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 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 Constructor logImplctor

      Deprecated.
      Constructor for current log class

  - ### Method Detail

    - #### setLogImplementation

          public static void setLogImplementation(String classname)
                                           throws LinkageError,
                                                  NoSuchMethodException,
                                                  SecurityException,
                                                  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:
        `LinkageError`
        `NoSuchMethodException`
        `SecurityException`
        `ClassNotFoundException`

    - #### setLogImplementation

          public static void setLogImplementation(Class logclass)
                                           throws LinkageError,
                                                  ExceptionInInitializerError,
                                                  NoSuchMethodException,
                                                  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:
        `LinkageError`
        `ExceptionInInitializerError`
        `NoSuchMethodException`
        `SecurityException`

    - #### getInstance

          public static Log getInstance(String name)

      Deprecated.
      Get a `Log` instance by class name.

    - #### getInstance

          public static Log getInstance(Class clazz)

      Deprecated.
      Get a `Log` instance by class.

    - #### makeNewLogInstance

          public static Log makeNewLogInstance(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 String[] getLogNames()

      Deprecated.
      Returns a `String` array containing the names of all logs known to me.

Copyright © 2001–2014 The Apache Software Foundation. All rights reserved.