org.apache.logging.log4j.core.appender
Class AbstractAppender<T extends Serializable>

java.lang.Object
  extended by org.apache.logging.log4j.core.filter.AbstractFilterable
      extended by org.apache.logging.log4j.core.appender.AbstractAppender<T>
Type Parameters:
T - The Layout's Serializable type.
All Implemented Interfaces:
Appender<T>, Filterable, LifeCycle
Direct Known Subclasses:
AbstractDatabaseAppender, AbstractOutputStreamAppender, AsyncAppender, FailoverAppender, JMSQueueAppender, JMSTopicAppender, RewriteAppender, RoutingAppender, SMTPAppender

public abstract class AbstractAppender<T extends Serializable>
extends AbstractFilterable
implements Appender<T>, LifeCycle

Abstract base class for Appenders. Although Appenders do not have to extend this class, doing so will simplify their implementation.


Field Summary
protected static org.apache.logging.log4j.Logger LOGGER
          Allow subclasses access to the status logger without creating another instance.
 
Constructor Summary
protected AbstractAppender(String name, Filter filter, Layout<T> layout)
          Constructor that defaults to suppressing exceptions.
protected AbstractAppender(String name, Filter filter, Layout<T> layout, boolean handleException)
          Constructor.
 
Method Summary
 void error(String msg)
          Handle an error with a message.
 void error(String msg, LogEvent event, Throwable t)
          Handle an error with a message, and exception and a logging event.
 void error(String msg, Throwable t)
          Handle an error with a message and an exception.
 ErrorHandler getHandler()
          Returns the ErrorHandler, if any.
 Layout<T> getLayout()
          Returns the Layout for the appender.
 String getName()
          Returns the name of the Appender.
 boolean isExceptionSuppressed()
          Some appenders need to propagate exceptions back to the application.
 boolean isStarted()
          Returns true if the Appender is started, false otherwise.
 void setHandler(ErrorHandler handler)
          The handler must be set before the appender is started.
 void start()
          Start the Appender.
 void stop()
          Stop the Appender.
 String toString()
           
 
Methods inherited from class org.apache.logging.log4j.core.filter.AbstractFilterable
addFilter, getFilter, hasFilter, isFiltered, removeFilter, startFilter, stopFilter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.logging.log4j.core.Appender
append
 

Field Detail

LOGGER

protected static final org.apache.logging.log4j.Logger LOGGER
Allow subclasses access to the status logger without creating another instance.

Constructor Detail

AbstractAppender

protected AbstractAppender(String name,
                           Filter filter,
                           Layout<T> layout)
Constructor that defaults to suppressing exceptions.

Parameters:
name - The Appender name.
filter - The Filter to associate with the Appender.
layout - The layout to use to format the event.

AbstractAppender

protected AbstractAppender(String name,
                           Filter filter,
                           Layout<T> layout,
                           boolean handleException)
Constructor.

Parameters:
name - The Appender name.
filter - The Filter to associate with the Appender.
layout - The layout to use to format the event.
handleException - If true, exceptions will be logged and suppressed. If false errors will be logged and then passed to the application.
Method Detail

getHandler

public ErrorHandler getHandler()
Returns the ErrorHandler, if any.

Specified by:
getHandler in interface Appender<T extends Serializable>
Returns:
The ErrorHandler.

setHandler

public void setHandler(ErrorHandler handler)
The handler must be set before the appender is started.

Specified by:
setHandler in interface Appender<T extends Serializable>
Parameters:
handler - The ErrorHandler to use.

getName

public String getName()
Returns the name of the Appender.

Specified by:
getName in interface Appender<T extends Serializable>
Returns:
The name of the Appender.

getLayout

public Layout<T> getLayout()
Returns the Layout for the appender.

Specified by:
getLayout in interface Appender<T extends Serializable>
Returns:
The Layout used to format the event.

isExceptionSuppressed

public boolean isExceptionSuppressed()
Some appenders need to propagate exceptions back to the application. When suppressException is false the AppenderControl will allow the exception to percolate.

Specified by:
isExceptionSuppressed in interface Appender<T extends Serializable>
Returns:
true if exceptions will be suppressed, false otherwise.

start

public void start()
Start the Appender.

Specified by:
start in interface LifeCycle

stop

public void stop()
Stop the Appender.

Specified by:
stop in interface LifeCycle

isStarted

public boolean isStarted()
Returns true if the Appender is started, false otherwise.

Specified by:
isStarted in interface LifeCycle
Returns:
true if the Appender is started, false otherwise.

toString

public String toString()
Overrides:
toString in class Object

error

public void error(String msg)
Handle an error with a message.

Parameters:
msg - The message.

error

public void error(String msg,
                  Throwable t)
Handle an error with a message and an exception.

Parameters:
msg - The message.
t - The Throwable.

error

public void error(String msg,
                  LogEvent event,
                  Throwable t)
Handle an error with a message, and exception and a logging event.

Parameters:
msg - The message.
event - The LogEvent.
t - The Throwable.


Copyright © 1999-2013 Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.