public class ParameterSignature
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.lang.annotation.Annotation[] |
annotations |
private static java.util.Map<java.lang.Class<?>,java.lang.Class<?>> |
CONVERTABLE_TYPES_MAP |
private java.lang.Class<?> |
type |
Modifier | Constructor and Description |
---|---|
private |
ParameterSignature(java.lang.Class<?> type,
java.lang.annotation.Annotation[] annotations) |
Modifier and Type | Method and Description |
---|---|
private static java.util.Map<java.lang.Class<?>,java.lang.Class<?>> |
buildConvertableTypesMap() |
boolean |
canAcceptType(java.lang.Class<?> candidate) |
boolean |
canAcceptValue(java.lang.Object candidate) |
boolean |
canPotentiallyAcceptType(java.lang.Class<?> candidate) |
private <T extends java.lang.annotation.Annotation> |
findDeepAnnotation(java.lang.annotation.Annotation[] annotations,
java.lang.Class<T> annotationType,
int depth) |
<T extends java.lang.annotation.Annotation> |
findDeepAnnotation(java.lang.Class<T> annotationType) |
<T extends java.lang.annotation.Annotation> |
getAnnotation(java.lang.Class<T> annotationType) |
java.util.List<java.lang.annotation.Annotation> |
getAnnotations() |
java.lang.Class<?> |
getType() |
boolean |
hasAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> type) |
private boolean |
isAssignableViaTypeConversion(java.lang.Class<?> targetType,
java.lang.Class<?> candidate) |
private static <T> void |
putSymmetrically(java.util.Map<T,T> map,
T a,
T b) |
private static java.util.ArrayList<ParameterSignature> |
signatures(java.lang.Class<?>[] parameterTypes,
java.lang.annotation.Annotation[][] parameterAnnotations) |
static java.util.List<ParameterSignature> |
signatures(java.lang.reflect.Constructor<?> constructor) |
static java.util.ArrayList<ParameterSignature> |
signatures(java.lang.reflect.Method method) |
private static final java.util.Map<java.lang.Class<?>,java.lang.Class<?>> CONVERTABLE_TYPES_MAP
private final java.lang.Class<?> type
private final java.lang.annotation.Annotation[] annotations
private ParameterSignature(java.lang.Class<?> type, java.lang.annotation.Annotation[] annotations)
private static java.util.Map<java.lang.Class<?>,java.lang.Class<?>> buildConvertableTypesMap()
private static <T> void putSymmetrically(java.util.Map<T,T> map, T a, T b)
public static java.util.ArrayList<ParameterSignature> signatures(java.lang.reflect.Method method)
public static java.util.List<ParameterSignature> signatures(java.lang.reflect.Constructor<?> constructor)
private static java.util.ArrayList<ParameterSignature> signatures(java.lang.Class<?>[] parameterTypes, java.lang.annotation.Annotation[][] parameterAnnotations)
public boolean canAcceptValue(java.lang.Object candidate)
public boolean canAcceptType(java.lang.Class<?> candidate)
public boolean canPotentiallyAcceptType(java.lang.Class<?> candidate)
private boolean isAssignableViaTypeConversion(java.lang.Class<?> targetType, java.lang.Class<?> candidate)
public java.lang.Class<?> getType()
public java.util.List<java.lang.annotation.Annotation> getAnnotations()
public boolean hasAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> type)
public <T extends java.lang.annotation.Annotation> T findDeepAnnotation(java.lang.Class<T> annotationType)
private <T extends java.lang.annotation.Annotation> T findDeepAnnotation(java.lang.annotation.Annotation[] annotations, java.lang.Class<T> annotationType, int depth)
public <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.Class<T> annotationType)