Annotation Interface Advice.FieldGetterHandle
- Enclosing class:
Advice
Indicates that the annotated parameter should be mapped to a java.lang.invoke.MethodHandle
representing a field getter.
Setting Advice.FieldValue.value()
is optional. If the value is not set, the field value attempts to bind a setter's
or getter's field if the intercepted method is an accessor method. Otherwise, the binding renders the target method
to be an illegal candidate for binding.
Important: Parameters with this option must not be used when from a constructor in combination with
Advice.OnMethodEnter
and a non-static field where the this
reference is not available.
Important: Don't confuse this annotation with FieldGetterHandle
or
MemberSubstitution.FieldGetterHandle
. This annotation should
be used only in combination with Advice
.
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionClass
<?> Returns the type that declares the field that should be mapped to the annotated parameter.Returns the name of the field.
-
Element Details
-
value
String valueReturns the name of the field.- Returns:
- The name of the field.
- Default:
""
-
declaringType
Class<?> declaringTypeReturns the type that declares the field that should be mapped to the annotated parameter. If this property is set tovoid
, the field is looked up implicitly within the instrumented class's class hierarchy. The value can also be set toTargetType
in order to look up the type on the instrumented type.- Returns:
- The type that declares the field,
void
if this type should be determined implicitly orTargetType
for the instrumented type.
- Default:
void.class
-