Class DialectFactoryImpl
java.lang.Object
org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl
- All Implemented Interfaces:
Serializable
,DialectFactory
,Service
,ServiceRegistryAwareService
public class DialectFactoryImpl
extends Object
implements DialectFactory, ServiceRegistryAwareService
Standard implementation of the
DialectFactory
service.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuildDialect
(Map<String, Object> configValues, DialectResolutionInfoSource resolutionInfoSource) Builds an appropriate Dialect instance.void
injectServices
(ServiceRegistryImplementor serviceRegistry) Callback to inject the registry.void
setDialectResolver
(DialectResolver dialectResolver) Intended only for use from testing.
-
Constructor Details
-
DialectFactoryImpl
public DialectFactoryImpl()
-
-
Method Details
-
injectServices
Description copied from interface:ServiceRegistryAwareService
Callback to inject the registry.- Specified by:
injectServices
in interfaceServiceRegistryAwareService
- Parameters:
serviceRegistry
- The registry
-
setDialectResolver
Intended only for use from testing.- Parameters:
dialectResolver
- The DialectResolver to use
-
buildDialect
public Dialect buildDialect(Map<String, Object> configValues, DialectResolutionInfoSource resolutionInfoSource) throws HibernateExceptionDescription copied from interface:DialectFactory
Builds an appropriate Dialect instance.If a dialect is explicitly named in the incoming properties, it should used. Otherwise, it is determined by dialect resolvers based on the passed connection.
An exception is thrown if a dialect was not explicitly set and no resolver could make the determination from the given connection.
- Specified by:
buildDialect
in interfaceDialectFactory
- Parameters:
configValues
- The configuration properties.resolutionInfoSource
- Access to DialectResolutionInfo used to resolve the Dialect to use if not explicitly named- Returns:
- The appropriate dialect instance.
- Throws:
HibernateException
- No dialect specified and no resolver could make the determination.
-