Package org.apache.tapestry5.plastic
Interface MethodInvocation
-
- All Superinterfaces:
AnnotationAccess
,MethodInvocationResult
- All Known Implementing Classes:
AbstractMethodInvocation
public interface MethodInvocation extends MethodInvocationResult, AnnotationAccess
A representation of the invocation of a method that allows the behavior of the method to be advised: either by changing parameter values, or by changing the return value, or by catch or throwing different exceptions. Provides access to annotations on the advised method.- See Also:
MethodAdvice
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Object
getInstance()
The instance on which the method was originally invoked.InstanceContext
getInstanceContext()
Method
getMethod()
Returns the method being invoked.Object
getParameter(int index)
Returns the parameter at the given index.MethodInvocation
proceed()
Proceed with the method invocation, either chaining into the nextMethodAdvice
added to the method, or ultimately into the actual method implementation.MethodInvocation
setCheckedException(Exception exception)
Sets the checked exception; this can be used to indicate failure for the method, or to cancel the thrown exception (by setting the exception to null).MethodInvocation
setParameter(int index, Object newValue)
Changes a parameter value.MethodInvocation
setReturnValue(Object returnValue)
Overrides the return value of the method.-
Methods inherited from interface org.apache.tapestry5.plastic.AnnotationAccess
getAnnotation, hasAnnotation
-
Methods inherited from interface org.apache.tapestry5.plastic.MethodInvocationResult
didThrowCheckedException, getCheckedException, getReturnValue, rethrow
-
-
-
-
Method Detail
-
getInstance
Object getInstance()
The instance on which the method was originally invoked.
-
getInstanceContext
InstanceContext getInstanceContext()
-
proceed
MethodInvocation proceed()
Proceed with the method invocation, either chaining into the nextMethodAdvice
added to the method, or ultimately into the actual method implementation. The method may throw a checked exception, which will be caught and be reported asMethodInvocationResult.didThrowCheckedException()
.- Returns:
- this method invocation, for a fluent API
-
setReturnValue
MethodInvocation setReturnValue(Object returnValue)
Overrides the return value of the method. The value provided will be cast to the actual return type (or, if the return type is a primitive value, the value will be cast to the corresponding wrapper type and then converted to a primitive). Overriding the return value clears any checked exception.- Parameters:
returnValue
-- Returns:
- this method invocation, for a fluent API
- Throws:
NullPointerException
- if the method's return type is a primitive and null is provided
-
getParameter
Object getParameter(int index)
Returns the parameter at the given index. Primitive types will be wrapped as they are returned.- Parameters:
index
- of parameter to access- Returns:
- parameter value
-
setParameter
MethodInvocation setParameter(int index, Object newValue)
Changes a parameter value. The value will be cast to the parameter's type. For primitive types, the value will be cast to the corresponding wrapper type.- Parameters:
index
- index of parameter to modifynewValue
- new value for parameter- Returns:
- this method invocation, for a fluent API
-
setCheckedException
MethodInvocation setCheckedException(Exception exception)
Sets the checked exception; this can be used to indicate failure for the method, or to cancel the thrown exception (by setting the exception to null).- Parameters:
exception
- new checked exception, or null- Returns:
- this method invocation, for a fluent API
-
-