Class LogAndTraceBroker
java.lang.Object
org.sblim.cimclient.internal.logging.LogAndTraceBroker
Class LogAndTraceBroker is the central class that implements the logging and
tracing of the CIM Client. It manages the collections of the internal log and
trace listeners. It sets up the application independent logging. It provides
the API to send log and trace messages and forwards them to the appropriate
listeners.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddCIMXMLTraceListener(CIMXMLTraceListener pListener) Adds a listener for CIM-XML trace messages.voidaddLogListener(LogListener pListener) Adds a listener for log messages.voidaddTraceListener(TraceListener pListener) Adds a listener for log messages.voidRemoves all CIM-XML trace listeners.voidRemoves all listeners.voidRemoves all listeners.voidentry()Forwards a method entry message to the registered trace listeners.voidexit()Forwards a method exit message to the registered trace listeners.protected voidfinalize()static LogAndTraceBrokerReturns the singleton instance of the brokerGets the registered CIM-XML trace listeners.Gets the registered log listeners including the internal console and file loggers.Gets the registered trace listeners including the internal console and file loggers.Returns the output stream to which all CIM-XML traffic (outgoing & incoming) will be copied for debugging purposes.booleanisLoggableCIMXMLTrace(Level pLevel) Checks whether there are CIM-XML trace listeners installed that will log a CIM-XML trace message.booleanisLoggableMessage(Level pLevel) Checks whether there are log listeners installed that will log a message with the specified level.booleanisLoggableTrace(Level pLevel) Checks whether there are trace listeners installed that will log a trace message with the specified level.static booleanReturns if the logging framework has been initialized.voidForwards a log/trace message to the registered loginvalid input: '&trace' listeners.voidForwards a log/trace message to the registered loginvalid input: '&trace' listeners.voidForwards a log/trace message to the registered loginvalid input: '&trace' listeners.voidRegisters the listeners for our internal loggersvoidremoveCIMXMLTraceListener(CIMXMLTraceListener pListener) Removes a CIM-XML trace listener.voidremoveLogListener(LogListener pListener) Remove a listener.voidremoveTraceListener(TraceListener pListener) Removes a listener.voidsetXmlTraceStream(OutputStream pStream) Sets an output stream to which all CIM-XML traffic (outgoing & incoming) will be copied for debugging purposes.voidForwards a trace message to the registered trace listeners.voidForwards a trace message to the registered trace listeners.voidtraceCIMXML(Level pLevel, String pMessage, boolean pOutgoing) Forwards a CIM-XML trace message to the registered CIM-XML trace listeners.
-
Method Details
-
getBroker
Returns the singleton instance of the broker- Returns:
- The broker instance
-
isLoggingStarted
public static boolean isLoggingStarted()Returns if the logging framework has been initialized. This method is used by theWBEMConfigurationclass to determine if the logging is already up. TheWBEMConfigurationis initialized before the logging, so methods in this class cannot assume the logging to be up and running.- Returns:
trueif the logging is up,falseotherwise
-
finalize
-
registerInternalListeners
public void registerInternalListeners()Registers the listeners for our internal loggers -
addLogListener
Adds a listener for log messages. The listener will be notified of any log event. Uses copy on write to ensure concurrent read access.- Parameters:
pListener- The listener
-
removeLogListener
Remove a listener. This listener will not be notified of log events anymore.- Parameters:
pListener- The listener
-
clearLogListeners
public void clearLogListeners()Removes all listeners. Caution this will also remove the internal console and file loggers. -
getLogListeners
Gets the registered log listeners including the internal console and file loggers.- Returns:
- The list of listeners
-
addTraceListener
Adds a listener for log messages. The listener will be notified of any trace event.- Parameters:
pListener- The listener
-
removeTraceListener
Removes a listener. This listener will not be notified of trace events anymore.- Parameters:
pListener- The listener
-
clearTraceListeners
public void clearTraceListeners()Removes all listeners. Caution this will also remove the internal trace file listener. -
getTraceListeners
Gets the registered trace listeners including the internal console and file loggers.- Returns:
- A list of listeners
-
addCIMXMLTraceListener
Adds a listener for CIM-XML trace messages. The listener will be notified of any CIM-XML trace event.- Parameters:
pListener- The listener
-
removeCIMXMLTraceListener
Removes a CIM-XML trace listener. This listener will not be notified of CIM-XML trace events anymore.- Parameters:
pListener- The listener
-
clearCIMXMLTraceListeners
public void clearCIMXMLTraceListeners()Removes all CIM-XML trace listeners. -
getCIMXMLTraceListeners
Gets the registered CIM-XML trace listeners.- Returns:
- A list of listeners
-
message
Forwards a log/trace message to the registered loginvalid input: '&trace' listeners.- Parameters:
pKey- The message identifier.
-
message
-
message
-
trace
-
trace
-
traceCIMXML
Forwards a CIM-XML trace message to the registered CIM-XML trace listeners.- Parameters:
pLevel- One of the message level identifiers, e.g. FINEpMessage- The CIM-XML message textpOutgoing-trueif CIM-XML is outgoing (being sent from client to server),falseif CIM-XML is incoming (being sent from server to client)
-
entry
public void entry()Forwards a method entry message to the registered trace listeners. -
exit
public void exit()Forwards a method exit message to the registered trace listeners. -
getXmlTraceStream
Returns the output stream to which all CIM-XML traffic (outgoing & incoming) will be copied for debugging purposes.- Returns:
- The output stream. A
nullvalue means that CIM-XML debugging is disabled
-
setXmlTraceStream
Sets an output stream to which all CIM-XML traffic (outgoing & incoming) will be copied for debugging purposes.- Parameters:
pStream- The output stream. Anullvalue means that CIM-XML debugging is disabled.
-
isLoggableTrace
Checks whether there are trace listeners installed that will log a trace message with the specified level. Use this method to determine if a trace() method call could result in logging before preparing the information to be logged. For example:if (logger.isLoggableTrace(Level.WARNING) { // Prepare info for logging logger.trace(Level.WARNING, ...- Parameters:
pLevel- TheLevelof the trace message.- Returns:
trueif trace message could be logged,falseotherwise.
-
isLoggableMessage
Checks whether there are log listeners installed that will log a message with the specified level. Use this method to determine if a message() method call could result in logging before preparing the information to be logged. For example:if (logger.isLoggableMessage(Level.WARNING) { // Prepare info for logging logger.message(Level.WARNING, ...- Parameters:
pLevel- TheLevelof the message.- Returns:
trueif message could be logged,falseotherwise.
-
isLoggableCIMXMLTrace
Checks whether there are CIM-XML trace listeners installed that will log a CIM-XML trace message. Use this method to determine if a trace() method call could result in logging before preparing the information to be logged. For example:if (logger.isLoggableCIMXMLTrace(Level.FINEST) { // Prepare info for logging logger.traceCIMXML(Level.FINEST, ...- Parameters:
pLevel- TheLevelof the trace message.- Returns:
trueif CIM-XML trace message could be logged,falseotherwise.
-