Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.opensymphony.xwork2.interceptor
Class ChainingInterceptor

    java.lang.Object
      com.opensymphony.xwork2.interceptor.AbstractInterceptor
          com.opensymphony.xwork2.interceptor.ChainingInterceptor

All Implemented Interfaces:
  Interceptor, Serializable

    public class ChainingInterceptor

extends AbstractInterceptor

An interceptor that copies all the properties of every object in the value stack to the currently executing object, except for any object that implements `Unchainable`. A collection of optional includes and excludes may be provided to control how and which parameters are copied. Only includes or excludes may be specified. Specifying both results in undefined behavior. See the javadocs for `OgnlUtil.copy(Object, Object, java.util.Map, java.util.Collection, java.util.Collection)` for more information.

It is important to remember that this interceptor does nothing if there are no objects already on the stack. This means two things: One, you can safely apply it to all your actions without any worry of adverse affects. Two, it is up to you to ensure an object exists in the stack prior to invoking this action. The most typical way this is done is through the use of the chain result type, which combines with this interceptor to make up the action chaining feature.

Interceptor parameters:

- excludes (optional) - the list of parameter names to exclude from copying (all others will be included).
- includes (optional) - the list of parameter names to include when copying (all others will be excluded).

Extending the interceptor:

There are no known extension points to this interceptor.

Example code:

     <action name="someAction" class="com.examples.SomeAction">
         <interceptor-ref name="basicStack"/>
         <result name="success" type="chain">otherAction</result>
     </action>

     <action name="otherAction" class="com.examples.OtherAction">
         <interceptor-ref name="chain"/>
         <interceptor-ref name="basicStack"/>
         <result name="success">good_result.ftl</result>
     </action>

Version:
  $Revision: 1142 $
Author:
  $Author: mrdon $, tm_jee ( tm_jee(at)yahoo.co.uk )
See Also:
  Serialized Form

Field Summary
`private static Log` | `_log`
`(package private) Collection` | `excludes`
`(package private) Collection` | `includes`

Constructor Summary
`ChainingInterceptor()`

Method Summary
`Collection` | `getExcludes()`
`Collection` | `getIncludes()`
`String` | `intercept(ActionInvocation invocation)` Override to handle interception
`void` | `setExcludes(Collection excludes)`
`void` | `setIncludes(Collection includes)`

Methods inherited from class com.opensymphony.xwork2.interceptor.AbstractInterceptor
`destroy, init`

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

Field Detail

### _log

    private static final Log _log

### excludes

    Collection excludes

### includes

    Collection includes

Constructor Detail

### ChainingInterceptor

    public ChainingInterceptor()

Method Detail

### intercept

    public String intercept(ActionInvocation invocation)
                     throws Exception

  Description copied from class: `AbstractInterceptor`
  Override to handle interception

  Specified by:
    `intercept` in interface `Interceptor`
  Specified by:
    `intercept` in class `AbstractInterceptor`
  Returns:
    the return code, either returned from `ActionInvocation.invoke()`, or from the interceptor itself.
  Throws:
    `Exception` - any system-level error, as defined in `Action.execute()`.

### getExcludes

    public Collection getExcludes()

### setExcludes

    public void setExcludes(Collection excludes)

### getIncludes

    public Collection getIncludes()

### setIncludes

    public void setIncludes(Collection includes)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2007 OpenSymphony. All Rights Reserved.