public class JavaAnnotationMetadataBuilder
extends io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>
AnnotationMetadata for builder for Java to be used at compile time.| Constructor and Description |
|---|
JavaAnnotationMetadataBuilder(javax.lang.model.util.Elements elements,
javax.annotation.processing.Messager messager,
AnnotationUtils annotationUtils,
ModelUtils modelUtils)
Default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addError(javax.lang.model.element.Element originatingElement,
java.lang.String error) |
protected void |
addWarning(javax.lang.model.element.Element originatingElement,
java.lang.String warning) |
protected java.util.List<javax.lang.model.element.Element> |
buildHierarchy(javax.lang.model.element.Element element,
boolean inheritTypeAnnotations,
boolean declaredOnly) |
static void |
clearCaches()
Clears any caches from the last compilation round.
|
protected io.micronaut.inject.visitor.VisitorContext |
createVisitorContext() |
protected javax.lang.model.element.Element |
getAnnotationMember(javax.lang.model.element.Element originatingElement,
java.lang.CharSequence member) |
protected java.lang.String |
getAnnotationMemberName(javax.lang.model.element.Element member) |
protected java.util.Optional<javax.lang.model.element.Element> |
getAnnotationMirror(java.lang.String annotationName) |
protected java.util.List<? extends javax.lang.model.element.AnnotationMirror> |
getAnnotationsForType(javax.lang.model.element.Element element) |
protected java.lang.String |
getAnnotationTypeName(javax.lang.model.element.AnnotationMirror annotationMirror) |
protected io.micronaut.core.value.OptionalValues<?> |
getAnnotationValues(javax.lang.model.element.Element originatingElement,
javax.lang.model.element.Element member,
java.lang.Class<?> annotationType) |
protected java.lang.String |
getDeclaringType(javax.lang.model.element.Element element) |
protected java.lang.String |
getElementName(javax.lang.model.element.Element element) |
protected io.micronaut.inject.annotation.AnnotatedElementValidator |
getElementValidator() |
protected java.lang.String |
getRepeatableName(javax.lang.model.element.AnnotationMirror annotationMirror) |
protected java.lang.String |
getRepeatableNameForType(javax.lang.model.element.Element annotationType) |
protected java.lang.annotation.RetentionPolicy |
getRetentionPolicy(javax.lang.model.element.Element annotation) |
protected javax.lang.model.element.Element |
getTypeForAnnotation(javax.lang.model.element.AnnotationMirror annotationMirror) |
boolean |
hasAnnotation(javax.lang.model.element.Element element,
java.lang.Class<? extends java.lang.annotation.Annotation> ann)
Checks if a method has an annotation.
|
boolean |
hasAnnotation(javax.lang.model.element.Element element,
java.lang.String ann)
Checks if a method has an annotation.
|
static boolean |
hasAnnotation(javax.lang.model.element.ExecutableElement method,
java.lang.Class<? extends java.lang.annotation.Annotation> ann)
Checks if a method has an annotation.
|
protected boolean |
hasAnnotations(javax.lang.model.element.Element element) |
protected boolean |
isExcludedAnnotation(javax.lang.model.element.Element element,
java.lang.String annotationName) |
protected boolean |
isInheritedAnnotation(javax.lang.model.element.AnnotationMirror annotationMirror) |
protected boolean |
isInheritedAnnotationType(javax.lang.model.element.Element annotationType) |
protected boolean |
isMethodOrClassElement(javax.lang.model.element.Element element) |
protected boolean |
isValidationRequired(javax.lang.model.element.Element member) |
protected java.util.Map<? extends javax.lang.model.element.Element,?> |
readAnnotationDefaultValues(javax.lang.model.element.AnnotationMirror annotationMirror) |
protected java.util.Map<? extends javax.lang.model.element.Element,?> |
readAnnotationDefaultValues(java.lang.String annotationTypeName,
javax.lang.model.element.Element element) |
protected java.util.Map<? extends javax.lang.model.element.Element,?> |
readAnnotationRawValues(javax.lang.model.element.AnnotationMirror annotationMirror) |
protected void |
readAnnotationRawValues(javax.lang.model.element.Element originatingElement,
java.lang.String annotationName,
javax.lang.model.element.Element member,
java.lang.String memberName,
java.lang.Object annotationValue,
java.util.Map<java.lang.CharSequence,java.lang.Object> annotationValues) |
protected java.lang.Object |
readAnnotationValue(javax.lang.model.element.Element originatingElement,
javax.lang.model.element.Element member,
java.lang.String memberName,
java.lang.Object annotationValue) |
addMutatedMetadata, annotate, build, build, buildDeclared, buildDeclared, buildForMethod, buildForParent, buildForParent, buildForParent, buildForParents, buildForParents, buildOverridden, clearMutated, copyToRuntime, getAnnotationMappers, getAnnotationTransformers, getMappedAnnotationNames, getMappedAnnotationPackages, isAnnotationMapped, isMetadataMutated, populateAnnotationData, populateAnnotationData, readNestedAnnotationValue, removeAnnotation, removeAnnotationIf, removeStereotype, validateAnnotationValuepublic JavaAnnotationMetadataBuilder(javax.lang.model.util.Elements elements,
javax.annotation.processing.Messager messager,
AnnotationUtils annotationUtils,
ModelUtils modelUtils)
elements - The elementUtilsmessager - The messagerannotationUtils - The annotation utilsmodelUtils - The model utils@Nullable protected io.micronaut.inject.annotation.AnnotatedElementValidator getElementValidator()
getElementValidator in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected void addError(@NonNull
javax.lang.model.element.Element originatingElement,
@NonNull
java.lang.String error)
addError in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected void addWarning(@NonNull
javax.lang.model.element.Element originatingElement,
@NonNull
java.lang.String warning)
addWarning in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.lang.String getAnnotationMemberName(javax.lang.model.element.Element member)
getAnnotationMemberName in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>@Nullable protected java.lang.String getRepeatableName(javax.lang.model.element.AnnotationMirror annotationMirror)
getRepeatableName in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>@Nullable protected java.lang.String getRepeatableNameForType(javax.lang.model.element.Element annotationType)
getRepeatableNameForType in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.util.Optional<javax.lang.model.element.Element> getAnnotationMirror(java.lang.String annotationName)
getAnnotationMirror in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected io.micronaut.inject.visitor.VisitorContext createVisitorContext()
createVisitorContext in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>@NonNull
protected java.lang.annotation.RetentionPolicy getRetentionPolicy(@NonNull
javax.lang.model.element.Element annotation)
getRetentionPolicy in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected boolean isInheritedAnnotation(@NonNull
javax.lang.model.element.AnnotationMirror annotationMirror)
isInheritedAnnotation in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected boolean isInheritedAnnotationType(@NonNull
javax.lang.model.element.Element annotationType)
isInheritedAnnotationType in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected boolean isMethodOrClassElement(javax.lang.model.element.Element element)
isMethodOrClassElement in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>@NonNull
protected java.lang.String getDeclaringType(@NonNull
javax.lang.model.element.Element element)
getDeclaringType in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected javax.lang.model.element.Element getTypeForAnnotation(javax.lang.model.element.AnnotationMirror annotationMirror)
getTypeForAnnotation in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.util.List<? extends javax.lang.model.element.AnnotationMirror> getAnnotationsForType(javax.lang.model.element.Element element)
getAnnotationsForType in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected boolean isExcludedAnnotation(@NonNull
javax.lang.model.element.Element element,
@NonNull
java.lang.String annotationName)
isExcludedAnnotation in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.util.List<javax.lang.model.element.Element> buildHierarchy(javax.lang.model.element.Element element,
boolean inheritTypeAnnotations,
boolean declaredOnly)
buildHierarchy in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.util.Map<? extends javax.lang.model.element.Element,?> readAnnotationRawValues(javax.lang.model.element.AnnotationMirror annotationMirror)
readAnnotationRawValues in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>@Nullable
protected javax.lang.model.element.Element getAnnotationMember(javax.lang.model.element.Element originatingElement,
java.lang.CharSequence member)
getAnnotationMember in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected io.micronaut.core.value.OptionalValues<?> getAnnotationValues(javax.lang.model.element.Element originatingElement,
javax.lang.model.element.Element member,
java.lang.Class<?> annotationType)
getAnnotationValues in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected void readAnnotationRawValues(javax.lang.model.element.Element originatingElement,
java.lang.String annotationName,
javax.lang.model.element.Element member,
java.lang.String memberName,
java.lang.Object annotationValue,
java.util.Map<java.lang.CharSequence,java.lang.Object> annotationValues)
readAnnotationRawValues in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected boolean isValidationRequired(javax.lang.model.element.Element member)
isValidationRequired in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.lang.Object readAnnotationValue(javax.lang.model.element.Element originatingElement,
javax.lang.model.element.Element member,
java.lang.String memberName,
java.lang.Object annotationValue)
readAnnotationValue in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.util.Map<? extends javax.lang.model.element.Element,?> readAnnotationDefaultValues(javax.lang.model.element.AnnotationMirror annotationMirror)
readAnnotationDefaultValues in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.util.Map<? extends javax.lang.model.element.Element,?> readAnnotationDefaultValues(java.lang.String annotationTypeName,
javax.lang.model.element.Element element)
readAnnotationDefaultValues in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.lang.String getAnnotationTypeName(javax.lang.model.element.AnnotationMirror annotationMirror)
getAnnotationTypeName in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>protected java.lang.String getElementName(javax.lang.model.element.Element element)
getElementName in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>public boolean hasAnnotation(javax.lang.model.element.Element element,
java.lang.Class<? extends java.lang.annotation.Annotation> ann)
hasAnnotation in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>element - The methodann - The annotation to look forpublic boolean hasAnnotation(javax.lang.model.element.Element element,
java.lang.String ann)
hasAnnotation in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>element - The methodann - The annotation to look forprotected boolean hasAnnotations(javax.lang.model.element.Element element)
hasAnnotations in class io.micronaut.inject.annotation.AbstractAnnotationMetadataBuilder<javax.lang.model.element.Element,javax.lang.model.element.AnnotationMirror>public static void clearCaches()
public static boolean hasAnnotation(javax.lang.model.element.ExecutableElement method,
java.lang.Class<? extends java.lang.annotation.Annotation> ann)
method - The methodann - The annotation to look for