org.codehaus.waffle.action.intercept
Class DefaultInterceptorChain

java.lang.Object
  extended by org.codehaus.waffle.action.intercept.DefaultInterceptorChain
All Implemented Interfaces:
InterceptorChain

public class DefaultInterceptorChain
extends java.lang.Object
implements InterceptorChain

This is Waffle's default implementation of the InterceptorChain which iterates over each MethodInterceptor registered with Waffle. Each method interceptor will have an opportunity to intercept the ActionMethod o be invoked.


Constructor Summary
DefaultInterceptorChain(java.util.List<MethodInterceptor> interceptors, ActionMonitor actionMonitor)
           
 
Method Summary
 java.lang.Object proceed(ControllerDefinition controllerDefinition, java.lang.reflect.Method method, java.lang.Object... arguments)
          Continues on to the next MethodInterceptor or invokes the Controller's action method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultInterceptorChain

public DefaultInterceptorChain(java.util.List<MethodInterceptor> interceptors,
                               ActionMonitor actionMonitor)
Method Detail

proceed

public java.lang.Object proceed(ControllerDefinition controllerDefinition,
                                java.lang.reflect.Method method,
                                java.lang.Object... arguments)
                         throws java.lang.IllegalAccessException,
                                java.lang.reflect.InvocationTargetException
Continues on to the next MethodInterceptor or invokes the Controller's action method.

Specified by:
proceed in interface InterceptorChain
Parameters:
controllerDefinition - the controller definition instance which owns the action method being invoked
method - the actual action method to be invoked
arguments - are the argument values to satisfy the action method invocation
Returns:
the result from the action method's invocation, or result from this or another MethodInterceptor
Throws:
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException


Copyright © 2008. All Rights Reserved.