Package jakarta.servlet

# Class GenericFilter

java.lang.Object
jakarta.servlet.GenericFilter

All Implemented Interfaces:
  `Filter`, `FilterConfig`, `Serializable`

Direct Known Subclasses:
  `HttpFilter`

public abstract class GenericFilter extends Object implements Filter, FilterConfig, Serializable
Provides a base class that implements the Filter and FilterConfig interfaces to reduce boilerplate when writing new filters.

Since:
  Servlet 4.0
See Also:
  - `Filter`
  - `FilterConfig`
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`GenericFilter()`

## Method Summary

Modifier and Type
Method
Description
`FilterConfig`
`getFilterConfig()`
Obtain the FilterConfig used to initialise this Filter instance.
`String`
`getFilterName()`
Get the name of the filter.
`String`
`getInitParameter(String name)`
Returns a `String` containing the value of the named initialization parameter, or `null` if the parameter does not exist.
`Enumeration<String>`
`getInitParameterNames()`
Returns the names of the filter's initialization parameters as an `Enumeration` of `String` objects, or an empty `Enumeration` if the filter has no initialization parameters.
`ServletContext`
`getServletContext()`
Returns a reference to the `ServletContext` in which the caller is executing.
`void`
`init()`
Convenience method for sub-classes to save them having to call `super.init(config)`.
`void`
`init(FilterConfig filterConfig)`
Called by the web container to indicate to a filter that it is being placed into service.

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

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

### Methods inherited from interface jakarta.servlet.Filter

`destroy, doFilter`

## Constructor Details

### GenericFilter

public GenericFilter()

## Method Details

### getInitParameter

public String getInitParameter(String name)
Description copied from interface: `FilterConfig`
Returns a `String` containing the value of the named initialization parameter, or `null` if the parameter does not exist.

Specified by:
  `getInitParameter` in interface `FilterConfig`
Parameters:
  `name` - `String` specifying the name of the initialization parameter
Returns:
  `String` containing the value of the initialization parameter

### getInitParameterNames

public Enumeration<String> getInitParameterNames()
Description copied from interface: `FilterConfig`
Returns the names of the filter's initialization parameters as an `Enumeration` of `String` objects, or an empty `Enumeration` if the filter has no initialization parameters.

Specified by:
  `getInitParameterNames` in interface `FilterConfig`
Returns:
  `Enumeration` of `String` objects containing the names of the filter's initialization parameters

### getFilterConfig

public FilterConfig getFilterConfig()
Obtain the FilterConfig used to initialise this Filter instance.

Returns:
  The config previously passed to the `init(FilterConfig)` method

### getServletContext

public ServletContext getServletContext()
Description copied from interface: `FilterConfig`
Returns a reference to the `ServletContext` in which the caller is executing.

Specified by:
  `getServletContext` in interface `FilterConfig`
Returns:
  `ServletContext` object, used by the caller to interact with its servlet container
See Also:
  - `ServletContext`

### init

public void init(FilterConfig filterConfig) throws ServletException
Description copied from interface: `Filter`
Called by the web container to indicate to a filter that it is being placed into service. The servlet container calls the init method exactly once after instantiating the filter. The init method must complete successfully before the filter is asked to do any filtering work.

The web container cannot place the filter into service if the init method either:

- Throws a ServletException
- Does not return within a time period defined by the web container

The default implementation is a NO-OP.

Specified by:
  `init` in interface `Filter`
Parameters:
  `filterConfig` - The configuration information associated with the filter instance being initialised
Throws:
  `ServletException` - if the initialisation fails

### init

public void init() throws ServletException
Convenience method for sub-classes to save them having to call `super.init(config)`. This is a NO-OP by default.

Throws:
  `ServletException` - If an exception occurs that interrupts the Filter's normal operation

### getFilterName

public String getFilterName()
Description copied from interface: `FilterConfig`
Get the name of the filter.

Specified by:
  `getFilterName` in interface `FilterConfig`
Returns:
  The filter-name of this filter as defined in the deployment descriptor.