Annotation Type SuperMethodHandle


  • @Documented
    @Retention(RUNTIME)
    @Target(PARAMETER)
    public @interface SuperMethodHandle
    A parameter with this annotation is assigned an instance of java.lang.invoke.MethodHandle which invokes the super implementation of this method. If such a method is not available, this annotation causes that this delegation target cannot be bound unless nullIfImpossible() is set to true.
    See Also:
    MethodDelegation, TargetMethodAnnotationDrivenBinder
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      boolean fallbackToDefault
      Indicates that the assigned method should attempt the invocation of an unambiguous default method if no super method is available.
      boolean nullIfImpossible
      Indicates that null should be assigned to this parameter if no super method is invokable.
    • Element Detail

      • fallbackToDefault

        boolean fallbackToDefault
        Indicates that the assigned method should attempt the invocation of an unambiguous default method if no super method is available.
        Returns:
        true if a default method should be invoked if it is not ambiguous and no super class method is available.
        Default:
        true
      • nullIfImpossible

        boolean nullIfImpossible
        Indicates that null should be assigned to this parameter if no super method is invokable.
        Returns:
        true if null should be assigned if no valid method can be assigned.
        Default:
        false