public class MetaAnnotatedElement<T extends java.lang.reflect.AnnotatedElement> extends java.lang.Object implements java.lang.reflect.AnnotatedElement, MetaAnnotated<T>
Modifier and Type | Field and Description |
---|---|
protected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> |
annotations |
protected T |
target |
Constructor and Description |
---|
MetaAnnotatedElement(T element) |
MetaAnnotatedElement(T target,
java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> annotations) |
Modifier and Type | Method and Description |
---|---|
private static boolean |
contains(java.lang.annotation.Annotation[] annotations,
java.lang.Class<? extends java.lang.annotation.Annotation> clazz) |
boolean |
equals(java.lang.Object obj) |
T |
get() |
<T extends java.lang.annotation.Annotation> |
getAnnotation(java.lang.Class<T> annotationClass) |
java.lang.annotation.Annotation[] |
getAnnotations() |
java.lang.annotation.Annotation[] |
getDeclaredAnnotations() |
private static java.util.Collection<java.lang.annotation.Annotation> |
getDeclaredMetaAnnotations(java.lang.Class<? extends java.lang.annotation.Annotation> clazz) |
java.util.Collection<MetaAnnotation<?>> |
getMetaAnnotations() |
private static java.lang.Class<? extends java.lang.annotation.Annotation> |
getMetatype(java.lang.Class<? extends java.lang.annotation.Annotation> clazz) |
int |
hashCode() |
boolean |
isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass) |
private static boolean |
isMetaAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> clazz) |
private static boolean |
isMetatypeAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> type) |
private static boolean |
isSelfAnnotated(java.lang.Class<? extends java.lang.annotation.Annotation> type,
java.lang.String name) |
java.lang.String |
toString() |
protected static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> |
unroll(java.lang.reflect.AnnotatedElement element) |
protected static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> |
unroll(java.lang.annotation.Annotation[] annotations) |
private static void |
unroll(java.lang.Class<? extends java.lang.annotation.Annotation> clazz,
int depth,
java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> found) |
protected java.lang.annotation.Annotation[][] |
unrollParameters(java.lang.annotation.Annotation[][] parameterAnnotations) |
private static boolean |
validTarget(java.lang.Class<? extends java.lang.annotation.Annotation> type) |
protected final java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> annotations
protected final T extends java.lang.reflect.AnnotatedElement target
public MetaAnnotatedElement(T element)
MetaAnnotatedElement(T target, java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> annotations)
public T get()
public java.lang.annotation.Annotation[] getDeclaredAnnotations()
getDeclaredAnnotations
in interface java.lang.reflect.AnnotatedElement
public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
isAnnotationPresent
in interface java.lang.reflect.AnnotatedElement
public <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.Class<T> annotationClass)
getAnnotation
in interface java.lang.reflect.AnnotatedElement
public java.lang.annotation.Annotation[] getAnnotations()
getAnnotations
in interface java.lang.reflect.AnnotatedElement
public java.util.Collection<MetaAnnotation<?>> getMetaAnnotations()
getMetaAnnotations
in interface MetaAnnotated<T extends java.lang.reflect.AnnotatedElement>
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
private static void unroll(java.lang.Class<? extends java.lang.annotation.Annotation> clazz, int depth, java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> found)
private static java.util.Collection<java.lang.annotation.Annotation> getDeclaredMetaAnnotations(java.lang.Class<? extends java.lang.annotation.Annotation> clazz)
private static boolean contains(java.lang.annotation.Annotation[] annotations, java.lang.Class<? extends java.lang.annotation.Annotation> clazz)
private static java.lang.Class<? extends java.lang.annotation.Annotation> getMetatype(java.lang.Class<? extends java.lang.annotation.Annotation> clazz)
private static boolean isMetaAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> clazz)
private static boolean isMetatypeAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> type)
private static boolean isSelfAnnotated(java.lang.Class<? extends java.lang.annotation.Annotation> type, java.lang.String name)
private static boolean validTarget(java.lang.Class<? extends java.lang.annotation.Annotation> type)
protected static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> unroll(java.lang.reflect.AnnotatedElement element)
protected static java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MetaAnnotation<?>> unroll(java.lang.annotation.Annotation[] annotations)
protected java.lang.annotation.Annotation[][] unrollParameters(java.lang.annotation.Annotation[][] parameterAnnotations)