Top Inners Fields Constructors Methods
org.hibernate.jpa.boot.internal

public Class EntityManagerFactoryBuilderImpl

extends Object
implements EntityManagerFactoryBuilder
Class Inheritance
All Implemented Interfaces
org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder
Annotations
@SuppressWarnings:deprecation
Imports
java.io.Serializable, java.util.ArrayList, .Collection, .Collections, .HashMap, .Iterator, .List, .Map, .Properties, .StringTokenizer, java.util.concurrent.ConcurrentHashMap, java.util.function.Consumer, javax.sql.DataSource, org.hibernate.Internal, .SessionFactory, .SessionFactoryObserver, org.hibernate.boot.CacheRegionDefinition, .MetadataSources, .SessionFactoryBuilder, org.hibernate.boot.archive.scan.internal.StandardScanOptions, org.hibernate.boot.beanvalidation.BeanValidationIntegrator, org.hibernate.boot.cfgxml.spi.CfgXmlAccessService, .LoadedConfig, .MappingReference, org.hibernate.boot.jaxb.hbm.spi.JaxbHbmHibernateMapping, .JaxbHbmRootEntityType, org.hibernate.boot.jaxb.spi.BindableMappingDescriptor, .Binding, org.hibernate.boot.model.TypeContributor, org.hibernate.boot.model.convert.internal.ClassBasedConverterDescriptor, org.hibernate.boot.model.convert.spi.ConverterDescriptor, org.hibernate.boot.model.process.spi.ManagedResources, .MetadataBuildingProcess, org.hibernate.boot.registry.BootstrapServiceRegistry, .BootstrapServiceRegistryBuilder, .StandardServiceRegistry, .StandardServiceRegistryBuilder, org.hibernate.boot.registry.classloading.internal.TcclLookupPrecedence, org.hibernate.boot.registry.classloading.spi.ClassLoaderService, org.hibernate.boot.registry.selector.StrategyRegistrationProvider, org.hibernate.boot.registry.selector.spi.StrategySelector, org.hibernate.boot.spi.MetadataBuilderContributor, .MetadataBuilderImplementor, .MetadataImplementor, .SessionFactoryBuilderImplementor, org.hibernate.bytecode.enhance.spi.DefaultEnhancementContext, .EnhancementContext, .EnhancementException, .UnloadedClass, .UnloadedField, org.hibernate.bytecode.spi.ClassTransformer, org.hibernate.cfg.AvailableSettings, .Environment, org.hibernate.engine.jdbc.connections.spi.ConnectionProvider, org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.integrator.spi.Integrator, org.hibernate.internal.EntityManagerMessageLogger, org.hibernate.internal.util.NullnessHelper, .PropertiesHelper, .StringHelper, org.hibernate.internal.util.config.ConfigurationHelper, org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder, .IntegratorProvider, .JpaSettings, .PersistenceUnitDescriptor, .StrategyRegistrationProviderList, .TypeContributorList, org.hibernate.jpa.internal.util.LogHelper, .PersistenceUnitTransactionTypeHelper, org.hibernate.mapping.PersistentClass, org.hibernate.proxy.EntityNotFoundDelegate, org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorBuilderImpl, org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl, org.hibernate.resource.transaction.spi.TransactionCoordinatorBuilder, org.hibernate.service.ServiceRegistry, org.hibernate.service.spi.ServiceBinding, .ServiceRegistryImplementor, .Stoppable, org.hibernate.tool.schema.spi.DelayedDropRegistryNotAvailableImpl, .SchemaManagementToolCoordinator, org.jboss.jandex.Index, jakarta.persistence.AttributeConverter, .EntityManagerFactory, .EntityNotFoundException, .PersistenceException, jakarta.persistence.spi.PersistenceUnitTransactionType

Author
Steve Ebersole

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
public static class
private static class

Field Summary

Modifier and TypeField and Description
private final Map<String, Object>
private DataSource
public static final String
private static final String
public static final String
JANDEX_INDEX

Names a Jandex Index instance to use.

private static final EntityManagerMessageLogger
private final ManagedResources
private MetadataImplementor
metadata

Deprecated as a consequence of MetadataImplementor being deprecated.
public static final String
private final MetadataBuilderImplementor
private final PersistenceUnitDescriptor
private final StandardServiceRegistry
public static final String
public static final String
private Object

Constructor Summary

AccessConstructor and Description
public
public
EntityManagerFactoryBuilderImpl(PersistenceUnitDescriptor persistenceUnit, Map<String, Object> integrationSettings, ClassLoader providedClassLoader)

public
EntityManagerFactoryBuilderImpl(PersistenceUnitDescriptor persistenceUnit, Map<String, Object> integrationSettings, ClassLoaderService providedClassLoaderService)

public
EntityManagerFactoryBuilderImpl(PersistenceUnitDescriptor persistenceUnitDescriptor, Map<String, Object> integration, Consumer<EntityManagerFactoryBuilderImpl.MergedSettings> mergedSettingsBaseline)

For tests only

private
EntityManagerFactoryBuilderImpl(PersistenceUnitDescriptor persistenceUnit, Map<String, Object> integrationSettings, ClassLoader providedClassLoader, ClassLoaderService providedClassLoaderService, Consumer<EntityManagerFactoryBuilderImpl.MergedSettings> mergedSettingsBaseline)

Method Summary

Modifier and TypeMethod and Description
private void
applyDataSource(Object dataSourceRef, Boolean useJtaDataSource, HashMap<?, ?> integrationSettingsCopy, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings)

private void
applyIntegrationProvider(Map<?, ?> integrationSettings, BootstrapServiceRegistryBuilder bsrBuilder)

private void
applyJdbcSettings(Object url, String driver, HashMap<?, ?> integrationSettingsCopy, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings)

private List<ConverterDescriptor>
private void
private void
private void
private void
applyUserAndPass(Object effectiveUser, Object effectivePass, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings)

public EntityManagerFactory
private BootstrapServiceRegistry

Returns:

The built BootstrapServiceRegistry
buildBootstrapServiceRegistry
(Map<?, ?>
Any integration settings passed by the EE container or SE application
integrationSettings
,
ClassLoader providedClassLoader, ClassLoaderService providedClassLoaderService)

Builds the BootstrapServiceRegistry used to eventually build the StandardServiceRegistryBuilder; mainly used here during instantiation to define class-loading behavior.

public void
cancel()

Implements org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.cancel.

Cancel the building processing.
private void
private void
cleanUpConfigKeys(HashMap<?, ?> integrationSettingsCopy, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings, String... keys)

private void
cleanUpConfigKeys(Map<?, ?> settings, String... keys)

private void
configureClassLoading(Map<?, ?> integrationSettings, ClassLoader providedClassLoader, ClassLoaderService providedClassLoaderService, BootstrapServiceRegistryBuilder bsrBuilder)

private <T> T
extractPuProperty(PersistenceUnitDescriptor persistenceUnit, String propertyName)

public void
generateSchema()

Implements org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.generateSchema.

Perform an explicit schema generation (rather than an "auto" one) based on the
public Map<Object, Object>
protected EnhancementContext

Returns:

An enhancement context for classes managed by this EM
getEnhancementContext
(final boolean
To enable dirty tracking feature
dirtyTrackingEnabled
,
final boolean
To enable lazy initialization feature
lazyInitializationEnabled
,
final boolean
To enable association management feature
associationManagementEnabled
)

Builds the context to be used in runtime bytecode enhancement

private String
public ManagedResources
public MetadataImplementor
getMetadata()

Deprecated as a consequence of MetadataImplementor being deprecated.
Intended for internal testing only...
protected StandardServiceRegistry
getStandardServiceRegistry()

Exposed to extensions: see Hibernate Reactive

protected StandardServiceRegistryBuilder
getStandardServiceRegistryBuilder(BootstrapServiceRegistry bsr)

Extension point for subclasses.

private <T> T
loadSettingInstance(String settingName, Object settingValue, Class<T> clazz)

private EntityManagerFactoryBuilderImpl.MergedSettings
public MetadataImplementor
metadata()

Implements org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.metadata.

Deprecated as a consequence of MetadataImplementor being deprecated.
Used by extensions : Hibernate Reactive
private void
normalizeConnectionAccessUserAndPass(HashMap<?, ?> integrationSettingsCopy, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings)

Because a DataSource can be secured (requiring Hibernate to pass the USER/PASSWORD when accessing the DataSource) we apply precedence to the USER and PASS separately

private void
normalizeDataAccess(HashMap<?, ?> integrationSettingsCopy, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings, PersistenceUnitDescriptor persistenceUnit)

private void
normalizeSettings(PersistenceUnitDescriptor persistenceUnit, Map<String, Object> integrationSettings, EntityManagerFactoryBuilderImpl.MergedSettings mergedSettings)

Handles normalizing the settings coming from multiple sources, applying proper precedences

private void
private CacheRegionDefinition
private PersistenceException
protected PersistenceException
protected void
private void
private boolean
public EntityManagerFactoryBuilder
withDataSource(DataSource
The DataSource to use
dataSource
)

Implements org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.withDataSource.

Allows passing in a DataSource (delayed from constructing the builder, AKA phase 2) to be used in building the EntityManagerFactory
public EntityManagerFactoryBuilder
withValidatorFactory(Object
The ValidatorFactory
validatorFactory
)

Implements org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.withValidatorFactory.

Allows passing in a Java EE ValidatorFactory (delayed from constructing the builder, AKA phase 2) to be used in building the EntityManagerFactory
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait