java.lang.Object
org.exoplatform.common.http.client.Log

public class Log extends Object
This is a simple logger for the HTTPClient. It defines a number of "facilities", each representing one or more logically connected classes. Logging can be enabled or disabled on a per facility basis. Furthermore, the logging output can be redirected to any desired place, such as a file or a buffer; by default all logging goes to System.err.

All log entries are preceded by the name of the currently executing thread, enclosed in {}'s, and the current time in hours, minutes, seconds, and milliseconds, enclosed in []'s. Example: {Thread-5} [20:14:03.244] Conn: Sending Request

When the class is loaded, two java system properties are read: HTTPClient.log.file and HTTPClient.log.mask. The first one, if set, causes all logging to be redirected to the file with the given name. The second one, if set, is used for setting which facilities are enabled; the value must be the bitwise OR ('|') of the values of the desired enabled facilities. E.g. a value of 3 would enable logging for the HTTPConnection and HTTPResponse, a value of 16 would enable cookie related logging, and a value of 8 would enable authorization related logging; a value of -1 would enable logging for all facilities. By default logging is disabled.

Since:
V0.3-3
Version:
0.3-3 06/05/2001
Author:
Ronald Tschal�r
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    All the facilities - for use in setLogging (-1)
    static final int
    The Authorization facility (8)
    static final int
    The HTTPConnection facility (1)
    static final int
    The Cookies facility (16)
    static final int
    The StreamDemultiplexor facility (4)
    static final int
    The Modules facility (32)
    static final int
    The HTTPResponse facility (2)
    static final int
    The Socks facility (64)
    static final int
    The ULRConnection facility (128)
  • Method Summary

    Modifier and Type
    Method
    Description
    static boolean
    isEnabled(int facility)
    Check whether logging for the given facility is enabled or not.
    static void
    setLogging(int facilities, boolean enable)
    Enable or disable logging for the given facilities.
    static void
    setLogWriter(Writer log, boolean closeWhenDone)
    Set the writer to which to log.
    static void
    write(int facility, String msg)
    Write the given message to the current log if logging for the given facility is enabled.
    static void
    write(int facility, String prefix, ByteArrayOutputStream buf)
    Write the contents of the given buffer to the current log if logging for the given facility is enabled.
    static void
    write(int facility, String prefix, Throwable t)
    Write the stack trace of the given exception to the current log if logging for the given facility is enabled.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Method Details

    • write

      public static void write(int facility, String msg)
      Write the given message to the current log if logging for the given facility is enabled.
      Parameters:
      facility - the facility which is logging the message
      msg - the message to log
    • write

      public static void write(int facility, String prefix, Throwable t)
      Write the stack trace of the given exception to the current log if logging for the given facility is enabled.
      Parameters:
      facility - the facility which is logging the message
      prefix - the string with which to prefix the stack trace; may be null
      t - the exception to log
    • write

      public static void write(int facility, String prefix, ByteArrayOutputStream buf)
      Write the contents of the given buffer to the current log if logging for the given facility is enabled.
      Parameters:
      facility - the facility which is logging the message
      prefix - the string with which to prefix the buffer contents; may be null
      buf - the buffer to dump
    • isEnabled

      public static boolean isEnabled(int facility)
      Check whether logging for the given facility is enabled or not.
      Parameters:
      facility - the facility to check
      Returns:
      true if logging for the given facility is enable; false otherwise
    • setLogging

      public static void setLogging(int facilities, boolean enable)
      Enable or disable logging for the given facilities.
      Parameters:
      facilities - the facilities for which to enable or disable logging. This is bitwise OR ('|') of all the desired facilities; use ALL to affect all facilities
      enable - if true, enable logging for the chosen facilities; if false, disable logging for them.
    • setLogWriter

      public static void setLogWriter(Writer log, boolean closeWhenDone)
      Set the writer to which to log. By default, things are logged to System.err.
      Parameters:
      log - the writer to log to; if null, nothing is changed
      closeWhenDone - if true, close this stream when a new stream is set again