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 SessionFactoryServiceRegistryImplcreate(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.ServiceRegistryImplementorgetServiceRegistry()SessionFactoryImplementorgetSessionFactory()SessionFactoryOptionsgetSessionFactoryOptions()protected voidinitialize(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:
initiateServicein interfaceServiceBinding.ServiceLifecycleOwner
-
configureService
public <R extends Service> void configureService(ServiceBinding<R> serviceBinding)
- Specified by:
configureServicein interfaceServiceBinding.ServiceLifecycleOwner
-
getSessionFactory
public SessionFactoryImplementor getSessionFactory()
- Specified by:
getSessionFactoryin interfaceSessionFactoryServiceInitiatorContext
-
getSessionFactoryOptions
public SessionFactoryOptions getSessionFactoryOptions()
- Specified by:
getSessionFactoryOptionsin interfaceSessionFactoryServiceInitiatorContext
-
getServiceRegistry
public ServiceRegistryImplementor getServiceRegistry()
- Specified by:
getServiceRegistryin interfaceSessionFactoryServiceInitiatorContext
-
getService
public <R extends Service> @Nullable R getService(Class<R> serviceRole)
Description copied from interface:ServiceRegistryRetrieve a service by role, returning null if there is no such service. If service is not found, but aServiceInitiatoris 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 aNullPointerExceptionin the client.- Specified by:
getServicein interfaceServiceRegistry- Overrides:
getServicein 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.
-
-