All Implemented Interfaces:
Serializable

public final class AnnotatedParameter extends AnnotatedMember
Object that represents method parameters, mostly so that associated annotations can be processed conveniently. Note that many of accessors cannot return meaningful values since parameters do not have stand-alone JDK objects associated; so access should mostly be limited to checking annotation values which are properly aggregated and included.
See Also:
  • Field Details

    • _owner

      protected final AnnotatedWithParams _owner
      Member (method, constructor) that this parameter belongs to
    • _type

      protected final JavaType _type
      JDK type of the parameter, possibly contains generic type information
    • _index

      protected final int _index
      Index of the parameter within argument list
  • Constructor Details

  • Method Details

    • withAnnotations

      public AnnotatedParameter withAnnotations(AnnotationMap ann)
      Description copied from class: AnnotatedMember
      Fluent factory method that will construct a new instance that uses specified instance annotations instead of currently configured ones.
      Specified by:
      withAnnotations in class AnnotatedMember
    • getAnnotated

      public AnnotatedElement getAnnotated()
      Since there is no matching JDK element, this method will always return null
      Specified by:
      getAnnotated in class Annotated
    • getModifiers

      public int getModifiers()
      Returns modifiers of the constructor, as parameters do not have independent modifiers.
      Specified by:
      getModifiers in class Annotated
    • getName

      public String getName()
      Parameters have no names in bytecode (unlike in source code), will always return empty String ("").
      Specified by:
      getName in class Annotated
    • getRawType

      public Class<?> getRawType()
      Description copied from class: Annotated
      "Raw" type (type-erased class) of the annotated element; definition of what exactly this means depends on sub-class.
      Specified by:
      getRawType in class Annotated
    • getType

      public JavaType getType()
      Description copied from class: Annotated
      Full generic type of the annotated element; definition of what exactly this means depends on sub-class.
      Specified by:
      getType in class Annotated
    • getDeclaringClass

      public Class<?> getDeclaringClass()
      Description copied from class: AnnotatedMember
      Actual physical class in which this memmber was declared.
      Specified by:
      getDeclaringClass in class AnnotatedMember
    • getMember

      public Member getMember()
      Specified by:
      getMember in class AnnotatedMember
    • setValue

      public void setValue(Object pojo, Object value) throws UnsupportedOperationException
      Description copied from class: AnnotatedMember
      Optional method that can be used to assign value of this member on given object, if this is a supported operation for member type.

      This is implemented for fields and single-argument member methods; but not for constructor parameters or other types of methods (like static methods)

      Specified by:
      setValue in class AnnotatedMember
      Throws:
      UnsupportedOperationException
    • getValue

      public Object getValue(Object pojo) throws UnsupportedOperationException
      Description copied from class: AnnotatedMember
      Optional method that can be used to access the value of this member on given object, if this is a supported operation for member type.

      This is implemented for fields and no-argument member methods; but not for constructor parameters or other types of methods (like static methods)

      Specified by:
      getValue in class AnnotatedMember
      Throws:
      UnsupportedOperationException
    • getParameterType

      public Type getParameterType()
    • getOwner

      public AnnotatedWithParams getOwner()
      Accessor for 'owner' of this parameter; method or constructor that has this parameter as member of its argument list.
      Returns:
      Owner (member or creator) object of this parameter
    • getIndex

      public int getIndex()
      Accessor for index of this parameter within argument list
      Returns:
      Index of this parameter within argument list
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in class Annotated
    • equals

      public boolean equals(Object o)
      Specified by:
      equals in class Annotated
    • toString

      public String toString()
      Specified by:
      toString in class Annotated