Class AbstractJdkAnnotationTarget
java.lang.Object
org.hibernate.models.internal.jdk.AbstractJdkAnnotationTarget
- All Implemented Interfaces:
AnnotationTargetSupport,AnnotationTarget,MutableAnnotationTarget
- Direct Known Subclasses:
JdkClassDetails,JdkFieldDetails,JdkMethodDetails,JdkRecordComponentDetails
AnnotationTarget where we know the annotations up front, but
want to delay processing them until (unless!) they are needed
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.hibernate.models.spi.AnnotationTarget
AnnotationTarget.AnnotationUsageProcessor<T,A extends Annotation>, AnnotationTarget.Kind -
Constructor Summary
ConstructorsConstructorDescriptionAbstractJdkAnnotationTarget(Supplier<Annotation[]> annotationSupplier, ModelsContext modelContext) -
Method Summary
Modifier and TypeMethodDescription<X extends Annotation>
voidaddAnnotationUsage(X annotationUsage) Add an annotation usage to this targetvoidRemoves all annotation usages currently associated with this target.Map<Class<? extends Annotation>, ? extends Annotation> Access to all annotation usages on this target.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.models.spi.AnnotationTarget
forEachAnnotationUsage, forEachAnnotationUsage, forEachDirectAnnotationUsage, fromAnnotations, fromContainers, fromSelfAndContainers, getContainer, getKind, getName, getNamedAnnotationUsage, getRepeatedAnnotationUsages, walkContainers, walkSelfAndContainersMethods inherited from interface org.hibernate.models.internal.AnnotationTargetSupport
asAnnotationDescriptor, asClassDetails, asFieldDetails, asMemberDetails, asMethodDetails, asRecordComponentDetails, forEachRepeatedAnnotationUsages, forEachRepeatedAnnotationUsages, getAnnotationUsage, getAnnotationUsage, getDirectAnnotationUsage, getDirectAnnotationUsage, getDirectAnnotationUsages, getMetaAnnotated, getNamedAnnotationUsage, getNamedAnnotationUsage, getNamedAnnotationUsage, getRepeatedAnnotationUsages, hasAnnotationUsage, hasDirectAnnotationUsage, locateAnnotationUsage, removeAnnotationUsage, replaceAnnotationUsageMethods inherited from interface org.hibernate.models.spi.MutableAnnotationTarget
applyAnnotationUsage, replaceAnnotationUsage
-
Constructor Details
-
AbstractJdkAnnotationTarget
public AbstractJdkAnnotationTarget(Supplier<Annotation[]> annotationSupplier, ModelsContext modelContext)
-
-
Method Details
-
getModelContext
-
getUsageMap
Description copied from interface:AnnotationTargetSupportAccess to all annotation usages on this target.- Specified by:
getUsageMapin interfaceAnnotationTargetSupport
-
clearAnnotationUsages
public void clearAnnotationUsages()Description copied from interface:MutableAnnotationTargetRemoves all annotation usages currently associated with this target. Useful for complete XML mappings.- Specified by:
clearAnnotationUsagesin interfaceAnnotationTargetSupport- Specified by:
clearAnnotationUsagesin interfaceMutableAnnotationTarget
-
addAnnotationUsage
Description copied from interface:MutableAnnotationTargetAdd an annotation usage to this target- Specified by:
addAnnotationUsagein interfaceAnnotationTargetSupport- Specified by:
addAnnotationUsagein interfaceMutableAnnotationTarget
-