Annotation Type AllArguments
Parameters that are annotated with this annotation will be assigned an array of all arguments of the instrumented method.
By default, this annotation applies a
AllArguments.Assignment.STRICT
assignment of the source method's parameters to the array. This implies that parameters that are not assignable to
the annotated array's component type make the method with this parameter unbindable. To avoid this, you can
use a AllArguments.Assignment.SLACK assignment
which simply skips non-assignable values instead.
Important: Don't confuse this annotation with Advice.AllArguments or
MemberSubstitution.AllArguments. This annotation should be used with
MethodDelegation only.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumA directive for how anAllArgumentsannotation on an array is to be interpreted.static enumA binder for handling theAllArgumentsannotation. -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanDetermines if the array should contain the instance that defines the intercepted value when intercepting a non-static method.booleanDetermines if anullvalue should be assigned if the instrumented method does not declare any parameters.Defines the type ofAllArguments.Assignmenttype that is applied for filling the annotated array with values.
-
Element Details
-
value
AllArguments.Assignment valueDefines the type ofAllArguments.Assignmenttype that is applied for filling the annotated array with values.- Returns:
- The assignment handling to be applied for the annotated parameter.
- Default:
STRICT
-
includeSelf
boolean includeSelfDetermines if the array should contain the instance that defines the intercepted value when intercepting a non-static method.- Returns:
trueif the instance on which the intercepted method should be invoked should be included in the array containing the arguments.
- Default:
false
-
nullIfEmpty
boolean nullIfEmptyDetermines if anullvalue should be assigned if the instrumented method does not declare any parameters.- Returns:
trueif anullvalue should be assigned if the instrumented method does not declare any parameters.
- Default:
false
-