java.lang.Object java.util.logging.Handler
A Handler object takes log messages from a Logger and exports them. It might for example, write them to a console or write them to a file, or send them to a network logging service, or forward them to an OS log, or whatever.
A Handler can be disabled by doing a setLevel(Level.OFF) and can be re-enabled by doing a setLevel with an appropriate level.
Handler classes typically use LogManager properties to set default values for the Handler 's Filter , Formatter , and Level . See the specific documentation for each concrete Handler class.
Constructor Summary | |
---|---|
protected |
Handler
() Default constructor. |
Method Summary | |
---|---|
abstract void |
close
() Close the Handler and free all associated resources. |
abstract void |
flush
() Flush any buffered output. |
String |
getEncoding
() Return the character encoding for this Handler . |
ErrorManager |
getErrorManager
() Retrieves the ErrorManager for this Handler. |
Filter |
getFilter
() Get the current Filter for this Handler . |
Formatter |
getFormatter
() Return the Formatter for this Handler . |
Level |
getLevel
() Get the log level specifying which messages will be logged by this Handler . |
boolean |
isLoggable
(
LogRecord
record) Check if this Handler would actually log a given LogRecord . |
abstract void |
publish
(
LogRecord
record) Publish a LogRecord . |
protected void |
reportError
(
String
msg,
Exception
ex, int code) Protected convenience method to report an error to this Handler's ErrorManager. |
void |
setEncoding
(
String
encoding) Set the character encoding used by this Handler . |
void |
setErrorManager
(
ErrorManager
em) Define an ErrorManager for this Handler. |
void |
setFilter
(
Filter
newFilter) Set a Filter to control output on this Handler . |
void |
setFormatter
(
Formatter
newFormatter) Set a Formatter . |
void |
setLevel
(
Level
newLevel) Set the log level specifying which message levels will be logged by this Handler . |
Methods inherited from class java.lang. Object |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
Constructor Detail |
---|
protected Handler()
Method Detail |
---|
public abstract void publish(LogRecord record)
The logging request was made initially to a Logger object, which initialized the LogRecord and forwarded it here.
The Handler is responsible for formatting the message, when and if necessary. The formatting should include localization.
public abstract void flush()
public abstract void close() throws SecurityException
The close method will perform a flush and then close the Handler . After close has been called this Handler should no longer be used. Method calls may either be silently ignored or may throw runtime exceptions.
public void setFormatter(Formatter newFormatter) throws SecurityException
Some Handlers may not use Formatters , in which case the Formatter will be remembered, but not used.
public Formatter getFormatter()
public void setEncoding(String encoding) throws SecurityException, UnsupportedEncodingException
The encoding should be set before any LogRecords are written to the Handler .
public String getEncoding()
public void setFilter(Filter newFilter) throws SecurityException
For each call of publish the Handler will call this Filter (if it is non-null) to check if the LogRecord should be published or discarded.
public Filter getFilter()
public void setErrorManager(ErrorManager em)
The ErrorManager's "error" method will be invoked if any errors occur while using this Handler.
public ErrorManager getErrorManager()
protected void reportError(String msg, Exception ex, int code)
public void setLevel(Level newLevel) throws SecurityException
The intention is to allow developers to turn on voluminous logging, but to limit the messages that are sent to certain Handlers .
public Level getLevel()
public boolean isLoggable(LogRecord record)
This method checks if the LogRecord has an appropriate Level and whether it satisfies any Filter . It also may make other Handler specific checks that might prevent a handler from logging the LogRecord . It will return false if the LogRecord is Null.