Package ch.qos.logback.classic.turbo

## Class TurboFilter

- java.lang.Object
- - ch.qos.logback.core.spi.ContextAwareBase
  - - ch.qos.logback.classic.turbo.TurboFilter

All Implemented Interfaces:
  `ContextAware`, `LifeCycle`

Direct Known Subclasses:
  `DuplicateMessageFilter`, `DynamicThresholdFilter`, `MatchingFilter`, `ReconfigureOnChangeFilter`

    public abstract class TurboFilter
    extends ContextAwareBase
    implements LifeCycle

TurboFilter is a specialized filter with a decide method that takes a bunch of parameters instead of a single event object. The latter is cleaner but the first is much more performant.

For more information about turbo filters, please refer to the online manual at http://logback.qos.ch/manual/filters.html#TurboFilter

Author:
  Ceki Gulcu

### Field Summary

### Fields inherited from class ch.qos.logback.core.spi.ContextAwareBase

`context`

### Constructor Summary

Constructors
`TurboFilter()`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`abstract FilterReply` `decide​(org.slf4j.Marker marker, Logger logger, Level level, java.lang.String format, java.lang.Object[] params, java.lang.Throwable t)` Make a decision based on the multiple parameters passed as arguments.
`java.lang.String` `getName()`
`boolean` `isStarted()`
`void` `setName​(java.lang.String name)`
`void` `start()`
`void` `stop()`

### Methods inherited from class ch.qos.logback.core.spi.ContextAwareBase

`addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, getDeclaredOrigin, getStatusManager, setContext`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### TurboFilter

    public TurboFilter()

### Method Detail

#### decide

    public abstract FilterReply decide​(org.slf4j.Marker marker,
                                       Logger logger,
                                       Level level,
                                       java.lang.String format,
                                       java.lang.Object[] params,
                                       java.lang.Throwable t)

Make a decision based on the multiple parameters passed as arguments. The returned value should be one of ``FilterReply.DENY``, ``FilterReply.NEUTRAL``, or ``FilterReply.ACCEPT``.

Parameters:
  `marker` -
  `logger` -
  `level` -
  `format` -
  `params` -
  `t` -
Returns:

#### start

    public void start()

Specified by:
  `start` in interface `LifeCycle`

#### isStarted

    public boolean isStarted()

Specified by:
  `isStarted` in interface `LifeCycle`

#### stop

    public void stop()

Specified by:
  `stop` in interface `LifeCycle`

#### getName

    public java.lang.String getName()

#### setName

    public void setName​(java.lang.String name)