|
J avolution v5.2 (J2SE 1.5+) | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavolution.context.Context
javolution.context.LogContext
public abstract class LogContext
This class represents a context for object-based/thread-based logging capabilities.
The default
logging context is StandardLog
to leverage java.util.logging
capabilities.
Logging can be temporarily modified on a thread or object basis.
For example:
public static main(String[] args) {
LogContext.enter(LogContext.NULL); // Temporarily disables logging.
try {
ClassInitializer.initializeAll(); // Initializes bootstrap, extensions and classpath classes.
} finally {
LogContext.exit(LogContext.NULL); // Goes back to default logging.
}
...
}
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 | |
---|---|
static java.lang.Class<? extends LogContext> |
CONSOLE
Holds a context logging informative/warnings/errors events to the system console. |
static Configurable<java.lang.Class<? extends LogContext>> |
DEFAULT
Holds the logging context default implementation (configurable, default value STANDARD ). |
static java.lang.Class<? extends LogContext> |
NULL
Holds a logging context implementation ignoring logging events. |
static java.lang.Class<? extends LogContext> |
STANDARD
Holds the logging context implementation forwarding log events to the root java.util.logging.Logger (default logging context). |
static java.lang.Class<? extends LogContext> |
SYSTEM_OUT
Holds a context logging messages to System.out . |
Fields inherited from class javolution.context.Context |
---|
ROOT |
Constructor Summary | |
---|---|
protected |
LogContext()
Default constructor. |
Method Summary | |
---|---|
protected void |
enterAction()
The action to be performed after this context becomes the current context. |
static void |
error(java.lang.CharSequence message)
Logs the specified error message to the current logging context. |
static void |
error(java.lang.String message)
Equivalent to error(CharSequence) (for J2ME compatibility). |
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 void |
error(java.lang.Throwable error,
java.lang.String message)
Equivalent to error(Throwable, CharSequence)
(for J2ME compatibility). |
protected void |
exitAction()
The action to be performed before this context is no more the current context. |
static LogContext |
getCurrent()
Returns the current logging context. |
static LogContext |
getDefault()
Returns the default instance ( DEFAULT implementation). |
static void |
info(java.lang.CharSequence message)
Logs the specified informative message. |
static void |
info(java.lang.String message)
Equivalent to info(CharSequence) (for J2ME compatibility). |
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. |
void |
logError(java.lang.Throwable error,
java.lang.String message)
Equivalent to logError(Throwable, CharSequence)
(for J2ME compatibility). |
abstract void |
logInfo(java.lang.CharSequence message)
Logs the specified informative message. |
void |
logInfo(java.lang.String message)
Equivalent to logInfo(CharSequence) (for J2ME compatibility). |
abstract void |
logWarning(java.lang.CharSequence message)
Logs the specified warning message. |
void |
logWarning(java.lang.String message)
Equivalent to logWarning(CharSequence) (for J2ME compatibility). |
static void |
warning(java.lang.CharSequence message)
Logs the specified warning message to the current logging context. |
static void |
warning(java.lang.String message)
Equivalent to warning(CharSequence) (for J2ME compatibility). |
Methods inherited from class javolution.context.Context |
---|
enter, enter, exit, exit, getOuter, getOwner, setCurrent, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final java.lang.Class<? extends LogContext> STANDARD
java.util.logging.Logger
(default logging context).
The info/warning/error events are mapped to the info/warning/severe
log levels respectively.
public static final java.lang.Class<? extends LogContext> NULL
public static final java.lang.Class<? extends LogContext> SYSTEM_OUT
System.out
.
public static final java.lang.Class<? extends LogContext> CONSOLE
public static final Configurable<java.lang.Class<? extends LogContext>> DEFAULT
STANDARD
).
Constructor Detail |
---|
protected LogContext()
Method Detail |
---|
public static LogContext getCurrent()
getDefault()
is returned.
public static LogContext getDefault()
DEFAULT
implementation).
public static void info(java.lang.CharSequence message)
message
- the informative message being logged.logInfo(CharSequence)
public static void info(java.lang.String message)
info(CharSequence)
(for J2ME compatibility).
public static void warning(java.lang.CharSequence message)
message
- the warning message being logged.logWarning(CharSequence)
public static void warning(java.lang.String message)
warning(CharSequence)
(for J2ME compatibility).
public static void error(java.lang.Throwable error)
error
- the error being logged.public static void error(java.lang.Throwable error, java.lang.CharSequence message)
error
- the error being logged.message
- the supplementary message.public static void error(java.lang.Throwable error, java.lang.String message)
error(Throwable, CharSequence)
(for J2ME compatibility).
public static void error(java.lang.CharSequence message)
message
- the error message being logged.public static final void error(java.lang.String message)
error(CharSequence)
(for J2ME compatibility).
public abstract boolean isInfoLogged()
true
if informative messages are logged;
false
otherwise.public abstract void logInfo(java.lang.CharSequence message)
message
- the informative message being logged.public final void logInfo(java.lang.String message)
logInfo(CharSequence)
(for J2ME compatibility).
public abstract boolean isWarningLogged()
true
if warnings message are logged;
false
otherwise.public abstract void logWarning(java.lang.CharSequence message)
message
- the warning message being logged.public final void logWarning(java.lang.String message)
logWarning(CharSequence)
(for J2ME compatibility).
public abstract boolean isErrorLogged()
true
if errors are logged;
false
otherwise.public abstract void logError(java.lang.Throwable error, java.lang.CharSequence message)
error
- the error being logged or null
if none.message
- the associated message or null
if none.public final void logError(java.lang.Throwable error, java.lang.String message)
logError(Throwable, CharSequence)
(for J2ME compatibility).
protected void enterAction()
Context
enterAction
in class Context
protected void exitAction()
Context
exitAction
in class Context
|
J avolution v5.2 (J2SE 1.5+) | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |