Package mondrian.recorder
Class AbstractRecorder
java.lang.Object
mondrian.recorder.AbstractRecorder
- All Implemented Interfaces:
MessageRecorder
- Direct Known Subclasses:
ListRecorder
,LoggerRecorder
,PrintStreamRecorder
Abstract implemention of the
MessageRecorder
interface.- Author:
- Richard M. Emberson
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Resets this MessageRecorder.Get the current context string.int
int
long
How long the MessageRecorder has been running since it was created or the last time clear was called.long
Get the time when the MessageRecorder was created or the last time that the clear method was called.int
boolean
Returns true if there are one or more error messages.boolean
Returns true if there are one or more informational messages.boolean
Returns true if there are one or more warning messages.static void
logMessage
(String context, String msg, mondrian.recorder.AbstractRecorder.MsgType msgType, org.apache.logging.log4j.Logger logger) Helper method to format a message and write to logger.void
Remove the last context name added.void
pushContextName
(String name) Add the name parameter to the current context.protected abstract void
recordMessage
(String msg, Object info, mondrian.recorder.AbstractRecorder.MsgType msgType) Handles a message.void
reportError
(Exception ex) Add an Exception.void
reportError
(Exception ex, Object info) Add an Exception and extra informaton.void
reportError
(String msg) Add an error message.void
reportError
(String msg, Object info) Add an error message and extra information.void
reportInfo
(String msg) Add an informational message.void
reportInfo
(String msg, Object info) Add an informational message and extra information.void
reportWarning
(String msg) Add a warning message.void
reportWarning
(String msg, Object info) Add a warning message and extra information.void
This simply throws a RTException.
-
Field Details
-
DEFAULT_MSG_LIMIT
public static final int DEFAULT_MSG_LIMIT- See Also:
-
-
Constructor Details
-
AbstractRecorder
protected AbstractRecorder() -
AbstractRecorder
protected AbstractRecorder(int errorMsgLimit)
-
-
Method Details
-
logMessage
public static void logMessage(String context, String msg, mondrian.recorder.AbstractRecorder.MsgType msgType, org.apache.logging.log4j.Logger logger) Helper method to format a message and write to logger. -
clear
public void clear()Resets this MessageRecorder.- Specified by:
clear
in interfaceMessageRecorder
-
getStartTimeMillis
public long getStartTimeMillis()Description copied from interface:MessageRecorder
Get the time when the MessageRecorder was created or the last time that the clear method was called.- Specified by:
getStartTimeMillis
in interfaceMessageRecorder
- Returns:
- the start time
-
getRunTimeMillis
public long getRunTimeMillis()Description copied from interface:MessageRecorder
How long the MessageRecorder has been running since it was created or the last time clear was called.- Specified by:
getRunTimeMillis
in interfaceMessageRecorder
-
hasInformation
public boolean hasInformation()Description copied from interface:MessageRecorder
Returns true if there are one or more informational messages.- Specified by:
hasInformation
in interfaceMessageRecorder
- Returns:
- true if there are one or more infos.
-
hasWarnings
public boolean hasWarnings()Description copied from interface:MessageRecorder
Returns true if there are one or more warning messages.- Specified by:
hasWarnings
in interfaceMessageRecorder
- Returns:
- true if there are one or more warnings.
-
hasErrors
public boolean hasErrors()Description copied from interface:MessageRecorder
Returns true if there are one or more error messages.- Specified by:
hasErrors
in interfaceMessageRecorder
- Returns:
- true if there are one or more errors.
-
getInfoCount
public int getInfoCount() -
getWarningCount
public int getWarningCount() -
getErrorCount
public int getErrorCount() -
getContext
Description copied from interface:MessageRecorder
Get the current context string.- Specified by:
getContext
in interfaceMessageRecorder
- Returns:
- the context string.
-
pushContextName
Description copied from interface:MessageRecorder
Add the name parameter to the current context.- Specified by:
pushContextName
in interfaceMessageRecorder
-
popContextName
public void popContextName()Description copied from interface:MessageRecorder
Remove the last context name added.- Specified by:
popContextName
in interfaceMessageRecorder
-
throwRTException
Description copied from interface:MessageRecorder
This simply throws a RTException. A client calls this if 1) there is one or more error messages reported and 2) the client wishes to stop processing. Implementations of this method should only throw the RTException if there have been errors reported - if there are no errors, then this method does nothing.- Specified by:
throwRTException
in interfaceMessageRecorder
- Throws:
RecorderException
-
reportError
Description copied from interface:MessageRecorder
Add an Exception.- Specified by:
reportError
in interfaceMessageRecorder
- Parameters:
ex
- the Exception added.- Throws:
RecorderException
- if too many error messages have been added.
-
reportError
Description copied from interface:MessageRecorder
Add an Exception and extra informaton.- Specified by:
reportError
in interfaceMessageRecorder
- Parameters:
ex
- the Exception added.info
- extra information (not meant to be part of printed message)- Throws:
RecorderException
- if too many error messages have been added.
-
reportError
Description copied from interface:MessageRecorder
Add an error message.- Specified by:
reportError
in interfaceMessageRecorder
- Parameters:
msg
- the text of the error message.- Throws:
RecorderException
- if too many error messages have been added.
-
reportError
Description copied from interface:MessageRecorder
Add an error message and extra information.- Specified by:
reportError
in interfaceMessageRecorder
- Parameters:
msg
- the text of the error message.info
- extra information (not meant to be part of printed message)- Throws:
RecorderException
- if too many error messages have been added.
-
reportWarning
Description copied from interface:MessageRecorder
Add a warning message.- Specified by:
reportWarning
in interfaceMessageRecorder
- Parameters:
msg
- the text of the warning message.
-
reportWarning
Description copied from interface:MessageRecorder
Add a warning message and extra information.- Specified by:
reportWarning
in interfaceMessageRecorder
- Parameters:
msg
- the text of the warning message.info
- extra information (not meant to be part of printed message)
-
reportInfo
Description copied from interface:MessageRecorder
Add an informational message.- Specified by:
reportInfo
in interfaceMessageRecorder
- Parameters:
msg
- the text of the info message.
-
reportInfo
Description copied from interface:MessageRecorder
Add an informational message and extra information.- Specified by:
reportInfo
in interfaceMessageRecorder
- Parameters:
msg
- the text of the info message.info
- extra information (not meant to be part of printed message)
-
recordMessage
protected abstract void recordMessage(String msg, Object info, mondrian.recorder.AbstractRecorder.MsgType msgType) Handles a message. Classes implementing this abstract class must provide an implemention of this method; it receives all warning/error messages.- Parameters:
msg
- the error or warning message.info
- the information Object which might be null.msgType
- one of the message type enum values
-