public class Parameter extends Object implements AnnotatedElement
Modifier and Type | Class and Description |
---|---|
static interface |
Parameter.ParamAnnotationHelper<T extends Annotation> |
static interface |
Parameter.ParamCreationFactory<PARAMETER extends Parameter>
A factory service to found in a runtime to be used to instantiate the given
Parameter class. |
static class |
Parameter.ParameterService |
static class |
Parameter.Source
Parameter injection sources type.
|
Modifier | Constructor and Description |
---|---|
protected |
Parameter(Annotation[] markers,
Annotation marker,
Parameter.Source source,
String sourceName,
Class<?> rawType,
Type type,
boolean encoded,
String defaultValue) |
Modifier and Type | Method and Description |
---|---|
static <PARAMETER extends Parameter> |
create(Class concreteClass,
Class declaringClass,
boolean encodeByDefault,
Class<?> rawType,
Type type,
Annotation[] annotations)
Create a parameter model.
|
protected static <PARAMETER extends Parameter> |
create(Class concreteClass,
Class declaringClass,
boolean encodeByDefault,
Class<?> rawType,
Type type,
Annotation[] annotations,
Class<?> parameterClass)
Create a parameter model.
|
static <PARAMETER extends Parameter> |
create(Class concreteClass,
Class declaringClass,
Method javaMethod,
boolean keepEncoded)
Create a list of parameter models for a given Java method handling a resource
method, sub-resource method or a sub-resource locator.
|
protected static <PARAMETER extends Parameter> |
createList(Class concreteClass,
Class declaringClass,
Constructor<?> ctor,
boolean keepEncoded,
Class<?> parameterClass)
Create a list of parameter models for a given resource method handler
injectable constructor.
|
protected static <PARAMETER extends Parameter> |
createList(Class concreteClass,
Class declaringClass,
Method javaMethod,
boolean keepEncoded,
Class parameterClass)
Create a list of parameter models for a given Java method handling a resource
method, sub-resource method or a sub-resource locator.
|
boolean |
equals(Object o) |
<T extends Annotation> |
getAnnotation(Class<T> annotationClass) |
Annotation[] |
getAnnotations() |
Annotation[] |
getDeclaredAnnotations() |
String |
getDefaultValue()
Get the default parameter value.
|
Class<?> |
getRawType()
Get raw type information for the parameter.
|
Parameter.Source |
getSource()
Get the parameter value source type.
|
Annotation |
getSourceAnnotation()
Get the parameter source annotation.
|
String |
getSourceName()
Get the parameter source name, i.e.
|
Type |
getType()
Get generic type information for the parameter.
|
boolean |
hasDefaultValue()
Check if the parameter has a default value set.
|
int |
hashCode() |
boolean |
isAnnotationPresent(Class<? extends Annotation> annotationClass) |
boolean |
isEncoded()
If
true , the injected parameter value should remain encoded. |
boolean |
isQualified()
Check if the parameter is qualified.
|
String |
toString() |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotationsByType
protected Parameter(Annotation[] markers, Annotation marker, Parameter.Source source, String sourceName, Class<?> rawType, Type type, boolean encoded, String defaultValue)
public static <PARAMETER extends Parameter> PARAMETER create(Class concreteClass, Class declaringClass, boolean encodeByDefault, Class<?> rawType, Type type, Annotation[] annotations)
concreteClass
- concrete resource method handler implementation class.declaringClass
- declaring class of the method the parameter belongs to or field that this parameter represents.encodeByDefault
- flag indicating whether the parameter should be encoded by default or not. Note that a presence
of Encoded
annotation in the list of the parameter annotations
will override any
value set in the flag to true
.rawType
- raw Java parameter type.type
- generic Java parameter type.annotations
- parameter annotations.protected static <PARAMETER extends Parameter> PARAMETER create(Class concreteClass, Class declaringClass, boolean encodeByDefault, Class<?> rawType, Type type, Annotation[] annotations, Class<?> parameterClass)
concreteClass
- concrete resource method handler implementation class.declaringClass
- declaring class of the method the parameter belongs to or field that this parameter represents.encodeByDefault
- flag indicating whether the parameter should be encoded by default or not. Note that a presence
of Encoded
annotation in the list of the parameter annotations
will override any
value set in the flag to true
.rawType
- raw Java parameter type.type
- generic Java parameter type.annotations
- parameter annotations.parameterClass
- class of the parameter to be used by Parameter.ParamCreationFactory
public static <PARAMETER extends Parameter> List<PARAMETER> create(Class concreteClass, Class declaringClass, Method javaMethod, boolean keepEncoded)
concreteClass
- concrete resource method handler implementation class.declaringClass
- the class declaring the handling Java method.javaMethod
- Java method handling a resource method, sub-resource
method or a sub-resource locator.keepEncoded
- set to true
to disable automatic decoding
of all the method parameters. (See Encoded
.protected static <PARAMETER extends Parameter> List<PARAMETER> createList(Class concreteClass, Class declaringClass, Method javaMethod, boolean keepEncoded, Class parameterClass)
concreteClass
- concrete resource method handler implementation class.declaringClass
- the class declaring the handling Java method.javaMethod
- Java method handling a resource method, sub-resource
method or a sub-resource locator.keepEncoded
- set to true
to disable automatic decoding
of all the method parameters. (See Encoded
.parameterClass
- Class of a Parameter in returned listprotected static <PARAMETER extends Parameter> List<PARAMETER> createList(Class concreteClass, Class declaringClass, Constructor<?> ctor, boolean keepEncoded, Class<?> parameterClass)
concreteClass
- concrete resource method handler implementation class.declaringClass
- class where the method has been declared.ctor
- injectable constructor of the resource method handler.keepEncoded
- set to true
to disable automatic decoding
of all the constructor parameters. (See Encoded
.public Annotation getSourceAnnotation()
public Parameter.Source getSource()
public String getSourceName()
public boolean isEncoded()
true
, the injected parameter value should remain encoded.true
if the parameter value should remain encoded,
false
otherwise.public boolean hasDefaultValue()
true
if the default parameter value has been set,
false
otherwise.public String getDefaultValue()
null
if no default value has
been set for the parameter.public Class<?> getRawType()
public Type getType()
public boolean isQualified()
false
.public boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
isAnnotationPresent
in interface AnnotatedElement
public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
getAnnotation
in interface AnnotatedElement
public Annotation[] getAnnotations()
getAnnotations
in interface AnnotatedElement
public Annotation[] getDeclaredAnnotations()
getDeclaredAnnotations
in interface AnnotatedElement
Copyright © 2007-2023, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.