public final class AnnotatedParameter extends AnnotatedMember
Note: as of version 1.7, this type extends AnnotatedMember
, since
it behaves like a member for the most part, but earlier it just extended
Annotated
Modifier and Type | Field and Description |
---|---|
protected int |
_index
Index of the parameter within argument list
|
protected AnnotatedWithParams |
_owner
Member (method, constructor) that this parameter belongs to
|
protected Type |
_type
JDK type of the parameter, possibly contains generic type information
|
_annotations
Constructor and Description |
---|
AnnotatedParameter(AnnotatedWithParams owner,
Type type,
AnnotationMap annotations,
int index) |
Modifier and Type | Method and Description |
---|---|
void |
addOrOverride(Annotation a) |
AnnotatedElement |
getAnnotated()
Since there is no matching JDK element, this method will
always return null
|
<A extends Annotation> |
getAnnotation(Class<A> acls)
Accessor for annotations; all annotations associated with parameters
are properly passed and accessible.
|
Class<?> |
getDeclaringClass() |
Type |
getGenericType()
Full generic type of the annotated element; definition
of what exactly this means depends on sub-class.
|
int |
getIndex()
Accessor for index of this parameter within argument list
|
Member |
getMember() |
int |
getModifiers()
Returns modifiers of the constructor, as parameters do not
have independent modifiers.
|
String |
getName()
Parameters have no names in bytecode (unlike in source code),
will always return empty String ("").
|
AnnotatedWithParams |
getOwner()
Accessor for 'owner' of this parameter; method or constructor that
has this parameter as member of its argument list.
|
Type |
getParameterType() |
Class<?> |
getRawType()
"Raw" type (type-erased class) of the annotated element; definition
of what exactly this means depends on sub-class.
|
void |
setValue(Object pojo,
Object value)
Optional method that can be used to assign value of
this member on given object, if this is a supported
operation for member type.
|
String |
toString() |
AnnotatedParameter |
withAnnotations(AnnotationMap ann)
Fluent factory method that will construct a new instance that uses specified
instance annotations instead of currently configured ones.
|
fixAccess, getAllAnnotations
getType, hasAnnotation, isPublic, withFallBackAnnotationsFrom
protected final AnnotatedWithParams _owner
protected final Type _type
protected final int _index
public AnnotatedParameter(AnnotatedWithParams owner, Type type, AnnotationMap annotations, int index)
public AnnotatedParameter withAnnotations(AnnotationMap ann)
Annotated
withAnnotations
in class Annotated
public void addOrOverride(Annotation a)
public AnnotatedElement getAnnotated()
getAnnotated
in class Annotated
public int getModifiers()
getModifiers
in class Annotated
public String getName()
public <A extends Annotation> A getAnnotation(Class<A> acls)
getAnnotation
in class Annotated
public Type getGenericType()
Annotated
getGenericType
in class Annotated
public Class<?> getRawType()
Annotated
getRawType
in class Annotated
public Class<?> getDeclaringClass()
getDeclaringClass
in class AnnotatedMember
public Member getMember()
getMember
in class AnnotatedMember
public void setValue(Object pojo, Object value) throws UnsupportedOperationException
AnnotatedMember
This is implemented for fiedlds and single-argument methods; but not for constructor parameters or other types of methods.
setValue
in class AnnotatedMember
UnsupportedOperationException
public Type getParameterType()
public AnnotatedWithParams getOwner()
public int getIndex()