ch.qos.logback.access.tomcat
Class LogbackValve

java.lang.Object
  extended by org.apache.catalina.util.LifecycleBase
      extended by org.apache.catalina.util.LifecycleMBeanBase
          extended by org.apache.catalina.valves.ValveBase
              extended by ch.qos.logback.access.tomcat.LogbackValve
All Implemented Interfaces:
Context, AppenderAttachable<IAccessEvent>, FilterAttachable<IAccessEvent>, PropertyContainer, MBeanRegistration, org.apache.catalina.Contained, org.apache.catalina.Lifecycle, org.apache.catalina.Valve

public class LogbackValve
extends org.apache.catalina.valves.ValveBase
implements org.apache.catalina.Lifecycle, Context, AppenderAttachable<IAccessEvent>, FilterAttachable<IAccessEvent>

This class is an implementation of tomcat's Valve interface, by extending ValveBase.

For more information on using LogbackValve please refer to the online documentation on logback-acces and tomcat.

Author:
Ceki Gülcü, Sébastien Pennec

Field Summary
static String DEFAULT_CONFIG_FILE
           
 
Fields inherited from class org.apache.catalina.valves.ValveBase
asyncSupported, container, containerLog, info, next
 
Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserver
 
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
 
Constructor Summary
LogbackValve()
           
 
Method Summary
 void addAppender(Appender<IAccessEvent> newAppender)
          Add an appender.
 void addFilter(Filter<IAccessEvent> newFilter)
          Add a filter.
 void addLifecycleListener(org.apache.catalina.LifecycleListener arg0)
           
 void clearAllFilters()
           
 void detachAndStopAllAppenders()
          Detach and stop all previously added appenders.
 boolean detachAppender(Appender<IAccessEvent> appender)
          Detach the appender passed as parameter from the list of appenders.
 boolean detachAppender(String name)
          Detach the appender with the name passed as parameter from the list of appenders.
 org.apache.catalina.LifecycleListener[] findLifecycleListeners()
           
 Appender<IAccessEvent> getAppender(String name)
          Get an appender by name.
 long getBirthTime()
          The time at which this context was created, expressed in millisecond elapsed since the epoch (1.1.1970).
 Object getConfigurationLock()
          Object used for synchronization purposes.
 List<Filter<IAccessEvent>> getCopyOfAttachedFiltersList()
          Get a copy of all the filters contained within this FilterAttachable object.
 Map<String,String> getCopyOfPropertyMap()
          Get a copy of the property map
 ExecutorService getExecutorService()
          Every context has an ExecutorService which be invoked to execute certain tasks in a separate thread.
 String getFilename()
           
 FilterReply getFilterChainDecision(IAccessEvent event)
          Loop through the filters in the chain.
 String getInfo()
           
 String getName()
          Contexts are named objects.
 Object getObject(String key)
          A Context can act as a store for various objects used by LOGBack components.
 String getProperty(String key)
          Get the property of this context.
 Map<String,String> getPropertyMap()
           
 StatusManager getStatusManager()
          Return the StatusManager instance in use.
 void invoke(org.apache.catalina.connector.Request request, org.apache.catalina.connector.Response response)
           
 boolean isAttached(Appender<IAccessEvent> appender)
          Returns true if the specified appender is in list of attached attached, false otherwise.
 boolean isQuiet()
           
 boolean isStarted()
           
 Iterator<Appender<IAccessEvent>> iteratorForAppenders()
          Get an iterator for appenders contained in the parent object.
 void putObject(String key, Object value)
          Store an object under 'key'.
 void putProperty(String key, String val)
          Set a property of this context.
 void removeLifecycleListener(org.apache.catalina.LifecycleListener arg0)
           
 void setFilename(String filename)
           
 void setName(String name)
          The name of the context can be set only once.
 void setQuiet(boolean quiet)
           
 void startInternal()
           
protected  void stopInternal()
           
 
Methods inherited from class org.apache.catalina.valves.ValveBase
backgroundProcess, event, getContainer, getDomainInternal, getNext, getObjectNameKeyProperties, initInternal, isAsyncSupported, setAsyncSupported, setContainer, setNext, toString
 
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister
 
Methods inherited from class org.apache.catalina.util.LifecycleBase
destroy, fireLifecycleEvent, getState, getStateName, init, setState, setState, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.catalina.Lifecycle
destroy, getState, getStateName, init, start, stop
 

Field Detail

DEFAULT_CONFIG_FILE

public static final String DEFAULT_CONFIG_FILE
Constructor Detail

LogbackValve

public LogbackValve()
Method Detail

isStarted

public boolean isStarted()

startInternal

public void startInternal()
                   throws org.apache.catalina.LifecycleException
Overrides:
startInternal in class org.apache.catalina.valves.ValveBase
Throws:
org.apache.catalina.LifecycleException

getFilename

public String getFilename()

setFilename

public void setFilename(String filename)

isQuiet

public boolean isQuiet()

setQuiet

public void setQuiet(boolean quiet)

invoke

public void invoke(org.apache.catalina.connector.Request request,
                   org.apache.catalina.connector.Response response)
            throws IOException,
                   javax.servlet.ServletException
Specified by:
invoke in interface org.apache.catalina.Valve
Specified by:
invoke in class org.apache.catalina.valves.ValveBase
Throws:
IOException
javax.servlet.ServletException

stopInternal

protected void stopInternal()
                     throws org.apache.catalina.LifecycleException
Overrides:
stopInternal in class org.apache.catalina.valves.ValveBase
Throws:
org.apache.catalina.LifecycleException

addAppender

public void addAppender(Appender<IAccessEvent> newAppender)
Description copied from interface: AppenderAttachable
Add an appender.

Specified by:
addAppender in interface AppenderAttachable<IAccessEvent>

iteratorForAppenders

public Iterator<Appender<IAccessEvent>> iteratorForAppenders()
Description copied from interface: AppenderAttachable
Get an iterator for appenders contained in the parent object.

Specified by:
iteratorForAppenders in interface AppenderAttachable<IAccessEvent>

getAppender

public Appender<IAccessEvent> getAppender(String name)
Description copied from interface: AppenderAttachable
Get an appender by name.

Specified by:
getAppender in interface AppenderAttachable<IAccessEvent>

isAttached

public boolean isAttached(Appender<IAccessEvent> appender)
Description copied from interface: AppenderAttachable
Returns true if the specified appender is in list of attached attached, false otherwise.

Specified by:
isAttached in interface AppenderAttachable<IAccessEvent>

detachAndStopAllAppenders

public void detachAndStopAllAppenders()
Description copied from interface: AppenderAttachable
Detach and stop all previously added appenders.

Specified by:
detachAndStopAllAppenders in interface AppenderAttachable<IAccessEvent>

detachAppender

public boolean detachAppender(Appender<IAccessEvent> appender)
Description copied from interface: AppenderAttachable
Detach the appender passed as parameter from the list of appenders.

Specified by:
detachAppender in interface AppenderAttachable<IAccessEvent>

detachAppender

public boolean detachAppender(String name)
Description copied from interface: AppenderAttachable
Detach the appender with the name passed as parameter from the list of appenders.

Specified by:
detachAppender in interface AppenderAttachable<IAccessEvent>

getInfo

public String getInfo()
Specified by:
getInfo in interface org.apache.catalina.Valve
Overrides:
getInfo in class org.apache.catalina.valves.ValveBase

getStatusManager

public StatusManager getStatusManager()
Description copied from interface: Context
Return the StatusManager instance in use.

Specified by:
getStatusManager in interface Context
Returns:
the StatusManager instance in use.

getPropertyMap

public Map<String,String> getPropertyMap()

putProperty

public void putProperty(String key,
                        String val)
Description copied from interface: Context
Set a property of this context.

Specified by:
putProperty in interface Context

getProperty

public String getProperty(String key)
Description copied from interface: Context
Get the property of this context.

Specified by:
getProperty in interface Context
Specified by:
getProperty in interface PropertyContainer

getCopyOfPropertyMap

public Map<String,String> getCopyOfPropertyMap()
Description copied from interface: Context
Get a copy of the property map

Specified by:
getCopyOfPropertyMap in interface Context
Returns:

getObject

public Object getObject(String key)
Description copied from interface: Context
A Context can act as a store for various objects used by LOGBack components.

Specified by:
getObject in interface Context
Returns:
The object stored under 'key'.

putObject

public void putObject(String key,
                      Object value)
Description copied from interface: Context
Store an object under 'key'. If no object can be found, null is returned.

Specified by:
putObject in interface Context

addFilter

public void addFilter(Filter<IAccessEvent> newFilter)
Description copied from interface: FilterAttachable
Add a filter.

Specified by:
addFilter in interface FilterAttachable<IAccessEvent>

clearAllFilters

public void clearAllFilters()
Specified by:
clearAllFilters in interface FilterAttachable<IAccessEvent>

getCopyOfAttachedFiltersList

public List<Filter<IAccessEvent>> getCopyOfAttachedFiltersList()
Description copied from interface: FilterAttachable
Get a copy of all the filters contained within this FilterAttachable object.

Specified by:
getCopyOfAttachedFiltersList in interface FilterAttachable<IAccessEvent>
Returns:
all attached filters as a list

getFilterChainDecision

public FilterReply getFilterChainDecision(IAccessEvent event)
Description copied from interface: FilterAttachable
Loop through the filters in the chain. As soon as a filter decides on ACCEPT or DENY, then that value is returned. If all of the filters return NEUTRAL, then NEUTRAL is returned.

Specified by:
getFilterChainDecision in interface FilterAttachable<IAccessEvent>

getExecutorService

public ExecutorService getExecutorService()
Description copied from interface: Context
Every context has an ExecutorService which be invoked to execute certain tasks in a separate thread.

Specified by:
getExecutorService in interface Context
Returns:
the executor for this context.

getName

public String getName()
Description copied from interface: Context
Contexts are named objects.

Specified by:
getName in interface Context
Returns:
the name for this context

setName

public void setName(String name)
Description copied from interface: Context
The name of the context can be set only once.

Specified by:
setName in interface Context

getBirthTime

public long getBirthTime()
Description copied from interface: Context
The time at which this context was created, expressed in millisecond elapsed since the epoch (1.1.1970).

Specified by:
getBirthTime in interface Context
Returns:
The time as measured when this class was created.

getConfigurationLock

public Object getConfigurationLock()
Description copied from interface: Context
Object used for synchronization purposes. INTENDED FOR INTERNAL USAGE.

Specified by:
getConfigurationLock in interface Context

addLifecycleListener

public void addLifecycleListener(org.apache.catalina.LifecycleListener arg0)
Specified by:
addLifecycleListener in interface org.apache.catalina.Lifecycle
Overrides:
addLifecycleListener in class org.apache.catalina.util.LifecycleBase

findLifecycleListeners

public org.apache.catalina.LifecycleListener[] findLifecycleListeners()
Specified by:
findLifecycleListeners in interface org.apache.catalina.Lifecycle
Overrides:
findLifecycleListeners in class org.apache.catalina.util.LifecycleBase

removeLifecycleListener

public void removeLifecycleListener(org.apache.catalina.LifecycleListener arg0)
Specified by:
removeLifecycleListener in interface org.apache.catalina.Lifecycle
Overrides:
removeLifecycleListener in class org.apache.catalina.util.LifecycleBase


Copyright © 2005-2011 QOS.ch. All Rights Reserved.