Class AnnotatedParameter
- java.lang.Object
-
- org.codehaus.jackson.map.introspect.Annotated
-
- org.codehaus.jackson.map.introspect.AnnotatedMember
-
- org.codehaus.jackson.map.introspect.AnnotatedParameter
-
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 can not 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.Note: as of version 1.7, this type extends
AnnotatedMember
, since it behaves like a member for the most part, but earlier it just extendedAnnotated
-
-
Field Summary
Fields Modifier and Type Field Description protected int
_index
Index of the parameter within argument listprotected AnnotatedWithParams
_owner
Member (method, constructor) that this parameter belongs toprotected Type
_type
JDK type of the parameter, possibly contains generic type information-
Fields inherited from class org.codehaus.jackson.map.introspect.AnnotatedMember
_annotations
-
-
Constructor Summary
Constructors Constructor Description AnnotatedParameter(AnnotatedWithParams owner, Type type, AnnotationMap annotations, int index)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addOrOverride(Annotation a)
AnnotatedElement
getAnnotated()
Since there is no matching JDK element, this method will always return null<A extends Annotation>
AgetAnnotation(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 listMember
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.-
Methods inherited from class org.codehaus.jackson.map.introspect.AnnotatedMember
fixAccess, getAllAnnotations
-
Methods inherited from class org.codehaus.jackson.map.introspect.Annotated
getType, hasAnnotation, isPublic, withFallBackAnnotationsFrom
-
-
-
-
Field Detail
-
_owner
protected final AnnotatedWithParams _owner
Member (method, constructor) that this parameter belongs to- Since:
- 1.7
-
_type
protected final Type _type
JDK type of the parameter, possibly contains generic type information
-
_index
protected final int _index
Index of the parameter within argument list- Since:
- 1.9
-
-
Constructor Detail
-
AnnotatedParameter
public AnnotatedParameter(AnnotatedWithParams owner, Type type, AnnotationMap annotations, int index)
-
-
Method Detail
-
withAnnotations
public AnnotatedParameter withAnnotations(AnnotationMap ann)
Description copied from class:Annotated
Fluent factory method that will construct a new instance that uses specified instance annotations instead of currently configured ones.- Specified by:
withAnnotations
in classAnnotated
-
addOrOverride
public void addOrOverride(Annotation a)
-
getAnnotated
public AnnotatedElement getAnnotated()
Since there is no matching JDK element, this method will always return null- Specified by:
getAnnotated
in classAnnotated
-
getModifiers
public int getModifiers()
Returns modifiers of the constructor, as parameters do not have independent modifiers.- Specified by:
getModifiers
in classAnnotated
-
getName
public String getName()
Parameters have no names in bytecode (unlike in source code), will always return empty String ("").
-
getAnnotation
public <A extends Annotation> A getAnnotation(Class<A> acls)
Accessor for annotations; all annotations associated with parameters are properly passed and accessible.- Specified by:
getAnnotation
in classAnnotated
-
getGenericType
public Type getGenericType()
Description copied from class:Annotated
Full generic type of the annotated element; definition of what exactly this means depends on sub-class.- Specified by:
getGenericType
in classAnnotated
-
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 classAnnotated
-
getDeclaringClass
public Class<?> getDeclaringClass()
- Specified by:
getDeclaringClass
in classAnnotatedMember
-
getMember
public Member getMember()
- Specified by:
getMember
in classAnnotatedMember
-
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 fiedlds and single-argument methods; but not for constructor parameters or other types of methods.
- Specified by:
setValue
in classAnnotatedMember
- 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
- Since:
- 1.9
-
getIndex
public int getIndex()
Accessor for index of this parameter within argument list- Returns:
- Index of this parameter within argument list
- Since:
- 1.9
-
-