Annotation Type Advice.Handle


  • @Documented
    @Retention(RUNTIME)
    @Target(PARAMETER)
    public static @interface Advice.Handle

    Indicates that the annotated parameter should load a java.lang.invoke.MethodHandle that represents a method invocation, constructor invocation or field access.

    Important: Don't confuse this annotation with MemberSubstitution.Handle or Handle. This annotation should be used only in combination with Advice.

    See Also:
    Advice, Advice.OnMethodEnter, Advice.OnMethodExit
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.String name
      Returns the name of the method handle.
      java.lang.Class<?>[] parameterTypes
      Returns the parameter types of the method handle.
      java.lang.Class<?> returnType
      Returns the return type of the method handle.
      JavaConstant.MethodHandle.HandleType type
      Returns the type of the method handle to resolve.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      java.lang.Class<?> owner
      Returns the owner type of the method handle, or void, to represent the instrumented type.
      • name

        java.lang.String name
        Returns the name of the method handle.
        Returns:
        The name of the method handle.
      • returnType

        java.lang.Class<?> returnType
        Returns the return type of the method handle.
        Returns:
        The return type of the method handle.
      • parameterTypes

        java.lang.Class<?>[] parameterTypes
        Returns the parameter types of the method handle.
        Returns:
        The parameter types of the method handle.
      • owner

        java.lang.Class<?> owner
        Returns the owner type of the method handle, or void, to represent the instrumented type.
        Returns:
        The owner type of the method handle, or void, to represent the instrumented type.
        Default:
        void.class