Class NamedMirror
- java.lang.Object
-
- org.immutables.value.processor.meta.NamedMirror
-
- All Implemented Interfaces:
java.lang.annotation.Annotation
public class NamedMirror extends java.lang.Object implements GsonMirrors.Named
NamedMirror used to parse data of AnnotationMirror for original annotationorg.immutables.gson.Gson.Namedduring annotation processing. Interface is being described usingGsonMirrors.Namedannotation, which should be structurally compatible to the annotation being modelled.- See Also:
find(Iterable),from(AnnotationMirror)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classNamedMirror.ValueExtractor
-
Field Summary
Fields Modifier and Type Field Description private javax.lang.model.element.AnnotationMirrorannotationMirrorstatic java.lang.StringMIRROR_QUALIFIED_NAMEstatic java.lang.StringQUALIFIED_NAMEprivate java.lang.Stringvalue
-
Constructor Summary
Constructors Modifier Constructor Description privateNamedMirror(javax.lang.model.element.AnnotationMirror annotationMirror)privateNamedMirror(javax.lang.model.element.TypeElement defaultAnnotationElement)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class<? extends java.lang.annotation.Annotation>annotationType()booleanequals(java.lang.Object other)static com.google.common.base.Optional<NamedMirror>find(java.lang.Iterable<? extends javax.lang.model.element.AnnotationMirror> mirrors)Finds first annotation of this type in an iterable of annotation mirrors.static com.google.common.base.Optional<NamedMirror>find(javax.lang.model.element.Element element)Finds first annotation of this type on the element.static com.google.common.base.Optional<NamedMirror>from(javax.lang.model.element.AnnotationMirror mirror)Tries to convert annotation mirror to this annotation type.static NamedMirrorfrom(javax.lang.model.element.TypeElement element)Creates mirror with default values using annotation element (i.e.static com.google.common.collect.ImmutableList<NamedMirror>fromAll(java.lang.Iterable<? extends javax.lang.model.element.AnnotationMirror> mirrors)Converts iterable of annotation mirrors where all annotation are of this type.javax.lang.model.element.AnnotationMirrorgetAnnotationMirror()inthashCode()static booleanisPresent(javax.lang.model.element.Element annotatedElement)static java.lang.StringmirrorQualifiedName()static java.lang.StringqualifiedName()static java.lang.StringsimpleName()java.lang.StringtoString()java.lang.Stringvalue()
-
-
-
Field Detail
-
QUALIFIED_NAME
public static final java.lang.String QUALIFIED_NAME
- See Also:
- Constant Field Values
-
MIRROR_QUALIFIED_NAME
public static final java.lang.String MIRROR_QUALIFIED_NAME
- See Also:
- Constant Field Values
-
annotationMirror
private final javax.lang.model.element.AnnotationMirror annotationMirror
-
value
private final java.lang.String value
-
-
Method Detail
-
mirrorQualifiedName
public static java.lang.String mirrorQualifiedName()
-
qualifiedName
public static java.lang.String qualifiedName()
-
simpleName
public static java.lang.String simpleName()
-
isPresent
public static boolean isPresent(javax.lang.model.element.Element annotatedElement)
-
find
public static com.google.common.base.Optional<NamedMirror> find(javax.lang.model.element.Element element)
Finds first annotation of this type on the element.- Parameters:
element- annotated element- Returns:
- optional
NamedMirror, present if this annotation found
-
find
public static com.google.common.base.Optional<NamedMirror> find(java.lang.Iterable<? extends javax.lang.model.element.AnnotationMirror> mirrors)
Finds first annotation of this type in an iterable of annotation mirrors.- Parameters:
mirrors- annotation mirrors- Returns:
- optional
NamedMirror, present if this annotation found
-
fromAll
public static com.google.common.collect.ImmutableList<NamedMirror> fromAll(java.lang.Iterable<? extends javax.lang.model.element.AnnotationMirror> mirrors)
Converts iterable of annotation mirrors where all annotation are of this type. Otherwise it fails- Parameters:
mirrors- of this annotation type.- Returns:
- list of converted
NamedMirrors
-
from
public static NamedMirror from(javax.lang.model.element.TypeElement element)
Creates mirror with default values using annotation element (i.e. declaration, not usage).- Parameters:
element- annotation type element- Returns:
NamedMirror
-
from
public static com.google.common.base.Optional<NamedMirror> from(javax.lang.model.element.AnnotationMirror mirror)
Tries to convert annotation mirror to this annotation type.- Parameters:
mirror- annotation mirror- Returns:
- optional
NamedMirror, present if mirror matched this annotation type
-
value
public java.lang.String value()
- Returns:
- value of attribute
value
-
getAnnotationMirror
public javax.lang.model.element.AnnotationMirror getAnnotationMirror()
- Returns:
- underlying annotation mirror
-
annotationType
public java.lang.Class<? extends java.lang.annotation.Annotation> annotationType()
- Specified by:
annotationTypein interfacejava.lang.annotation.Annotation- Returns:
Named.class
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejava.lang.annotation.Annotation- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object other)
- Specified by:
equalsin interfacejava.lang.annotation.Annotation- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
- Specified by:
toStringin interfacejava.lang.annotation.Annotation- Overrides:
toStringin classjava.lang.Object
-
-