Annotation Type AllArguments
-
@Documented @Retention(RUNTIME) @Target(PARAMETER) public @interface 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 aAllArguments.Assignment.SLACK
assignment which simply skips non-assignable values instead.Important: Don't confuse this annotation with
Advice.AllArguments
orMemberSubstitution.AllArguments
. This annotation should be used withMethodDelegation
only.
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description boolean
includeSelf
Determines if the array should contain the instance that defines the intercepted value when intercepting a non-static method.boolean
nullIfEmpty
Determines if anull
value should be assigned if the instrumented method does not declare any parameters.AllArguments.Assignment
value
Defines the type ofAllArguments.Assignment
type that is applied for filling the annotated array with values.
-
-
-
Element Detail
-
value
AllArguments.Assignment value
Defines the type ofAllArguments.Assignment
type that is applied for filling the annotated array with values.- Returns:
- The assignment handling to be applied for the annotated parameter.
- Default:
- net.bytebuddy.implementation.bind.annotation.AllArguments.Assignment.STRICT
-
-
-
includeSelf
boolean includeSelf
Determines if the array should contain the instance that defines the intercepted value when intercepting a non-static method.- Returns:
true
if the instance on which the intercepted method should be invoked should be included in the array containing the arguments.
- Default:
- false
-
-