Package org.hibernate.boot.internal
Class InFlightMetadataCollectorImpl
- java.lang.Object
-
- org.hibernate.boot.internal.InFlightMetadataCollectorImpl
-
- All Implemented Interfaces:
Metadata,InFlightMetadataCollector,MetadataImplementor,Mapping
public class InFlightMetadataCollectorImpl extends Object implements InFlightMetadataCollector
The implementation of the in-flight metadata collector contract.The usage expectation is that this class is used until all Metadata info is collected and then
buildMetadataInstance(org.hibernate.boot.spi.MetadataBuildingContext)is called to generate the complete (and immutable) Metadata object.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.hibernate.boot.spi.InFlightMetadataCollector
InFlightMetadataCollector.CollectionTypeRegistrationDescriptor, InFlightMetadataCollector.DelayedPropertyReferenceHandler, InFlightMetadataCollector.DuplicateSecondaryTableException, InFlightMetadataCollector.EntityTableXref
-
-
Constructor Summary
Constructors Constructor Description InFlightMetadataCollectorImpl(BootstrapContext bootstrapContext, MetadataBuildingOptions options)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAttributeConverter(Class<? extends jakarta.persistence.AttributeConverter<?,?>> converterClass)Apply anAttributeConvertervoidaddAttributeConverter(ConverterDescriptor descriptor)Apply the descriptor for anAttributeConvertervoidaddAuxiliaryDatabaseObject(AuxiliaryDatabaseObject auxiliaryDatabaseObject)Add metadata pertaining to an auxiliary database object to this repository.AnnotatedClassTypeaddClassType(org.hibernate.annotations.common.reflection.XClass clazz)voidaddCollectionBinding(Collection collection)Add collection mapping metadata to this repository.voidaddCollectionTypeRegistration(CollectionTypeRegistration registrationAnnotation)voidaddCollectionTypeRegistration(CollectionClassification classification, InFlightMetadataCollector.CollectionTypeRegistrationDescriptor descriptor)voidaddColumnNameBinding(Table table, String logicalName, Column column)voidaddColumnNameBinding(Table table, Identifier logicalName, Column column)voidaddDefaultIdentifierGenerator(IdentifierGeneratorDefinition generator)voidaddDefaultNamedNativeQuery(NamedNativeQueryDefinition query)voidaddDefaultNamedProcedureCall(NamedProcedureCallDefinitionImpl definition)voidaddDefaultQuery(NamedHqlQueryDefinition queryDefinition)voidaddDefaultResultSetMapping(NamedResultSetMappingDescriptor definition)voidaddDelayedPropertyReferenceHandler(InFlightMetadataCollector.DelayedPropertyReferenceHandler handler)TableaddDenormalizedTable(String schemaName, String catalogName, String name, boolean isAbstract, String subselectFragment, Table includedTable, MetadataBuildingContext buildingContext)Adds a 'denormalized table' to this repository.voidaddEntityBinding(PersistentClass persistentClass)Add the PersistentClass for an entity mapping.InFlightMetadataCollector.EntityTableXrefaddEntityTableXref(String entityName, Identifier primaryTableLogicalName, Table primaryTable, InFlightMetadataCollector.EntityTableXref superEntityTableXref)voidaddFetchProfile(FetchProfile profile)voidaddFilterDefinition(FilterDefinition filterDefinition)Adds a filter definition to this repository.voidaddIdentifierGenerator(IdentifierGeneratorDefinition generator)voidaddImport(String importName, String entityName)Adds an import (HQL entity rename).voidaddJavaTypeRegistration(Class<?> javaType, JavaType<?> jtd)voidaddJdbcTypeRegistration(int typeCode, JdbcType jdbcType)voidaddJpaIndexHolders(Table table, List<JPAIndexHolder> holders)voidaddMappedBy(String entityName, String propertyName, String inversePropertyName)voidaddMappedSuperclass(Class type, MappedSuperclass mappedSuperclass)voidaddNamedEntityGraph(NamedEntityGraphDefinition definition)Adds metadata for a named entity graph to this repositoryvoidaddNamedNativeQuery(NamedNativeQueryDefinition def)Adds metadata for a named SQL query to this collector.voidaddNamedProcedureCallDefinition(NamedProcedureCallDefinition definition)Adds metadata for a named stored procedure call to this collector.voidaddNamedQuery(NamedHqlQueryDefinition def)Adds metadata for a named query to this repository.voidaddPropertyAnnotatedWithMapsId(org.hibernate.annotations.common.reflection.XClass entityType, PropertyData property)voidaddPropertyAnnotatedWithMapsIdSpecj(org.hibernate.annotations.common.reflection.XClass entityType, PropertyData property, String mapsIdValue)voidaddPropertyReference(String referencedClass, String propertyName)voidaddPropertyReferencedAssociation(String entityName, String propertyName, String propertyRef)voidaddRegisteredConversion(RegisteredConversion conversion)voidaddResultSetMapping(NamedResultSetMappingDescriptor resultSetMappingDescriptor)Adds the metadata for a named SQL result set mapping to this collector.voidaddSecondPass(SecondPass secondPass)voidaddSecondPass(SecondPass secondPass, boolean onTopOfTheQueue)TableaddTable(String schemaName, String catalogName, String name, String subselectFragment, boolean isAbstract, MetadataBuildingContext buildingContext)Adds table metadata to this repository returning the created metadata instance.voidaddTableNameBinding(String schema, String catalog, String logicalName, String realTableName, Table denormalizedSuperTable)voidaddTableNameBinding(Identifier logicalName, Table table)voidaddToOneAndIdProperty(org.hibernate.annotations.common.reflection.XClass entityType, PropertyData property)voidaddTypeDefinition(TypeDefinition typeDefinition)Adds a type definition to this metadata repository.voidaddUniqueConstraintHolders(Table table, List<UniqueConstraintHolder> uniqueConstraintHolders)voidaddUniqueConstraints(Table table, List uniqueConstraints)voidaddUniquePropertyReference(String referencedClass, String propertyName)voidapplyResultSetMapping(NamedResultSetMappingDescriptor resultSetMappingDescriptor)MetadataImplbuildMetadataInstance(MetadataBuildingContext buildingContext)Builds the complete and immutable Metadata instance from the collected info.NamedObjectRepositorybuildNamedQueryRepository(SessionFactoryImplementor sessionFactory)SessionFactorybuildSessionFactory()Short-hand form of building aSessionFactorythrough the builder without any additional option overrides.Collection<Table>collectTableMappings()InFlightMetadataCollector.CollectionTypeRegistrationDescriptorfindCollectionTypeRegistration(CollectionClassification classification)Class<? extends CompositeUserType<?>>findRegisteredCompositeUserType(Class<?> embeddableType)Class<? extends EmbeddableInstantiator>findRegisteredEmbeddableInstantiator(Class<?> embeddableType)ConverterAutoApplyHandlergetAttributeConverterAutoApplyHandler()BootstrapContextgetBootstrapContext()AnnotatedClassTypegetClassType(org.hibernate.annotations.common.reflection.XClass clazz)CollectiongetCollectionBinding(String role)Retrieves the collection mapping metadata for the given collection role.Collection<Collection>getCollectionBindings()Retrieves the Collection metadata representation for all known collections.Set<String>getContributors()All of the known model contributorsDatabasegetDatabase()Retrieve the database model.PersistentClassgetEntityBinding(String entityName)Retrieves the PersistentClass entity mapping metadata representation for the given entity name.Map<String,PersistentClass>getEntityBindingMap()Needed for SecondPass handlingCollection<PersistentClass>getEntityBindings()Retrieves the PersistentClass entity metadata representation for all known entities.InFlightMetadataCollector.EntityTableXrefgetEntityTableXref(String entityName)FetchProfilegetFetchProfile(String name)Collection<FetchProfile>getFetchProfiles()FilterDefinitiongetFilterDefinition(String name)Retrieves a filter definition by name.Map<String,FilterDefinition>getFilterDefinitions()Retrieves the complete map of filter definitions.StringgetFromMappedBy(String entityName, String propertyName)IdentifierGeneratorDefinitiongetIdentifierGenerator(String name)StringgetIdentifierPropertyName(String entityName)TypegetIdentifierType(String entityName)Map<String,String>getImports()Retrieves all defined imports (class renames).Map<String,Join>getJoins(String entityName)StringgetLogicalColumnName(Table table, String physicalName)StringgetLogicalColumnName(Table table, Identifier physicalName)StringgetLogicalTableName(Table ownerTable)MappedSuperclassgetMappedSuperclass(Class type)Set<MappedSuperclass>getMappedSuperclassMappingsCopy()MetadataBuildingOptionsgetMetadataBuildingOptions()Access to the options used to build this MetadataNamedEntityGraphDefinitiongetNamedEntityGraph(String name)Map<String,NamedEntityGraphDefinition>getNamedEntityGraphs()NamedHqlQueryDefinitiongetNamedHqlQueryMapping(String name)Retrieve named query metadata by name.NamedNativeQueryDefinitiongetNamedNativeQueryMapping(String name)Retrieve named SQL query metadata.NamedProcedureCallDefinitiongetNamedProcedureCallMapping(String name)Retrieve named procedure metadata.StringgetPhysicalColumnName(Table table, String logicalName)StringgetPhysicalColumnName(Table table, Identifier logicalName)StringgetPhysicalTableName(String logicalName)StringgetPhysicalTableName(Identifier logicalName)PropertyDatagetPropertyAnnotatedWithIdAndToOne(org.hibernate.annotations.common.reflection.XClass entityType, String propertyName)PropertyDatagetPropertyAnnotatedWithMapsId(org.hibernate.annotations.common.reflection.XClass entityType, String propertyName)StringgetPropertyReferencedAssociation(String entityName, String propertyName)TypegetReferencedPropertyType(String entityName, String propertyName)NamedResultSetMappingDescriptorgetResultSetMapping(String name)Retrieve the metadata for a named SQL result set mapping.SessionFactoryBuildergetSessionFactoryBuilder()Get the builder forSessionFactoryinstances based on this metamodel.Map<String,SqmFunctionDescriptor>getSqlFunctionMap()TypeConfigurationgetTypeConfiguration()Access to the TypeConfigurationTypeDefinitiongetTypeDefinition(String registrationKey)Retrieve a type definition by name.TypeDefinitionRegistrygetTypeDefinitionRegistry()UUIDgetUUID()Gets theUUIDfor this metamodel.voidinitSessionFactory(SessionFactoryImplementor sessionFactory)booleanisInSecondPass()NaturalIdUniqueKeyBinderlocateNaturalIdUniqueKeyBinder(String entityName)voidprocessSecondPasses(MetadataBuildingContext buildingContext)Ugh! But we need this done before we ask Envers to produce its entities.voidregisterComponent(Component component)voidregisterCompositeUserType(Class<?> embeddableType, Class<? extends CompositeUserType<?>> userType)voidregisterEmbeddableInstantiator(Class<?> embeddableType, Class<? extends EmbeddableInstantiator> instantiator)voidregisterNaturalIdUniqueKeyBinder(String entityName, NaturalIdUniqueKeyBinder ukBinder)voidregisterValueMappingResolver(Function<MetadataBuildingContext,Boolean> resolver)protected voidsecondPassCompileForeignKeys(Table table, Set<ForeignKey> done, MetadataBuildingContext buildingContext)voidvalidate()voidvisitNamedHqlQueryDefinitions(Consumer<NamedHqlQueryDefinition> definitionConsumer)Visit all named HQL query definitionsvoidvisitNamedNativeQueryDefinitions(Consumer<NamedNativeQueryDefinition> definitionConsumer)Visit all named native query definitionsvoidvisitNamedProcedureCallDefinition(Consumer<NamedProcedureCallDefinition> definitionConsumer)Visit all named callable query definitionsvoidvisitNamedResultSetMappingDefinition(Consumer<NamedResultSetMappingDescriptor> definitionConsumer)Visit all named SQL result set mapping definitionsvoidvisitRegisteredComponents(Consumer<Component> consumer)
-
-
-
Constructor Detail
-
InFlightMetadataCollectorImpl
public InFlightMetadataCollectorImpl(BootstrapContext bootstrapContext, MetadataBuildingOptions options)
-
-
Method Detail
-
getUUID
public UUID getUUID()
Description copied from interface:MetadataGets theUUIDfor this metamodel.
-
getMetadataBuildingOptions
public MetadataBuildingOptions getMetadataBuildingOptions()
Description copied from interface:MetadataImplementorAccess to the options used to build this Metadata- Specified by:
getMetadataBuildingOptionsin interfaceMetadataImplementor- Returns:
- Access to the MetadataBuildingOptions
-
getBootstrapContext
public BootstrapContext getBootstrapContext()
- Specified by:
getBootstrapContextin interfaceInFlightMetadataCollector
-
getTypeConfiguration
public TypeConfiguration getTypeConfiguration()
Description copied from interface:MetadataImplementorAccess to the TypeConfiguration- Specified by:
getTypeConfigurationin interfaceMetadataImplementor- Returns:
- Access to the TypeConfiguration
-
getDatabase
public Database getDatabase()
Description copied from interface:MetadataRetrieve the database model.- Specified by:
getDatabasein interfaceMetadata- Returns:
- The database model.
-
buildNamedQueryRepository
public NamedObjectRepository buildNamedQueryRepository(SessionFactoryImplementor sessionFactory)
- Specified by:
buildNamedQueryRepositoryin interfaceMetadataImplementor
-
getSqlFunctionMap
public Map<String,SqmFunctionDescriptor> getSqlFunctionMap()
- Specified by:
getSqlFunctionMapin interfaceMetadata
-
getContributors
public Set<String> getContributors()
Description copied from interface:MetadataAll of the known model contributors- Specified by:
getContributorsin interfaceMetadata
-
validate
public void validate() throws MappingException- Specified by:
validatein interfaceMetadataImplementor- Throws:
MappingException
-
getMappedSuperclassMappingsCopy
public Set<MappedSuperclass> getMappedSuperclassMappingsCopy()
- Specified by:
getMappedSuperclassMappingsCopyin interfaceMetadataImplementor
-
initSessionFactory
public void initSessionFactory(SessionFactoryImplementor sessionFactory)
- Specified by:
initSessionFactoryin interfaceMetadataImplementor
-
registerComponent
public void registerComponent(Component component)
- Specified by:
registerComponentin interfaceInFlightMetadataCollector
-
visitRegisteredComponents
public void visitRegisteredComponents(Consumer<Component> consumer)
- Specified by:
visitRegisteredComponentsin interfaceMetadataImplementor
-
getSessionFactoryBuilder
public SessionFactoryBuilder getSessionFactoryBuilder()
Description copied from interface:MetadataGet the builder forSessionFactoryinstances based on this metamodel.- Specified by:
getSessionFactoryBuilderin interfaceMetadata- Returns:
- The builder for
SessionFactoryinstances.
-
buildSessionFactory
public SessionFactory buildSessionFactory()
Description copied from interface:MetadataShort-hand form of building aSessionFactorythrough the builder without any additional option overrides.- Specified by:
buildSessionFactoryin interfaceMetadata- Returns:
- THe built SessionFactory.
-
getEntityBindings
public Collection<PersistentClass> getEntityBindings()
Description copied from interface:MetadataRetrieves the PersistentClass entity metadata representation for all known entities. Returned collection is immutable- Specified by:
getEntityBindingsin interfaceMetadata- Returns:
- All PersistentClass representations.
-
getEntityBindingMap
public Map<String,PersistentClass> getEntityBindingMap()
Description copied from interface:InFlightMetadataCollectorNeeded for SecondPass handling- Specified by:
getEntityBindingMapin interfaceInFlightMetadataCollector
-
getEntityBinding
public PersistentClass getEntityBinding(String entityName)
Description copied from interface:MetadataRetrieves the PersistentClass entity mapping metadata representation for the given entity name.- Specified by:
getEntityBindingin interfaceMetadata- Parameters:
entityName- The entity name for which to retrieve the metadata.- Returns:
- The entity mapping metadata, or
nullif no matching entity found.
-
addEntityBinding
public void addEntityBinding(PersistentClass persistentClass) throws DuplicateMappingException
Description copied from interface:InFlightMetadataCollectorAdd the PersistentClass for an entity mapping.- Specified by:
addEntityBindingin interfaceInFlightMetadataCollector- Parameters:
persistentClass- The entity metadata- Throws:
DuplicateMappingException- Indicates there was already an entry corresponding to the given entity name.
-
getCollectionBindings
public Collection<Collection> getCollectionBindings()
Description copied from interface:MetadataRetrieves the Collection metadata representation for all known collections. Returned collection is immutable- Specified by:
getCollectionBindingsin interfaceMetadata- Returns:
- All Collection representations.
-
getCollectionBinding
public Collection getCollectionBinding(String role)
Description copied from interface:MetadataRetrieves the collection mapping metadata for the given collection role.- Specified by:
getCollectionBindingin interfaceMetadata- Parameters:
role- The collection role for which to retrieve the metadata.- Returns:
- The collection mapping metadata, or
nullif no matching collection found.
-
addCollectionBinding
public void addCollectionBinding(Collection collection) throws DuplicateMappingException
Description copied from interface:InFlightMetadataCollectorAdd collection mapping metadata to this repository.- Specified by:
addCollectionBindingin interfaceInFlightMetadataCollector- Parameters:
collection- The collection metadata- Throws:
DuplicateMappingException- Indicates there was already an entry corresponding to the given collection role
-
getTypeDefinitionRegistry
public TypeDefinitionRegistry getTypeDefinitionRegistry()
- Specified by:
getTypeDefinitionRegistryin interfaceInFlightMetadataCollector
-
getTypeDefinition
public TypeDefinition getTypeDefinition(String registrationKey)
Description copied from interface:MetadataRetrieve a type definition by name.- Specified by:
getTypeDefinitionin interfaceMetadata- Returns:
- The named type definition, or
null
-
addTypeDefinition
public void addTypeDefinition(TypeDefinition typeDefinition)
Description copied from interface:InFlightMetadataCollectorAdds a type definition to this metadata repository.- Specified by:
addTypeDefinitionin interfaceInFlightMetadataCollector- Parameters:
typeDefinition- The named type definition to add.- See Also:
InFlightMetadataCollector.getTypeDefinitionRegistry()
-
registerValueMappingResolver
public void registerValueMappingResolver(Function<MetadataBuildingContext,Boolean> resolver)
- Specified by:
registerValueMappingResolverin interfaceInFlightMetadataCollector
-
addJavaTypeRegistration
public void addJavaTypeRegistration(Class<?> javaType, JavaType<?> jtd)
- Specified by:
addJavaTypeRegistrationin interfaceInFlightMetadataCollector
-
addJdbcTypeRegistration
public void addJdbcTypeRegistration(int typeCode, JdbcType jdbcType)- Specified by:
addJdbcTypeRegistrationin interfaceInFlightMetadataCollector
-
registerEmbeddableInstantiator
public void registerEmbeddableInstantiator(Class<?> embeddableType, Class<? extends EmbeddableInstantiator> instantiator)
- Specified by:
registerEmbeddableInstantiatorin interfaceInFlightMetadataCollector
-
findRegisteredEmbeddableInstantiator
public Class<? extends EmbeddableInstantiator> findRegisteredEmbeddableInstantiator(Class<?> embeddableType)
- Specified by:
findRegisteredEmbeddableInstantiatorin interfaceInFlightMetadataCollector
-
registerCompositeUserType
public void registerCompositeUserType(Class<?> embeddableType, Class<? extends CompositeUserType<?>> userType)
- Specified by:
registerCompositeUserTypein interfaceInFlightMetadataCollector
-
findRegisteredCompositeUserType
public Class<? extends CompositeUserType<?>> findRegisteredCompositeUserType(Class<?> embeddableType)
- Specified by:
findRegisteredCompositeUserTypein interfaceInFlightMetadataCollector
-
addCollectionTypeRegistration
public void addCollectionTypeRegistration(CollectionTypeRegistration registrationAnnotation)
- Specified by:
addCollectionTypeRegistrationin interfaceInFlightMetadataCollector
-
addCollectionTypeRegistration
public void addCollectionTypeRegistration(CollectionClassification classification, InFlightMetadataCollector.CollectionTypeRegistrationDescriptor descriptor)
- Specified by:
addCollectionTypeRegistrationin interfaceInFlightMetadataCollector
-
findCollectionTypeRegistration
public InFlightMetadataCollector.CollectionTypeRegistrationDescriptor findCollectionTypeRegistration(CollectionClassification classification)
- Specified by:
findCollectionTypeRegistrationin interfaceInFlightMetadataCollector
-
addAttributeConverter
public void addAttributeConverter(Class<? extends jakarta.persistence.AttributeConverter<?,?>> converterClass)
Description copied from interface:InFlightMetadataCollectorApply anAttributeConverter- Specified by:
addAttributeConverterin interfaceInFlightMetadataCollector
-
addAttributeConverter
public void addAttributeConverter(ConverterDescriptor descriptor)
Description copied from interface:InFlightMetadataCollectorApply the descriptor for anAttributeConverter- Specified by:
addAttributeConverterin interfaceInFlightMetadataCollector
-
addRegisteredConversion
public void addRegisteredConversion(RegisteredConversion conversion)
- Specified by:
addRegisteredConversionin interfaceInFlightMetadataCollector
-
getAttributeConverterAutoApplyHandler
public ConverterAutoApplyHandler getAttributeConverterAutoApplyHandler()
- Specified by:
getAttributeConverterAutoApplyHandlerin interfaceInFlightMetadataCollector
-
getFilterDefinitions
public Map<String,FilterDefinition> getFilterDefinitions()
Description copied from interface:MetadataRetrieves the complete map of filter definitions. Returned map is immutable- Specified by:
getFilterDefinitionsin interfaceMetadata- Returns:
- The filter definition map.
-
getFilterDefinition
public FilterDefinition getFilterDefinition(String name)
Description copied from interface:MetadataRetrieves a filter definition by name.- Specified by:
getFilterDefinitionin interfaceMetadata- Parameters:
name- The name of the filter definition to retrieve .- Returns:
- The filter definition, or
null.
-
addFilterDefinition
public void addFilterDefinition(FilterDefinition filterDefinition)
Description copied from interface:InFlightMetadataCollectorAdds a filter definition to this repository.- Specified by:
addFilterDefinitionin interfaceInFlightMetadataCollector- Parameters:
filterDefinition- The filter definition to add.
-
getFetchProfiles
public Collection<FetchProfile> getFetchProfiles()
- Specified by:
getFetchProfilesin interfaceMetadata
-
getFetchProfile
public FetchProfile getFetchProfile(String name)
- Specified by:
getFetchProfilein interfaceMetadata
-
addFetchProfile
public void addFetchProfile(FetchProfile profile)
- Specified by:
addFetchProfilein interfaceInFlightMetadataCollector
-
getIdentifierGenerator
public IdentifierGeneratorDefinition getIdentifierGenerator(String name)
- Specified by:
getIdentifierGeneratorin interfaceMetadata
-
collectTableMappings
public Collection<Table> collectTableMappings()
- Specified by:
collectTableMappingsin interfaceMetadata
-
addIdentifierGenerator
public void addIdentifierGenerator(IdentifierGeneratorDefinition generator)
- Specified by:
addIdentifierGeneratorin interfaceInFlightMetadataCollector
-
addDefaultIdentifierGenerator
public void addDefaultIdentifierGenerator(IdentifierGeneratorDefinition generator)
- Specified by:
addDefaultIdentifierGeneratorin interfaceInFlightMetadataCollector
-
getNamedEntityGraph
public NamedEntityGraphDefinition getNamedEntityGraph(String name)
- Specified by:
getNamedEntityGraphin interfaceMetadata
-
getNamedEntityGraphs
public Map<String,NamedEntityGraphDefinition> getNamedEntityGraphs()
- Specified by:
getNamedEntityGraphsin interfaceMetadata
-
addNamedEntityGraph
public void addNamedEntityGraph(NamedEntityGraphDefinition definition)
Description copied from interface:InFlightMetadataCollectorAdds metadata for a named entity graph to this repository- Specified by:
addNamedEntityGraphin interfaceInFlightMetadataCollector- Parameters:
definition- The procedure call information
-
getNamedHqlQueryMapping
public NamedHqlQueryDefinition getNamedHqlQueryMapping(String name)
Description copied from interface:MetadataRetrieve named query metadata by name.- Specified by:
getNamedHqlQueryMappingin interfaceMetadata- Returns:
- The named query metadata, or
null.
-
visitNamedHqlQueryDefinitions
public void visitNamedHqlQueryDefinitions(Consumer<NamedHqlQueryDefinition> definitionConsumer)
Description copied from interface:MetadataVisit all named HQL query definitions- Specified by:
visitNamedHqlQueryDefinitionsin interfaceMetadata
-
addNamedQuery
public void addNamedQuery(NamedHqlQueryDefinition def)
Description copied from interface:InFlightMetadataCollectorAdds metadata for a named query to this repository.- Specified by:
addNamedQueryin interfaceInFlightMetadataCollector- Parameters:
def- The metadata
-
addDefaultQuery
public void addDefaultQuery(NamedHqlQueryDefinition queryDefinition)
- Specified by:
addDefaultQueryin interfaceInFlightMetadataCollector
-
getNamedNativeQueryMapping
public NamedNativeQueryDefinition getNamedNativeQueryMapping(String name)
Description copied from interface:MetadataRetrieve named SQL query metadata.- Specified by:
getNamedNativeQueryMappingin interfaceMetadata- Returns:
- The named query metadata, or
null
-
visitNamedNativeQueryDefinitions
public void visitNamedNativeQueryDefinitions(Consumer<NamedNativeQueryDefinition> definitionConsumer)
Description copied from interface:MetadataVisit all named native query definitions- Specified by:
visitNamedNativeQueryDefinitionsin interfaceMetadata
-
addNamedNativeQuery
public void addNamedNativeQuery(NamedNativeQueryDefinition def)
Description copied from interface:InFlightMetadataCollectorAdds metadata for a named SQL query to this collector.- Specified by:
addNamedNativeQueryin interfaceInFlightMetadataCollector
-
addDefaultNamedNativeQuery
public void addDefaultNamedNativeQuery(NamedNativeQueryDefinition query)
- Specified by:
addDefaultNamedNativeQueryin interfaceInFlightMetadataCollector
-
getNamedProcedureCallMapping
public NamedProcedureCallDefinition getNamedProcedureCallMapping(String name)
Description copied from interface:MetadataRetrieve named procedure metadata.- Specified by:
getNamedProcedureCallMappingin interfaceMetadata- Returns:
- The named procedure metadata, or
null
-
visitNamedProcedureCallDefinition
public void visitNamedProcedureCallDefinition(Consumer<NamedProcedureCallDefinition> definitionConsumer)
Description copied from interface:MetadataVisit all named callable query definitions- Specified by:
visitNamedProcedureCallDefinitionin interfaceMetadata
-
addNamedProcedureCallDefinition
public void addNamedProcedureCallDefinition(NamedProcedureCallDefinition definition)
Description copied from interface:InFlightMetadataCollectorAdds metadata for a named stored procedure call to this collector.- Specified by:
addNamedProcedureCallDefinitionin interfaceInFlightMetadataCollector
-
addDefaultNamedProcedureCall
public void addDefaultNamedProcedureCall(NamedProcedureCallDefinitionImpl definition)
- Specified by:
addDefaultNamedProcedureCallin interfaceInFlightMetadataCollector
-
getResultSetMapping
public NamedResultSetMappingDescriptor getResultSetMapping(String name)
Description copied from interface:MetadataRetrieve the metadata for a named SQL result set mapping.- Specified by:
getResultSetMappingin interfaceMetadata- Parameters:
name- The mapping name.- Returns:
- The named result set mapping metadata, or
nullif none found.
-
visitNamedResultSetMappingDefinition
public void visitNamedResultSetMappingDefinition(Consumer<NamedResultSetMappingDescriptor> definitionConsumer)
Description copied from interface:MetadataVisit all named SQL result set mapping definitions- Specified by:
visitNamedResultSetMappingDefinitionin interfaceMetadata
-
addResultSetMapping
public void addResultSetMapping(NamedResultSetMappingDescriptor resultSetMappingDescriptor)
Description copied from interface:InFlightMetadataCollectorAdds the metadata for a named SQL result set mapping to this collector.- Specified by:
addResultSetMappingin interfaceInFlightMetadataCollector
-
applyResultSetMapping
public void applyResultSetMapping(NamedResultSetMappingDescriptor resultSetMappingDescriptor)
-
addDefaultResultSetMapping
public void addDefaultResultSetMapping(NamedResultSetMappingDescriptor definition)
- Specified by:
addDefaultResultSetMappingin interfaceInFlightMetadataCollector
-
getImports
public Map<String,String> getImports()
Description copied from interface:MetadataRetrieves all defined imports (class renames).- Specified by:
getImportsin interfaceMetadata- Returns:
- All imports
-
addImport
public void addImport(String importName, String entityName)
Description copied from interface:InFlightMetadataCollectorAdds an import (HQL entity rename).- Specified by:
addImportin interfaceInFlightMetadataCollector- Parameters:
importName- The entity name being renamed.entityName- The rename
-
addTable
public Table addTable(String schemaName, String catalogName, String name, String subselectFragment, boolean isAbstract, MetadataBuildingContext buildingContext)
Description copied from interface:InFlightMetadataCollectorAdds table metadata to this repository returning the created metadata instance.- Specified by:
addTablein interfaceInFlightMetadataCollector- Parameters:
schemaName- The named schema in which the table belongs (or null).catalogName- The named catalog in which the table belongs (or null).name- The table namesubselectFragment- A select statement which defines a logical table, much like a DB view.isAbstract- Is the table abstract (i.e. not really existing in the DB)?- Returns:
- The created table metadata, or the existing reference.
-
addDenormalizedTable
public Table addDenormalizedTable(String schemaName, String catalogName, String name, boolean isAbstract, String subselectFragment, Table includedTable, MetadataBuildingContext buildingContext) throws DuplicateMappingException
Description copied from interface:InFlightMetadataCollectorAdds a 'denormalized table' to this repository.- Specified by:
addDenormalizedTablein interfaceInFlightMetadataCollector- Parameters:
schemaName- The named schema in which the table belongs (or null).catalogName- The named catalog in which the table belongs (or null).name- The table nameisAbstract- Is the table abstract (i.e. not really existing in the DB)?subselectFragment- A select statement which defines a logical table, much like a DB view.includedTable- The "common" table- Returns:
- The created table metadata.
- Throws:
DuplicateMappingException- If such a table mapping already exists.
-
getIdentifierType
public Type getIdentifierType(String entityName) throws MappingException
- Specified by:
getIdentifierTypein interfaceMapping- Throws:
MappingException
-
getIdentifierPropertyName
public String getIdentifierPropertyName(String entityName) throws MappingException
- Specified by:
getIdentifierPropertyNamein interfaceMapping- Throws:
MappingException
-
getReferencedPropertyType
public Type getReferencedPropertyType(String entityName, String propertyName) throws MappingException
- Specified by:
getReferencedPropertyTypein interfaceMapping- Throws:
MappingException
-
addTableNameBinding
public void addTableNameBinding(Identifier logicalName, Table table)
- Specified by:
addTableNameBindingin interfaceInFlightMetadataCollector
-
addTableNameBinding
public void addTableNameBinding(String schema, String catalog, String logicalName, String realTableName, Table denormalizedSuperTable)
- Specified by:
addTableNameBindingin interfaceInFlightMetadataCollector
-
getLogicalTableName
public String getLogicalTableName(Table ownerTable)
- Specified by:
getLogicalTableNamein interfaceInFlightMetadataCollector
-
getPhysicalTableName
public String getPhysicalTableName(Identifier logicalName)
- Specified by:
getPhysicalTableNamein interfaceInFlightMetadataCollector
-
getPhysicalTableName
public String getPhysicalTableName(String logicalName)
- Specified by:
getPhysicalTableNamein interfaceInFlightMetadataCollector
-
addColumnNameBinding
public void addColumnNameBinding(Table table, String logicalName, Column column) throws DuplicateMappingException
- Specified by:
addColumnNameBindingin interfaceInFlightMetadataCollector- Throws:
DuplicateMappingException
-
addColumnNameBinding
public void addColumnNameBinding(Table table, Identifier logicalName, Column column) throws DuplicateMappingException
- Specified by:
addColumnNameBindingin interfaceInFlightMetadataCollector- Throws:
DuplicateMappingException
-
getPhysicalColumnName
public String getPhysicalColumnName(Table table, String logicalName) throws MappingException
- Specified by:
getPhysicalColumnNamein interfaceInFlightMetadataCollector- Throws:
MappingException
-
getPhysicalColumnName
public String getPhysicalColumnName(Table table, Identifier logicalName) throws MappingException
- Specified by:
getPhysicalColumnNamein interfaceInFlightMetadataCollector- Throws:
MappingException
-
getLogicalColumnName
public String getLogicalColumnName(Table table, String physicalName) throws MappingException
- Specified by:
getLogicalColumnNamein interfaceInFlightMetadataCollector- Throws:
MappingException
-
getLogicalColumnName
public String getLogicalColumnName(Table table, Identifier physicalName) throws MappingException
- Specified by:
getLogicalColumnNamein interfaceInFlightMetadataCollector- Throws:
MappingException
-
addAuxiliaryDatabaseObject
public void addAuxiliaryDatabaseObject(AuxiliaryDatabaseObject auxiliaryDatabaseObject)
Description copied from interface:InFlightMetadataCollectorAdd metadata pertaining to an auxiliary database object to this repository.- Specified by:
addAuxiliaryDatabaseObjectin interfaceInFlightMetadataCollector- Parameters:
auxiliaryDatabaseObject- The metadata.
-
getClassType
public AnnotatedClassType getClassType(org.hibernate.annotations.common.reflection.XClass clazz)
- Specified by:
getClassTypein interfaceInFlightMetadataCollector
-
addClassType
public AnnotatedClassType addClassType(org.hibernate.annotations.common.reflection.XClass clazz)
- Specified by:
addClassTypein interfaceInFlightMetadataCollector
-
addMappedSuperclass
public void addMappedSuperclass(Class type, MappedSuperclass mappedSuperclass)
- Specified by:
addMappedSuperclassin interfaceInFlightMetadataCollector
-
getMappedSuperclass
public MappedSuperclass getMappedSuperclass(Class type)
- Specified by:
getMappedSuperclassin interfaceInFlightMetadataCollector
-
getPropertyAnnotatedWithMapsId
public PropertyData getPropertyAnnotatedWithMapsId(org.hibernate.annotations.common.reflection.XClass entityType, String propertyName)
- Specified by:
getPropertyAnnotatedWithMapsIdin interfaceInFlightMetadataCollector
-
addPropertyAnnotatedWithMapsId
public void addPropertyAnnotatedWithMapsId(org.hibernate.annotations.common.reflection.XClass entityType, PropertyData property)- Specified by:
addPropertyAnnotatedWithMapsIdin interfaceInFlightMetadataCollector
-
addPropertyAnnotatedWithMapsIdSpecj
public void addPropertyAnnotatedWithMapsIdSpecj(org.hibernate.annotations.common.reflection.XClass entityType, PropertyData property, String mapsIdValue)- Specified by:
addPropertyAnnotatedWithMapsIdSpecjin interfaceInFlightMetadataCollector
-
getPropertyAnnotatedWithIdAndToOne
public PropertyData getPropertyAnnotatedWithIdAndToOne(org.hibernate.annotations.common.reflection.XClass entityType, String propertyName)
- Specified by:
getPropertyAnnotatedWithIdAndToOnein interfaceInFlightMetadataCollector
-
addToOneAndIdProperty
public void addToOneAndIdProperty(org.hibernate.annotations.common.reflection.XClass entityType, PropertyData property)- Specified by:
addToOneAndIdPropertyin interfaceInFlightMetadataCollector
-
addMappedBy
public void addMappedBy(String entityName, String propertyName, String inversePropertyName)
- Specified by:
addMappedByin interfaceInFlightMetadataCollector
-
getFromMappedBy
public String getFromMappedBy(String entityName, String propertyName)
- Specified by:
getFromMappedByin interfaceInFlightMetadataCollector
-
addPropertyReferencedAssociation
public void addPropertyReferencedAssociation(String entityName, String propertyName, String propertyRef)
- Specified by:
addPropertyReferencedAssociationin interfaceInFlightMetadataCollector
-
getPropertyReferencedAssociation
public String getPropertyReferencedAssociation(String entityName, String propertyName)
- Specified by:
getPropertyReferencedAssociationin interfaceInFlightMetadataCollector
-
addPropertyReference
public void addPropertyReference(String referencedClass, String propertyName)
- Specified by:
addPropertyReferencein interfaceInFlightMetadataCollector
-
addDelayedPropertyReferenceHandler
public void addDelayedPropertyReferenceHandler(InFlightMetadataCollector.DelayedPropertyReferenceHandler handler)
- Specified by:
addDelayedPropertyReferenceHandlerin interfaceInFlightMetadataCollector
-
addUniquePropertyReference
public void addUniquePropertyReference(String referencedClass, String propertyName)
- Specified by:
addUniquePropertyReferencein interfaceInFlightMetadataCollector
-
addUniqueConstraints
public void addUniqueConstraints(Table table, List uniqueConstraints)
- Specified by:
addUniqueConstraintsin interfaceInFlightMetadataCollector
-
addUniqueConstraintHolders
public void addUniqueConstraintHolders(Table table, List<UniqueConstraintHolder> uniqueConstraintHolders)
- Specified by:
addUniqueConstraintHoldersin interfaceInFlightMetadataCollector
-
addJpaIndexHolders
public void addJpaIndexHolders(Table table, List<JPAIndexHolder> holders)
- Specified by:
addJpaIndexHoldersin interfaceInFlightMetadataCollector
-
getEntityTableXref
public InFlightMetadataCollector.EntityTableXref getEntityTableXref(String entityName)
- Specified by:
getEntityTableXrefin interfaceInFlightMetadataCollector
-
addEntityTableXref
public InFlightMetadataCollector.EntityTableXref addEntityTableXref(String entityName, Identifier primaryTableLogicalName, Table primaryTable, InFlightMetadataCollector.EntityTableXref superEntityTableXref)
- Specified by:
addEntityTableXrefin interfaceInFlightMetadataCollector
-
getJoins
public Map<String,Join> getJoins(String entityName)
- Specified by:
getJoinsin interfaceInFlightMetadataCollector
-
addSecondPass
public void addSecondPass(SecondPass secondPass)
- Specified by:
addSecondPassin interfaceInFlightMetadataCollector
-
addSecondPass
public void addSecondPass(SecondPass secondPass, boolean onTopOfTheQueue)
- Specified by:
addSecondPassin interfaceInFlightMetadataCollector
-
processSecondPasses
public void processSecondPasses(MetadataBuildingContext buildingContext)
Ugh! But we need this done before we ask Envers to produce its entities.
-
secondPassCompileForeignKeys
protected void secondPassCompileForeignKeys(Table table, Set<ForeignKey> done, MetadataBuildingContext buildingContext) throws MappingException
- Throws:
MappingException
-
locateNaturalIdUniqueKeyBinder
public NaturalIdUniqueKeyBinder locateNaturalIdUniqueKeyBinder(String entityName)
- Specified by:
locateNaturalIdUniqueKeyBinderin interfaceInFlightMetadataCollector
-
registerNaturalIdUniqueKeyBinder
public void registerNaturalIdUniqueKeyBinder(String entityName, NaturalIdUniqueKeyBinder ukBinder)
- Specified by:
registerNaturalIdUniqueKeyBinderin interfaceInFlightMetadataCollector
-
isInSecondPass
public boolean isInSecondPass()
- Specified by:
isInSecondPassin interfaceInFlightMetadataCollector
-
buildMetadataInstance
public MetadataImpl buildMetadataInstance(MetadataBuildingContext buildingContext)
Builds the complete and immutable Metadata instance from the collected info.- Returns:
- The complete and immutable Metadata instance
-
-