Interface AnnotationValue.Loaded<U>
-
- Type Parameters:
U- The represented value's type.
- All Known Implementing Classes:
AnnotationValue.ForAnnotationDescription.Loaded,AnnotationValue.ForConstant.Loaded,AnnotationValue.ForDescriptionArray.Loaded,AnnotationValue.ForEnumerationDescription.Loaded,AnnotationValue.ForEnumerationDescription.Loaded.WithIncompatibleRuntimeType,AnnotationValue.ForEnumerationDescription.WithUnknownConstant.Loaded,AnnotationValue.ForIncompatibleType.Loaded,AnnotationValue.ForMismatchedType.Loaded,AnnotationValue.ForMissingType.Loaded,AnnotationValue.ForMissingValue.Loaded,AnnotationValue.ForTypeDescription.Loaded,AnnotationValue.Loaded.AbstractBase,AnnotationValue.Loaded.AbstractBase.ForUnresolvedProperty
- Enclosing interface:
- AnnotationValue<T,S>
public static interface AnnotationValue.Loaded<U>A loaded variant of anAnnotationValue. While implementations of this value are required to be processed successfully by aClassLoaderthey might still be unresolved. Typical errors on loading an annotation value are:IncompleteAnnotationException: An annotation does not define a value even though no default value for a property is provided.EnumConstantNotPresentException: An annotation defines an unknown value for a known enumeration.AnnotationTypeMismatchException: An annotation property is not of the expected type.
Object.hashCode()andObject.toString()that resemble those used for the annotation values of an actualAnnotationimplementation. Also, instances must implementObject.equals(Object)to returntruefor other instances of this interface that represent the same annotation value.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classAnnotationValue.Loaded.AbstractBase<W>An abstract base implementation of a loaded annotation value.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description AnnotationValue.StategetState()Returns the state of the represented loaded annotation value.booleanrepresents(java.lang.Object value)Verifies if this loaded value represents the supplied loaded value.Uresolve()Resolves the value to the actual value of an annotation.<V> Vresolve(java.lang.Class<? extends V> type)Resolves the value to the actual value of an annotation.
-
-
-
Method Detail
-
getState
AnnotationValue.State getState()
Returns the state of the represented loaded annotation value.- Returns:
- The state represented by this instance.
-
resolve
U resolve()
Resolves the value to the actual value of an annotation. Calling this method might throw a runtime exception if this value is either not defined or not resolved.- Returns:
- The actual annotation value represented by this instance.
-
resolve
<V> V resolve(java.lang.Class<? extends V> type)
Resolves the value to the actual value of an annotation. Calling this method might throw a runtime exception if this value is either not defined or not resolved.- Type Parameters:
V- The value's loaded type.- Parameters:
type- The value's loaded type.- Returns:
- The actual annotation value represented by this instance.
-
represents
boolean represents(java.lang.Object value)
Verifies if this loaded value represents the supplied loaded value.- Parameters:
value- A loaded annotation value.- Returns:
trueif the supplied annotation value is represented by this annotation value.
-
-