Package javax.portlet.filter

## Interface FilterChain

    public interface FilterChain

A `FilterChain` is an object provided by the portlet container to the developer giving a view into the invocation chain of a filtered request for a portlet. Filters use the `FilterChain` to invoke the next filter in the chain, or if the calling filter is the last filter in the chain, to invoke the portlet at the end of the chain.

Since:
  2.0

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `doFilter​(ActionRequest request, ActionResponse response)` Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.
`void` `doFilter​(EventRequest request, EventResponse response)` Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.
`void` `doFilter​(RenderRequest request, RenderResponse response)` Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.
`void` `doFilter​(ResourceRequest request, ResourceResponse response)` Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.

### Method Detail

#### doFilter

    void doFilter​(ActionRequest request,
                  ActionResponse response)
           throws java.io.IOException,
                  PortletException

Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.

Parameters:
  `request` - the current action request.
  `response` - the current action response
Throws:
  `java.io.IOException` - if an IO error occurred in the filter processing
  `PortletException` - if a portlet exception occurred in the filter processing

#### doFilter

    void doFilter​(EventRequest request,
                  EventResponse response)
           throws java.io.IOException,
                  PortletException

Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.

Parameters:
  `request` - the current event request.
  `response` - the current event response.
Throws:
  `java.io.IOException` - if an IO error occured in the filter processing
  `PortletException` - if a portlet exception occured in the filter processing

#### doFilter

    void doFilter​(RenderRequest request,
                  RenderResponse response)
           throws java.io.IOException,
                  PortletException

Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.

Parameters:
  `request` - the current render request.
  `response` - the current render response.
Throws:
  `java.io.IOException` - if an IO error occurred in the filter processing
  `PortletException` - if a portlet exception occurred in the filter processing

#### doFilter

    void doFilter​(ResourceRequest request,
                  ResourceResponse response)
           throws java.io.IOException,
                  PortletException

Causes the next filter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the portlet at the end of the chain to be invoked.

Parameters:
  `request` - the current resource request.
  `response` - the current resource response.
Throws:
  `java.io.IOException` - if an IO error occurred in the filter processing
  `PortletException` - if a portlet exception occurred in the filter processing