Package org.hibernate.service.internal
Class SessionFactoryServiceRegistryImpl
- java.lang.Object
-
- org.hibernate.service.internal.AbstractServiceRegistryImpl
-
- org.hibernate.service.internal.SessionFactoryServiceRegistryImpl
-
- All Implemented Interfaces:
AutoCloseable
,ServiceRegistry
,ServiceBinding.ServiceLifecycleOwner
,ServiceRegistryImplementor
,SessionFactoryServiceInitiatorContext
,SessionFactoryServiceRegistry
public class SessionFactoryServiceRegistryImpl extends AbstractServiceRegistryImpl implements SessionFactoryServiceRegistry, SessionFactoryServiceInitiatorContext
-
-
Field Summary
-
Fields inherited from class org.hibernate.service.internal.AbstractServiceRegistryImpl
ALLOW_CRAWLING
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <R extends Service>
voidconfigureService(ServiceBinding<R> serviceBinding)
static SessionFactoryServiceRegistryImpl
create(ServiceRegistryImplementor parent, List<SessionFactoryServiceInitiator<?>> initiators, List<ProvidedService<?>> providedServices, SessionFactoryImplementor sessionFactory, SessionFactoryOptions sessionFactoryOptions)
<R extends Service>
@Nullable RgetService(Class<R> serviceRole)
Retrieve a service by role, returning null if there is no such service.ServiceRegistryImplementor
getServiceRegistry()
SessionFactoryImplementor
getSessionFactory()
SessionFactoryOptions
getSessionFactoryOptions()
protected void
initialize(List<SessionFactoryServiceInitiator<?>> initiators, List<ProvidedService<?>> providedServices)
<R extends Service>
RinitiateService(ServiceInitiator<R> serviceInitiator)
-
Methods inherited from class org.hibernate.service.internal.AbstractServiceRegistryImpl
createService, createServiceBinding, createServiceBinding, deRegisterChild, destroy, fromRegistryOrChildren, fromRegistryOrChildren, getParentServiceRegistry, initialize, injectDependencies, isActive, locateServiceBinding, locateServiceBinding, reactivate, registerChild, registerService, resetParent, startService, stopService, visitServiceBindings
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.service.ServiceRegistry
getParentServiceRegistry, requireService
-
Methods inherited from interface org.hibernate.service.spi.ServiceRegistryImplementor
close, deRegisterChild, destroy, fromRegistryOrChildren, locateServiceBinding, registerChild
-
-
-
-
Method Detail
-
create
public static SessionFactoryServiceRegistryImpl create(ServiceRegistryImplementor parent, List<SessionFactoryServiceInitiator<?>> initiators, List<ProvidedService<?>> providedServices, SessionFactoryImplementor sessionFactory, SessionFactoryOptions sessionFactoryOptions)
-
initialize
protected void initialize(List<SessionFactoryServiceInitiator<?>> initiators, List<ProvidedService<?>> providedServices)
-
initiateService
public <R extends Service> R initiateService(ServiceInitiator<R> serviceInitiator)
- Specified by:
initiateService
in interfaceServiceBinding.ServiceLifecycleOwner
-
configureService
public <R extends Service> void configureService(ServiceBinding<R> serviceBinding)
- Specified by:
configureService
in interfaceServiceBinding.ServiceLifecycleOwner
-
getSessionFactory
public SessionFactoryImplementor getSessionFactory()
- Specified by:
getSessionFactory
in interfaceSessionFactoryServiceInitiatorContext
-
getSessionFactoryOptions
public SessionFactoryOptions getSessionFactoryOptions()
- Specified by:
getSessionFactoryOptions
in interfaceSessionFactoryServiceInitiatorContext
-
getServiceRegistry
public ServiceRegistryImplementor getServiceRegistry()
- Specified by:
getServiceRegistry
in interfaceSessionFactoryServiceInitiatorContext
-
getService
public <R extends Service> @Nullable R getService(Class<R> serviceRole)
Description copied from interface:ServiceRegistry
Retrieve a service by role, returning null if there is no such service. If service is not found, but aServiceInitiator
is registered for this service role, the service will be initialized and returned. Most of the time, use ofServiceRegistry.requireService(Class)
is preferred, being much less likely to cause aNullPointerException
in the client.- Specified by:
getService
in interfaceServiceRegistry
- Overrides:
getService
in classAbstractServiceRegistryImpl
- Type Parameters:
R
- The service role type- Parameters:
serviceRole
- The service role- Returns:
- The requested service or null if the service was not found.
-
-