Annotation Type MemberSubstitution.Origin


  • @Documented
    @Retention(RUNTIME)
    @Target(PARAMETER)
    public static @interface MemberSubstitution.Origin

    Indicates that the annotated parameter should be mapped to a representation of the substituted element or instrumented method. This representation can be a string representation, a constant representing the Class, a Method, Constructor or java.lang.reflect.Executable. It can also load a java.lang.invoke.MethodType, a java.lang.invoke.MethodHandle or a java.lang.invoke.MethodHandles$Lookup.

    Note: A constant representing a Method or Constructor is not cached but is recreated for every delegation.

    Important: Don't confuse this annotation with Origin or Advice.Origin. This annotation should be used only in combination with MemberSubstitution.Substitution.Chain.Step.ForDelegation.

    See Also:
    MemberSubstitution.Substitution.Chain.Step.ForDelegation
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      MemberSubstitution.Source source
      Determines the source that is considered for this annotation which can be either the substituted method, constructor or field, or the instrumented method.
    • Element Detail

      • source

        MemberSubstitution.Source source
        Determines the source that is considered for this annotation which can be either the substituted method, constructor or field, or the instrumented method.
        Returns:
        The source that is considered for this annotation.
        Default:
        net.bytebuddy.asm.MemberSubstitution.Source.SUBSTITUTED_ELEMENT