## org.apache.portals.bridges.portletfilter
Class PortletFilterChain

    java.lang.Object
      org.apache.portals.bridges.portletfilter.PortletFilterChain

public class PortletFilterChain
extends Object

A PortletFilterChain is an object provided to the developer giving a view into the invocation chain of a filtered request for a resource. PortletFilters use the PortletFilterChain to invoke the next filter in the chain, or if the calling filter is the last filter in the chain, to invoke the resource at the end of the chain.

Author:
  Shinsuke Sugaya

Field Summary
`private PortletFilterConfig[]` `filters` PortletFilters.
`static int` `INCREMENT`
`private static org.apache.commons.logging.Log` `log`
`private int` `n` The int which gives the current number of filters in the chain.
`private javax.portlet.Portlet` `portlet` The portlet instance to be executed by this chain.
`static String` `PORTLET_FILTERS`
`private ThreadLocal` `processActionPosition` The int which is used to maintain the current position in the filter chain.
`private ThreadLocal` `renderPosition` The int which is used to maintain the current position in the filter chain.

Constructor Summary
`PortletFilterChain(javax.portlet.PortletConfig config)`

Method Summary
`void` `addPortletFilter(PortletFilterConfig filterConfig)` Add a filter to the set of filters that will be executed in this chain.
`void` `processActionFilter(javax.portlet.ActionRequest request, javax.portlet.ActionResponse response)` Causes the next filter for processActionFilter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the resource at the end of the chain to be invoked.
`void` `release()` Release references to the filters and wrapper executed by this chain.
`void` `renderFilter(javax.portlet.RenderRequest request, javax.portlet.RenderResponse response)` Causes the next filter for renderFilter in the chain to be invoked, or if the calling filter is the last filter in the chain, causes the resource at the end of the chain to be invoked.
`void` `reset()` Reset this filter chain
`void` `setPortlet(javax.portlet.Portlet portlet)` Set Portlet instance.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### log

    private static final org.apache.commons.logging.Log log

### INCREMENT

    public static final int INCREMENT

See Also:
  Constant Field Values

### PORTLET_FILTERS

    public static final String PORTLET_FILTERS

See Also:
  Constant Field Values

### filters

    private PortletFilterConfig[] filters

  PortletFilters.

### renderPosition

    private ThreadLocal renderPosition

  The int which is used to maintain the current position in the filter chain.

### processActionPosition

    private ThreadLocal processActionPosition

  The int which is used to maintain the current position in the filter chain.

### n

    private int n

  The int which gives the current number of filters in the chain.

### portlet

    private javax.portlet.Portlet portlet

  The portlet instance to be executed by this chain.

Constructor Detail

### PortletFilterChain

    public PortletFilterChain(javax.portlet.PortletConfig config)

Method Detail

### renderFilter

    public void renderFilter(javax.portlet.RenderRequest request,
                             javax.portlet.RenderResponse response)
                      throws javax.portlet.PortletException,
                             IOException

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

  Parameters:
    `request` -
    `response` -
  Throws:
    `javax.portlet.PortletException`
    `IOException`

### processActionFilter

    public void processActionFilter(javax.portlet.ActionRequest request,
                                    javax.portlet.ActionResponse response)
                             throws javax.portlet.PortletException,
                                    IOException

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

  Parameters:
    `request` -
    `response` -
  Throws:
    `javax.portlet.PortletException`
    `IOException`

### addPortletFilter

    public void addPortletFilter(PortletFilterConfig filterConfig)

  Add a filter to the set of filters that will be executed in this chain.

  Parameters:
    `filterConfig` - The PortletFilterConfig for the portlet to be executed

### reset

    public void reset()

  Reset this filter chain

### release

    public void release()

  Release references to the filters and wrapper executed by this chain.

### setPortlet

    public void setPortlet(javax.portlet.Portlet portlet)

  Set Portlet instance.

  Parameters:
    `portlet` - The portlet to set.

Copyright © 2005-2007 Apache Software Foundation. All Rights Reserved.