Package org.hibernate.models.internal
Interface ClassDetailsSupport
- All Superinterfaces:
AnnotationTarget,AnnotationTargetSupport,ClassDetails,MutableAnnotationTarget,MutableClassDetails,TypeVariableScope
- All Known Implementing Classes:
DynamicClassDetails,JandexClassDetails,JdkClassDetails
public interface ClassDetailsSupport
extends MutableClassDetails, AnnotationTargetSupport, MutableAnnotationTarget
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.hibernate.models.spi.AnnotationTarget
AnnotationTarget.AnnotationUsageProcessor<T>, AnnotationTarget.KindNested classes/interfaces inherited from interface org.hibernate.models.spi.ClassDetails
ClassDetails.ClassDetailsConsumer -
Field Summary
Fields inherited from interface org.hibernate.models.spi.ClassDetails
CLASS_CLASS_DETAILS, OBJECT_CLASS_DETAILS, VOID_CLASS_DETAILS, VOID_OBJECT_CLASS_DETAILS -
Method Summary
Modifier and TypeMethodDescriptiondefault voidforEachField(IndexedConsumer<FieldDetails> consumer) Visit each fielddefault voidforEachMethod(IndexedConsumer<MethodDetails> consumer) Visit each methoddefault <A extends Annotation>
AnnotationUsage<A>getAnnotationUsage(AnnotationDescriptor<A> type) Get the usage of the given annotation on this target.default <A extends Annotation>
AnnotationUsage<A>getNamedAnnotationUsage(AnnotationDescriptor<A> type, String matchValue, String attributeToMatch) Get a usage of the given annotationtypewhoseattributeToMatchattribute value matches the givenmatchName.default <A extends Annotation>
List<AnnotationUsage<A>>Get all usages of the specifiedannotationTypein this scope.Methods inherited from interface org.hibernate.models.spi.AnnotationTarget
forAllAnnotationUsages, forEachAnnotationUsage, fromAnnotations, getNamedAnnotationUsage, getSingleAnnotationUsage, getSingleAnnotationUsageMethods inherited from interface org.hibernate.models.internal.AnnotationTargetSupport
forEachAnnotationUsage, getAllAnnotationUsages, getAnnotationUsage, getBuildingContext, getMetaAnnotated, getNamedAnnotationUsage, getNamedAnnotationUsage, getRepeatedAnnotationUsages, getUsageMap, hasAnnotationUsage, hasRepeatableAnnotationUsage, locateAnnotationUsageMethods inherited from interface org.hibernate.models.spi.ClassDetails
determineRawClass, findField, findFieldByName, findRecordComponent, findRecordComponentByName, forEachSuper, forSelfAndEachSuper, getClassName, getFields, getGenericSuperType, getImplementedInterfaces, getKind, getMethods, getName, getRecordComponents, getSuperClass, getTypeParameters, isAbstract, isImplementor, isRecord, isResolved, isSuperclass, resolveTypeVariable, toJavaClassMethods inherited from interface org.hibernate.models.spi.MutableAnnotationTarget
addAnnotationUsage, applyAnnotationUsage, applyAnnotationUsage, clearAnnotationUsagesMethods inherited from interface org.hibernate.models.spi.MutableClassDetails
addField, addMethod, clearMemberAnnotationUsages
-
Method Details
-
forEachField
Description copied from interface:ClassDetailsVisit each field- Specified by:
forEachFieldin interfaceClassDetails
-
forEachMethod
Description copied from interface:ClassDetailsVisit each method- Specified by:
forEachMethodin interfaceClassDetails
-
getAnnotationUsage
Description copied from interface:AnnotationTargetGet the usage of the given annotation on this target. For repeatable annotation types (e.g.@NamedQuery), this method will either-- if a single repeatable annotation itself is present, it is returned.
-
if the "containing annotation" is present (e.g.
@NamedQueries),- if the container contains just a single repeatable, that one is returned
-
if the container contains multiple repeatables,
AnnotationAccessExceptionwill be thrown
- Specified by:
getAnnotationUsagein interfaceAnnotationTarget- Specified by:
getAnnotationUsagein interfaceAnnotationTargetSupport- Returns:
- The usage or
null
-
getRepeatedAnnotationUsages
default <A extends Annotation> List<AnnotationUsage<A>> getRepeatedAnnotationUsages(AnnotationDescriptor<A> type) Description copied from interface:AnnotationTargetGet all usages of the specifiedannotationTypein this scope.- Specified by:
getRepeatedAnnotationUsagesin interfaceAnnotationTarget- Specified by:
getRepeatedAnnotationUsagesin interfaceAnnotationTargetSupport
-
getNamedAnnotationUsage
default <A extends Annotation> AnnotationUsage<A> getNamedAnnotationUsage(AnnotationDescriptor<A> type, String matchValue, String attributeToMatch) Description copied from interface:AnnotationTargetGet a usage of the given annotationtypewhoseattributeToMatchattribute value matches the givenmatchName.- Specified by:
getNamedAnnotationUsagein interfaceAnnotationTarget- Specified by:
getNamedAnnotationUsagein interfaceAnnotationTargetSupportmatchValue- The name to match.attributeToMatch- Name of the attribute to match on.
-