Package com.sun.tools.jxc.ap
Class InlineAnnotationReaderImpl
- java.lang.Object
-
- com.sun.xml.bind.v2.model.annotation.AbstractInlineAnnotationReaderImpl<TypeMirror,TypeElement,VariableElement,ExecutableElement>
-
- com.sun.tools.jxc.ap.InlineAnnotationReaderImpl
-
- All Implemented Interfaces:
AnnotationReader<TypeMirror,TypeElement,VariableElement,ExecutableElement>
public final class InlineAnnotationReaderImpl extends AbstractInlineAnnotationReaderImpl<TypeMirror,TypeElement,VariableElement,ExecutableElement>
AnnotationReader
implementation that reads annotation inline from Annoation Processing.- Author:
- Kohsuke Kawaguchi (kk@kohsuke.org)
-
-
Field Summary
Fields Modifier and Type Field Description static InlineAnnotationReaderImpl
theInstance
The singleton instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
fullName(ExecutableElement m)
Gets the fully-qualified name of the method.Annotation[]
getAllFieldAnnotations(VariableElement field, Locatable srcPos)
Gets all the annotations on a field.Annotation[]
getAllMethodAnnotations(ExecutableElement method, Locatable srcPos)
Gets all the annotations on a method.<A extends Annotation>
AgetClassAnnotation(Class<A> a, TypeElement clazz, Locatable srcPos)
Reads an annotation on a class.TypeMirror[]
getClassArrayValue(Annotation a, String name)
Similar toAnnotationReader.getClassValue(Annotation, String)
method but obtains an array parameter.TypeMirror
getClassValue(Annotation a, String name)
Reads a value of an annotation that returns a Class object.<A extends Annotation>
AgetFieldAnnotation(Class<A> a, VariableElement f, Locatable srcPos)
Reads an annotation on a property that consists of a field.<A extends Annotation>
AgetMethodAnnotation(Class<A> a, ExecutableElement method, Locatable srcPos)
<A extends Annotation>
AgetMethodParameterAnnotation(Class<A> a, ExecutableElement m, int paramIndex, Locatable srcPos)
Reads an annotation on a parameter of the method.<A extends Annotation>
AgetPackageAnnotation(Class<A> a, TypeElement clazz, Locatable srcPos)
Reads an annotation on the package that the given class belongs to.boolean
hasClassAnnotation(TypeElement clazz, Class<? extends Annotation> annotationType)
Checks if a class has the annotation.boolean
hasFieldAnnotation(Class<? extends Annotation> annotationType, VariableElement f)
Checks if the given field has an annotation.boolean
hasMethodAnnotation(Class<? extends Annotation> a, ExecutableElement method)
-
Methods inherited from class com.sun.xml.bind.v2.model.annotation.AbstractInlineAnnotationReaderImpl
getErrorHandler, getMethodAnnotation, hasMethodAnnotation, setErrorHandler
-
-
-
-
Field Detail
-
theInstance
public static final InlineAnnotationReaderImpl theInstance
The singleton instance.
-
-
Method Detail
-
getClassAnnotation
public <A extends Annotation> A getClassAnnotation(Class<A> a, TypeElement clazz, Locatable srcPos)
Description copied from interface:AnnotationReader
Reads an annotation on a class.
-
getFieldAnnotation
public <A extends Annotation> A getFieldAnnotation(Class<A> a, VariableElement f, Locatable srcPos)
Description copied from interface:AnnotationReader
Reads an annotation on a property that consists of a field.
-
hasFieldAnnotation
public boolean hasFieldAnnotation(Class<? extends Annotation> annotationType, VariableElement f)
Description copied from interface:AnnotationReader
Checks if the given field has an annotation.
-
hasClassAnnotation
public boolean hasClassAnnotation(TypeElement clazz, Class<? extends Annotation> annotationType)
Description copied from interface:AnnotationReader
Checks if a class has the annotation.
-
getAllFieldAnnotations
public Annotation[] getAllFieldAnnotations(VariableElement field, Locatable srcPos)
Description copied from interface:AnnotationReader
Gets all the annotations on a field.
-
getMethodAnnotation
public <A extends Annotation> A getMethodAnnotation(Class<A> a, ExecutableElement method, Locatable srcPos)
-
hasMethodAnnotation
public boolean hasMethodAnnotation(Class<? extends Annotation> a, ExecutableElement method)
-
getAllMethodAnnotations
public Annotation[] getAllMethodAnnotations(ExecutableElement method, Locatable srcPos)
Description copied from interface:AnnotationReader
Gets all the annotations on a method.srcPos
- the location from which this annotation is read.
-
getMethodParameterAnnotation
public <A extends Annotation> A getMethodParameterAnnotation(Class<A> a, ExecutableElement m, int paramIndex, Locatable srcPos)
Description copied from interface:AnnotationReader
Reads an annotation on a parameter of the method.- Returns:
- null if the annotation was not found.
-
getPackageAnnotation
public <A extends Annotation> A getPackageAnnotation(Class<A> a, TypeElement clazz, Locatable srcPos)
Description copied from interface:AnnotationReader
Reads an annotation on the package that the given class belongs to.
-
getClassValue
public TypeMirror getClassValue(Annotation a, String name)
Description copied from interface:AnnotationReader
Reads a value of an annotation that returns a Class object.Depending on the underlying reflection library, you can't always obtain the
Class
object directly (see the Annotation Processing MirrorTypeException for example), so use this method to avoid that.name
- The name of the annotation parameter to be read.
-
getClassArrayValue
public TypeMirror[] getClassArrayValue(Annotation a, String name)
Description copied from interface:AnnotationReader
Similar toAnnotationReader.getClassValue(Annotation, String)
method but obtains an array parameter.
-
fullName
protected String fullName(ExecutableElement m)
Description copied from class:AbstractInlineAnnotationReaderImpl
Gets the fully-qualified name of the method. Used for error messages.- Specified by:
fullName
in classAbstractInlineAnnotationReaderImpl<TypeMirror,TypeElement,VariableElement,ExecutableElement>
-
-