log4cpp:Filter (3)





NAME

       log4cpp::Filter - Users should extend this class to implement
       customized logging event filtering.


SYNOPSIS

       #include <Filter.hh>

   Public Types
       enum Decision { DENY =  -1, NEUTRAL =  0, ACCEPT =  1 }

   Public Methods
       Filter ()
           Default Constructor for Filter.
       virtual ~Filter ()
           Destructor for Filter.
       virtual void setChainedFilter (Filter *filter)
           Set the next Filter in the Filter chain.
       virtual Filter * getChainedFilter ()
           Get the next Filter in the Filter chain.
       virtual Filter * getEndOfChain ()
           Get the last Filter in the Filter chain.
       virtual void appendChainedFilter (Filter *filter)
           Add a Filter to the end of the Filter chain.
       virtual Decision decide (const LoggingEvent &event)
           Decide whether to accept or deny a LoggingEvent.

   Protected Methods
       virtual Decision _decide (const LoggingEvent &event)=0
           Decide whether this Filter accepts or denies the given
           LoggingEvent.


DETAILED DESCRIPTION

       Users should extend this class to implement customized logging event
       filtering.

       Note that and {@link        log4cpp::Appender have built-in filtering
       rules. It is suggested  that you first use and understand the built-in
       rules before rushing  to write your own custom filters.

       This abstract class assumes and also imposes that filters be organized
       in a linear chain. The decide(LoggingEvent)  method of each filter is
       called sequentially, in the order of their  addition to the chain.

       The decide(LoggingEvent) method must return a Decision value, either
       DENY, NEUTRAL or ACCCEPT.

       If the value DENY is returned, then the log event is dropped
       immediately without consulting with the remaining filters.

       If the value NEUTRAL is returned, then the next filter in the chain is
       consulted. If there are no more filters in the chain, then the log
       event is logged. Thus, in the presence of no filters, the default
       behaviour is to log all logging events.

       Enumeration values:

       DENY

       NEUTRAL

       ACCEPT


CONSTRUCTOR & DESTRUCTOR DOCUMENTATION

   log4cpp::Filter::Filter ()
       Default Constructor for Filter.

   log4cpp::Filter::~Filter () [virtual]
       Destructor for Filter.


MEMBER FUNCTION DOCUMENTATION

   virtual Decision log4cpp::Filter::_decide (const LoggingEvent & event)
       [protected, pure virtual]
       Decide whether this Filter accepts or denies the given LoggingEvent.

       Actual implementation of Filter should override this method and not
       decide(LoggingEvent&).

       Parameters:

       event  The LoggingEvent to decide on.

       Returns:
           The Decision

   void log4cpp::Filter::appendChainedFilter (Filter * filter) [virtual]
       Add a Filter to the end of the Filter chain.

       Convience method for getEndOfChain()->setChainedFilter(filter).

       Parameters:

       filter The filter to add to the end of the chain.

   Filter::Decision log4cpp::Filter::decide (const LoggingEvent & event)
       [virtual]
       Decide whether to accept or deny a LoggingEvent.

       This method will walk the entire chain until a non neutral decision has
       been made or the end of the chain has been reached.

       Parameters:

       event  The LoggingEvent to decide on.

       Returns:
           The Decision

   Filter * log4cpp::Filter::getChainedFilter () [virtual]
       Get the next Filter in the Filter chain.
           The last Filter in the Filter chain

   void log4cpp::Filter::setChainedFilter (Filter * filter) [virtual]
       Set the next Filter in the Filter chain.

       Parameters:

       filter The filter to chain


AUTHOR

       Generated automatically by Doxygen for log4cpp from the source code.

log4cpp                           19 Aug 2003               log4cpp::Filter(3)