Documentation of 'javolution37.javolution.realtime.LogContext' Java class
LogContext
javolution37.javolution.realtime

Class LogContext

  • Direct Known Subclasses:
    StandardLog


    public abstract class LogContext
    extends Context

    This class represents a logging context; it allows for object-based/thread-based logging and logging specializations (such as StandardLog to leverage java.util.logging capabilities).

    The default logging context is STANDARD (log events forwarded to the root java.util.logging.Logger). Users may changes the default logging for all threads:

         // Logging disabled by default.
         LogContext.setDefault(LogContext.NULL); 
         
    and/or perform custom logging for particular objects/threads:
         LogContext.enter(LogContext.SYSTEM);
         try {
            LogContext.info("Writes this message to System.out");
            ...       
         } finally {
            LogContext.exit(LogContext.SYSTEM);
         }

    Applications may extend this base class to address specific logging requirements. For example:

         // This class allows for custom logging of session events. 
         public abstract class SessionLog extends LogContext  {
             public static void start(Session session) {
                 LogContext log = LogContext.current();
                 if (log instanceof SessionLog.Loggable) { 
                     ((SessionLog.Loggable)log).logStart(session);
                 } else if (log.isInfoLogged()) {
                     log.logInfo("Session " + session.id() + " started");
                 }
             }
             public static void end(Session session) { ... }
             public interface Loggable { 
                 void logStart(Session session);
                 void logEnd(Session session);
             }
         }

    The use of interfaces (such as Loggable above) makes it easy for any context to support customs logging events. For example:

         class MyLog extends StandardLog implements SessionLog.Loggable, DatabaseLog.Loggable { 
             ...   // Specialized logging for session and database events. 
         }
         MyLog myLog = new MyLog();
         LogContext.enter(myLog);
         try {
             ...
             LogContext.info("Informative message"); // Standard logging.   
             ...
             DatabaseLog.fail(transaction); // Database custom logging.
             ... 
             SessionLog.start(session); // Session custom logging.
             ...
         } finally {
             LogContext.exit(myLog);
         }

    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static LogContext NULL
      Holds a context ignoring logging events.
      static StandardLog STANDARD
      Holds a context forwarding log events to the root java.util.logging.Logger framework (default logging context).
      static LogContext SYSTEM
      Holds a context logging informative messages to System.out and warnings/errors events to System.err.
      static LogContext SYSTEM_ERR
      Holds a context logging warnings/errors events to System.err and ignoring informative messages.
    • Constructor Summary

      Constructors 
      Constructor and Description
      LogContext()
      Default constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method and Description
      static LogContext current()
      Returns the current logging context (or getDefault() if the current thread has not entered any logging context).
      static void error(java.lang.Throwable error)
      Logs the specified error to the current logging context.
      static void error(java.lang.Throwable error, java.lang.CharSequence message)
      Logs the specified error and error message to the current logging context.
      static LogContext getDefault()
      Returns the default logging context for new threads (STANDARD when not explicitly set).
      static void info(java.lang.CharSequence message)
      Logs the specified informative message.
      abstract boolean isErrorLogged()
      Indicates if errors are logged.
      abstract boolean isInfoLogged()
      Indicates if informative messages are logged.
      abstract boolean isWarningLogged()
      Indicates if warning messages are logged.
      abstract void logError(java.lang.Throwable error, java.lang.CharSequence message)
      Logs the specified error.
      abstract void logInfo(java.lang.CharSequence message)
      Logs the specified informative message.
      abstract void logWarning(java.lang.CharSequence message)
      Logs the specified warning message.
      static void setDefault(LogContext defaultLog)
      Sets the specified logging context as default.
      static void warning(java.lang.CharSequence message)
      Logs the specified warning message to the current logging context.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • STANDARD

        public static final StandardLog STANDARD
        Holds a context forwarding log events to the root java.util.logging.Logger framework (default logging context). The info/warning/error events are mapped to the info/warning/severe log levels respectively.
      • NULL

        public static final LogContext NULL
        Holds a context ignoring logging events.
      • SYSTEM

        public static final LogContext SYSTEM
        Holds a context logging informative messages to System.out and warnings/errors events to System.err.
      • SYSTEM_ERR

        public static final LogContext SYSTEM_ERR
        Holds a context logging warnings/errors events to System.err and ignoring informative messages.
    • Constructor Detail

      • LogContext

        public LogContext()
        Default constructor.
    • Method Detail

      • current

        public static LogContext current()
        Returns the current logging context (or getDefault() if the current thread has not entered any logging context).
        Returns:
        the current logging context.
      • getDefault

        public static LogContext getDefault()
        Returns the default logging context for new threads (STANDARD when not explicitly set).
        Returns:
        the default logging contexts.
      • setDefault

        public static void setDefault(LogContext defaultLog)
        Sets the specified logging context as default.
        Parameters:
        defaultLog - the default logging context.
      • info

        public static void info(java.lang.CharSequence message)
        Logs the specified informative message.
        Parameters:
        message - the informative message being logged.
        See Also:
        logInfo(CharSequence)
      • warning

        public static void warning(java.lang.CharSequence message)
        Logs the specified warning message to the current logging context.
        Parameters:
        message - the warning message being logged.
        See Also:
        logWarning(CharSequence)
      • error

        public static void error(java.lang.Throwable error)
        Logs the specified error to the current logging context.
        Parameters:
        error - the error being logged.
      • error

        public static void error(java.lang.Throwable error,
                                 java.lang.CharSequence message)
        Logs the specified error and error message to the current logging context.
        Parameters:
        error - the error being logged.
        message - the supplementary message or null if none.
      • isInfoLogged

        public abstract boolean isInfoLogged()
        Indicates if informative messages are logged.
        Returns:
        true if informative messages are logged; false otherwise.
      • logInfo

        public abstract void logInfo(java.lang.CharSequence message)
        Logs the specified informative message.
        Parameters:
        message - the informative message being logged.
      • isWarningLogged

        public abstract boolean isWarningLogged()
        Indicates if warning messages are logged.
        Returns:
        true if warnings message are logged; false otherwise.
      • logWarning

        public abstract void logWarning(java.lang.CharSequence message)
        Logs the specified warning message.
        Parameters:
        message - the warning message being logged.
      • isErrorLogged

        public abstract boolean isErrorLogged()
        Indicates if errors are logged.
        Returns:
        true if errors are logged; false otherwise.
      • logError

        public abstract void logError(java.lang.Throwable error,
                                      java.lang.CharSequence message)
        Logs the specified error.
        Parameters:
        error - the error being logged.
        message - the associated message or null if none.

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.