Class RepositoryMirror
- java.lang.Object
-
- org.immutables.value.processor.meta.RepositoryMirror
-
- All Implemented Interfaces:
java.lang.annotation.Annotation
public class RepositoryMirror extends java.lang.Object implements MongoMirrors.Repository
RepositoryMirror used to parse data of AnnotationMirror for original annotationorg.immutables.mongo.Mongo.Repositoryduring annotation processing. Interface is being described usingMongoMirrors.Repositoryannotation, 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 classRepositoryMirror.CollectionExtractorprivate static classRepositoryMirror.IndexExtractorprivate static classRepositoryMirror.ReadonlyExtractorprivate static classRepositoryMirror.ValueExtractor
-
Field Summary
Fields Modifier and Type Field Description private javax.lang.model.element.AnnotationMirrorannotationMirrorprivate java.lang.Stringcollectionprivate booleanindexstatic java.lang.StringMIRROR_QUALIFIED_NAMEstatic java.lang.StringQUALIFIED_NAMEprivate booleanreadonlyprivate java.lang.Stringvalue
-
Constructor Summary
Constructors Modifier Constructor Description privateRepositoryMirror(javax.lang.model.element.AnnotationMirror annotationMirror)privateRepositoryMirror(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()java.lang.Stringcollection()booleanequals(java.lang.Object other)static com.google.common.base.Optional<RepositoryMirror>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<RepositoryMirror>find(javax.lang.model.element.Element element)Finds first annotation of this type on the element.static com.google.common.base.Optional<RepositoryMirror>from(javax.lang.model.element.AnnotationMirror mirror)Tries to convert annotation mirror to this annotation type.static RepositoryMirrorfrom(javax.lang.model.element.TypeElement element)Creates mirror with default values using annotation element (i.e.static com.google.common.collect.ImmutableList<RepositoryMirror>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()booleanindex()static booleanisPresent(javax.lang.model.element.Element annotatedElement)static java.lang.StringmirrorQualifiedName()static java.lang.StringqualifiedName()booleanreadonly()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
-
collection
private final java.lang.String collection
-
readonly
private final boolean readonly
-
index
private final boolean index
-
-
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<RepositoryMirror> find(javax.lang.model.element.Element element)
Finds first annotation of this type on the element.- Parameters:
element- annotated element- Returns:
- optional
RepositoryMirror, present if this annotation found
-
find
public static com.google.common.base.Optional<RepositoryMirror> 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
RepositoryMirror, present if this annotation found
-
fromAll
public static com.google.common.collect.ImmutableList<RepositoryMirror> 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
RepositoryMirrors
-
from
public static RepositoryMirror 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:
RepositoryMirror
-
from
public static com.google.common.base.Optional<RepositoryMirror> from(javax.lang.model.element.AnnotationMirror mirror)
Tries to convert annotation mirror to this annotation type.- Parameters:
mirror- annotation mirror- Returns:
- optional
RepositoryMirror, present if mirror matched this annotation type
-
value
public java.lang.String value()
- Returns:
- value of attribute
value
-
collection
public java.lang.String collection()
- Returns:
- value of attribute
collection
-
readonly
public boolean readonly()
- Returns:
- value of attribute
readonly
-
index
public boolean index()
- Returns:
- value of attribute
index
-
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:
Repository.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
-
-