public final class AnnotationBinder extends Object
org.hibernate.mapping
package)
Some design description
I tried to remove any link to annotation except from the 2 first level of
method call.
It'll enable to:
- facilitate annotation overriding
- mutualize one day xml and annotation binder (probably a dream though)
- split this huge class in smaller mapping oriented classes
bindSomething usually create the mapping container and is accessed by one of the 2 first level method
makeSomething usually create the mapping container and is accessed by bindSomething[else]
fillSomething take the container into parameter and fill it.Modifier and Type | Method and Description |
---|---|
static void |
bindClass(org.hibernate.annotations.common.reflection.XClass clazzToProcess,
Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> inheritanceStatePerClass,
MetadataBuildingContext context)
Bind a class having JSR175 annotations.
|
static void |
bindDefaults(MetadataBuildingContext context) |
static void |
bindPackage(String packageName,
MetadataBuildingContext context) |
static Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> |
buildInheritanceStates(List<org.hibernate.annotations.common.reflection.XClass> orderedClasses,
MetadataBuildingContext buildingContext)
For the mapped entities build some temporary data-structure containing information about the
inheritance status of a class.
|
static Component |
createComponent(PropertyHolder propertyHolder,
PropertyData inferredData,
boolean isComponentEmbedded,
boolean isIdentifierMapper,
MetadataBuildingContext context) |
protected static void |
defineFetchingStrategy(ToOne toOne,
org.hibernate.annotations.common.reflection.XProperty property) |
static Component |
fillComponent(PropertyHolder propertyHolder,
PropertyData inferredData,
AccessType propertyAccessor,
boolean isNullable,
EntityBinder entityBinder,
boolean isComponentEmbedded,
boolean isIdentifierMapper,
boolean inSecondPass,
MetadataBuildingContext buildingContext,
Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> inheritanceStatePerClass) |
static Component |
fillComponent(PropertyHolder propertyHolder,
PropertyData inferredData,
PropertyData baseInferredData,
AccessType propertyAccessor,
boolean isNullable,
EntityBinder entityBinder,
boolean isComponentEmbedded,
boolean isIdentifierMapper,
boolean inSecondPass,
MetadataBuildingContext buildingContext,
Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> inheritanceStatePerClass) |
static FetchMode |
getFetchMode(FetchType fetch) |
static boolean |
isDefault(org.hibernate.annotations.common.reflection.XClass clazz,
MetadataBuildingContext context) |
public static void bindDefaults(MetadataBuildingContext context)
public static void bindPackage(String packageName, MetadataBuildingContext context)
public static void bindClass(org.hibernate.annotations.common.reflection.XClass clazzToProcess, Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> inheritanceStatePerClass, MetadataBuildingContext context) throws MappingException
clazzToProcess
- entity to bind as XClass
instanceinheritanceStatePerClass
- Meta data about the inheritance relationships for all mapped classesMappingException
- in case there is an configuration errorpublic static Component fillComponent(PropertyHolder propertyHolder, PropertyData inferredData, AccessType propertyAccessor, boolean isNullable, EntityBinder entityBinder, boolean isComponentEmbedded, boolean isIdentifierMapper, boolean inSecondPass, MetadataBuildingContext buildingContext, Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> inheritanceStatePerClass)
public static Component fillComponent(PropertyHolder propertyHolder, PropertyData inferredData, PropertyData baseInferredData, AccessType propertyAccessor, boolean isNullable, EntityBinder entityBinder, boolean isComponentEmbedded, boolean isIdentifierMapper, boolean inSecondPass, MetadataBuildingContext buildingContext, Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> inheritanceStatePerClass)
public static Component createComponent(PropertyHolder propertyHolder, PropertyData inferredData, boolean isComponentEmbedded, boolean isIdentifierMapper, MetadataBuildingContext context)
protected static void defineFetchingStrategy(ToOne toOne, org.hibernate.annotations.common.reflection.XProperty property)
public static boolean isDefault(org.hibernate.annotations.common.reflection.XClass clazz, MetadataBuildingContext context)
public static Map<org.hibernate.annotations.common.reflection.XClass,InheritanceState> buildInheritanceStates(List<org.hibernate.annotations.common.reflection.XClass> orderedClasses, MetadataBuildingContext buildingContext)
orderedClasses
- Order list of all annotated entities and their mapped superclassesInheritanceState
s keyed against their XClass
.Copyright © 2001-2017 Red Hat, Inc. All Rights Reserved.