Skip to content

Commit 519ffb7

Browse files
committed
some cleanup around SessionFactoryImplementor
Signed-off-by: Gavin King <[email protected]>
1 parent 67bd785 commit 519ffb7

File tree

8 files changed

+51
-89
lines changed

8 files changed

+51
-89
lines changed

hibernate-core/src/main/java/org/hibernate/engine/spi/SessionFactoryDelegatingImpl.java

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939
import org.hibernate.engine.profile.FetchProfile;
4040
import org.hibernate.event.spi.EventEngine;
4141
import org.hibernate.graph.spi.RootGraphImplementor;
42-
import org.hibernate.id.IdentifierGenerator;
4342
import org.hibernate.internal.FastSessionServices;
4443
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
4544
import org.hibernate.metamodel.spi.MetamodelImplementor;
@@ -205,12 +204,7 @@ public Set<String> getDefinedFetchProfileNames() {
205204
return delegate.getDefinedFetchProfileNames();
206205
}
207206

208-
@Override
209-
public IdentifierGenerator getIdentifierGenerator(String rootEntityName) {
210-
return delegate.getIdentifierGenerator( rootEntityName );
211-
}
212-
213-
@Override
207+
@Override @Deprecated
214208
public Generator getGenerator(String rootEntityName) {
215209
return delegate.getGenerator( rootEntityName );
216210
}

hibernate-core/src/main/java/org/hibernate/engine/spi/SessionFactoryImplementor.java

Lines changed: 19 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,11 @@
2020
import org.hibernate.engine.profile.FetchProfile;
2121
import org.hibernate.event.spi.EventEngine;
2222
import org.hibernate.graph.spi.RootGraphImplementor;
23-
import org.hibernate.id.IdentifierGenerator;
2423
import org.hibernate.internal.FastSessionServices;
2524
import org.hibernate.metamodel.spi.MappingMetamodelImplementor;
2625
import org.hibernate.metamodel.spi.MetamodelImplementor;
2726
import org.hibernate.metamodel.spi.RuntimeMetamodelsImplementor;
2827
import org.hibernate.proxy.EntityNotFoundDelegate;
29-
import org.hibernate.query.BindableType;
30-
import org.hibernate.query.criteria.HibernateCriteriaBuilder;
3128
import org.hibernate.query.spi.QueryEngine;
3229
import org.hibernate.query.spi.QueryParameterBindingTypeResolver;
3330
import org.hibernate.query.sqm.spi.SqmCreationContext;
@@ -53,34 +50,38 @@ public interface SessionFactoryImplementor
5350
extends Mapping, SessionFactory, SqmCreationContext, SqlAstCreationContext,
5451
QueryParameterBindingTypeResolver { //deprecated extension, use MappingMetamodel
5552
/**
56-
* Get the UUID for this SessionFactory.
53+
* Get the UUID for this {@code SessionFactory}.
5754
* <p>
5855
* The value is generated as a {@link java.util.UUID}, but kept as a String.
5956
*
60-
* @return The UUID for this SessionFactory.
57+
* @return The UUID for this {@code SessionFactory}.
6158
*
6259
* @see org.hibernate.internal.SessionFactoryRegistry#getSessionFactory
6360
*/
6461
String getUuid();
6562

6663
/**
67-
* Access to the name (if one) assigned to the SessionFactory
64+
* Access to the name (if one) assigned to the {@code SessionFactory}
6865
*
69-
* @return The name for the SessionFactory
66+
* @return The name for the {@code SessionFactory}
7067
*/
68+
@Override
7169
String getName();
7270

7371
/**
7472
* Overrides {@link SessionFactory#openSession()} to widen the return type:
7573
* this is useful for internal code depending on {@link SessionFactoryImplementor}
7674
* as it would otherwise need to frequently resort to casting to the internal contract.
77-
* @return the opened Session.
75+
*
76+
* @return the opened {@code Session}.
7877
*/
7978
@Override
8079
SessionImplementor openSession();
8180

81+
@Override
8282
TypeConfiguration getTypeConfiguration();
8383

84+
@Override
8485
default SessionFactoryImplementor getSessionFactory() {
8586
return this;
8687
}
@@ -90,10 +91,8 @@ default MappingMetamodelImplementor getMappingMetamodel() {
9091
return getRuntimeMetamodels().getMappingMetamodel();
9192
}
9293

93-
QueryEngine getQueryEngine();
94-
9594
@Override
96-
HibernateCriteriaBuilder getCriteriaBuilder();
95+
QueryEngine getQueryEngine();
9796

9897
@Override
9998
SessionBuilderImplementor withOptions();
@@ -112,10 +111,11 @@ default MappingMetamodelImplementor getMappingMetamodel() {
112111
RuntimeMetamodelsImplementor getRuntimeMetamodels();
113112

114113
/**
115-
* Access to the ServiceRegistry for this SessionFactory.
114+
* Access to the {@code ServiceRegistry} for this {@code SessionFactory}.
116115
*
117116
* @return The factory's ServiceRegistry
118117
*/
118+
@Override
119119
ServiceRegistryImplementor getServiceRegistry();
120120

121121
/**
@@ -133,7 +133,10 @@ default MappingMetamodelImplementor getMappingMetamodel() {
133133

134134
/**
135135
* Get the identifier generator for the hierarchy
136+
*
137+
* @deprecated Only used in one place, will be removed
136138
*/
139+
@Deprecated(since = "7", forRemoval = true)
137140
Generator getGenerator(String rootEntityName);
138141

139142
EntityNotFoundDelegate getEntityNotFoundDelegate();
@@ -154,35 +157,28 @@ default MappingMetamodelImplementor getMappingMetamodel() {
154157
JavaType<Object> getTenantIdentifierJavaType();
155158

156159
/**
157-
* @return the FastSessionServices instance associated with this SessionFactory
160+
* @return the {@link FastSessionServices} instance associated with this SessionFactory
158161
*/
159162
FastSessionServices getFastSessionServices();
160163

161164
WrapperOptions getWrapperOptions();
162165

166+
@Override
163167
SessionFactoryOptions getSessionFactoryOptions();
164168

169+
@Override
165170
FilterDefinition getFilterDefinition(String filterName);
166171

167172
Collection<FilterDefinition> getAutoEnabledFilters();
168173

169-
170-
171-
172-
/**
173-
* Get the JdbcServices.
174-
*
175-
* @return the JdbcServices
176-
*/
177174
JdbcServices getJdbcServices();
178175

179176
SqlStringGenerationContext getSqlStringGenerationContext();
180177

181-
182-
183178
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
184179
// map these to Metamodel
185180

181+
@Override
186182
RootGraphImplementor<?> findEntityGraphByName(String name);
187183

188184
/**
@@ -193,30 +189,9 @@ default MappingMetamodelImplementor getMappingMetamodel() {
193189
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
194190
// Deprecations
195191

196-
/**
197-
* Get the identifier generator for the hierarchy
198-
*
199-
* @deprecated use {@link #getGenerator(String)}
200-
*/
201-
@Deprecated(since = "6.2")
202-
IdentifierGenerator getIdentifierGenerator(String rootEntityName);
203-
204192
/**
205193
* @deprecated no longer for internal use, use {@link #getMappingMetamodel()} or {@link #getJpaMetamodel()}
206194
*/
207195
@Override @Deprecated
208196
MetamodelImplementor getMetamodel();
209-
210-
/**
211-
* @deprecated Use {@link #getMappingMetamodel()}.{@link MappingMetamodelImplementor#resolveParameterBindType(Object)}
212-
*/
213-
@Override @Deprecated(since = "6.2", forRemoval = true)
214-
<T> BindableType<? super T> resolveParameterBindType(T bindValue);
215-
216-
/**
217-
* @deprecated Use {@link #getMappingMetamodel()}.{@link MappingMetamodelImplementor#resolveParameterBindType(Class)}
218-
*/
219-
@Override @Deprecated(since = "6.2", forRemoval = true)
220-
<T> BindableType<T> resolveParameterBindType(Class<T> clazz);
221-
222197
}

hibernate-core/src/main/java/org/hibernate/engine/spi/SharedSessionContractImplementor.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import org.hibernate.StatelessSession;
2020
import org.hibernate.boot.spi.SessionFactoryOptions;
2121
import org.hibernate.event.spi.EventSource;
22-
import org.hibernate.graph.GraphSemantic;
2322
import org.hibernate.query.Query;
2423
import org.hibernate.SharedSessionContract;
2524
import org.hibernate.Transaction;

hibernate-core/src/main/java/org/hibernate/internal/SessionFactoryImpl.java

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@
7373
import org.hibernate.generator.Generator;
7474
import org.hibernate.graph.spi.RootGraphImplementor;
7575
import org.hibernate.id.Configurable;
76-
import org.hibernate.id.IdentifierGenerator;
7776
import org.hibernate.integrator.spi.Integrator;
7877
import org.hibernate.integrator.spi.IntegratorService;
7978
import org.hibernate.internal.util.StringHelper;
@@ -657,6 +656,7 @@ private void primeSecondLevelCacheRegions(MetadataImplementor mappingMetadata) {
657656
getCache().prime( regionConfigs );
658657
}
659658

659+
@Override
660660
public SessionImplementor openSession() throws HibernateException {
661661
//The defaultSessionOpenOptions can't be used in some cases; for example when using a TenantIdentifierResolver.
662662
if ( defaultSessionOpenOptions != null ) {
@@ -678,6 +678,7 @@ public SessionImpl openTemporarySession() throws HibernateException {
678678
}
679679
}
680680

681+
@Override
681682
public Session getCurrentSession() throws HibernateException {
682683
if ( currentSessionContext == null ) {
683684
throw new HibernateException( "No CurrentSessionContext configured" );
@@ -695,6 +696,7 @@ public StatelessSessionBuilder withStatelessOptions() {
695696
return new StatelessSessionBuilderImpl( this );
696697
}
697698

699+
@Override
698700
public StatelessSession openStatelessSession() {
699701
if ( this.defaultStatelessOptions != null ) {
700702
return this.defaultStatelessOptions.openStatelessSession();
@@ -704,6 +706,7 @@ public StatelessSession openStatelessSession() {
704706
}
705707
}
706708

709+
@Override
707710
public StatelessSession openStatelessSession(Connection connection) {
708711
return withStatelessOptions().connection( connection ).openStatelessSession();
709712
}
@@ -897,13 +900,17 @@ public Reference getReference() {
897900
);
898901
}
899902

903+
@Override
900904
public Type getIdentifierType(String className) throws MappingException {
901905
return runtimeMetamodels.getMappingMetamodel().getEntityDescriptor( className ).getIdentifierType();
902906
}
907+
908+
@Override
903909
public String getIdentifierPropertyName(String className) throws MappingException {
904910
return runtimeMetamodels.getMappingMetamodel().getEntityDescriptor( className ).getIdentifierPropertyName();
905911
}
906912

913+
@Override
907914
public Type getReferencedPropertyType(String className, String propertyName) throws MappingException {
908915
return runtimeMetamodels.getMappingMetamodel().getEntityDescriptor( className ).getPropertyType( propertyName );
909916
}
@@ -984,6 +991,7 @@ public void close() throws HibernateException {
984991
serviceRegistry.destroy();
985992
}
986993

994+
@Override
987995
public CacheImplementor getCache() {
988996
validateNotClosed();
989997
return cacheAccess;
@@ -1150,10 +1158,12 @@ public java.util.Collection<FilterDefinition> getAutoEnabledFilters() {
11501158
return autoEnabledFilters;
11511159
}
11521160

1161+
@Override
11531162
public boolean containsFetchProfileDefinition(String name) {
11541163
return fetchProfiles.containsKey( name );
11551164
}
11561165

1166+
@Override
11571167
public Set<String> getDefinedFilterNames() {
11581168
return unmodifiableSet( filters.keySet() );
11591169
}
@@ -1163,12 +1173,7 @@ public Set<String> getDefinedFetchProfileNames() {
11631173
return unmodifiableSet( fetchProfiles.keySet() );
11641174
}
11651175

1166-
@Deprecated
1167-
public IdentifierGenerator getIdentifierGenerator(String rootEntityName) {
1168-
return (IdentifierGenerator) getGenerator( rootEntityName );
1169-
}
1170-
1171-
@Deprecated
1176+
@Override @Deprecated
11721177
public Generator getGenerator(String rootEntityName) {
11731178
return identifierGenerators.get( rootEntityName );
11741179
}
@@ -1250,6 +1255,7 @@ public EntityNotFoundDelegate getEntityNotFoundDelegate() {
12501255
return sessionFactoryOptions.getEntityNotFoundDelegate();
12511256
}
12521257

1258+
@Override
12531259
public FetchProfile getFetchProfile(String name) {
12541260
return fetchProfiles.get( name );
12551261
}

hibernate-core/src/main/java/org/hibernate/internal/SessionImpl.java

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1651,12 +1651,9 @@ public String bestGuessEntityName(Object object) {
16511651
object = lazyInitializer.getImplementation();
16521652
}
16531653
final EntityEntry entry = persistenceContext.getEntry( object );
1654-
if ( entry == null ) {
1655-
return guessEntityName( object );
1656-
}
1657-
else {
1658-
return entry.getPersister().getEntityName();
1659-
}
1654+
return entry == null
1655+
? guessEntityName( object )
1656+
: entry.getPersister().getEntityName();
16601657
}
16611658

16621659
@Override
@@ -1670,12 +1667,9 @@ public String bestGuessEntityName(Object object, EntityEntry entry) {
16701667
}
16711668
object = lazyInitializer.getImplementation();
16721669
}
1673-
if ( entry == null ) {
1674-
return guessEntityName( object );
1675-
}
1676-
else {
1677-
return entry.getPersister().getEntityName();
1678-
}
1670+
return entry == null
1671+
? guessEntityName( object )
1672+
: entry.getPersister().getEntityName();
16791673
}
16801674

16811675
@Override
@@ -1690,7 +1684,7 @@ public String getEntityName(Object object) {
16901684
object = lazyInitializer.getImplementation();
16911685
}
16921686

1693-
EntityEntry entry = persistenceContext.getEntry( object );
1687+
final EntityEntry entry = persistenceContext.getEntry( object );
16941688
if ( entry == null ) {
16951689
throwTransientObjectException( object );
16961690
}
@@ -1705,7 +1699,7 @@ public <T> T getReference(T object) {
17051699
return (T) getReference( lazyInitializer.getPersistentClass(), lazyInitializer.getIdentifier() );
17061700
}
17071701
else {
1708-
EntityPersister persister = getEntityPersister( null, object );
1702+
final EntityPersister persister = getEntityPersister( null, object );
17091703
return (T) getReference( persister.getMappedClass(), persister.getIdentifier(object, this) );
17101704
}
17111705
}

hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/DiscriminatedAssociationAttributeMapping.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -269,13 +269,9 @@ public void addToCacheKey(MutableCacheKeyBuilder cacheKey, Object value, SharedS
269269
}
270270

271271
private EntityMappingType determineConcreteType(Object entity, SharedSessionContractImplementor session) {
272-
final String entityName;
273-
if ( session == null ) {
274-
entityName = sessionFactory.bestGuessEntityName( entity );
275-
}
276-
else {
277-
entityName = session.bestGuessEntityName( entity );
278-
}
272+
final String entityName = session == null
273+
? sessionFactory.bestGuessEntityName( entity )
274+
: session.bestGuessEntityName( entity );
279275
return sessionFactory
280276
.getRuntimeMetamodels()
281277
.getEntityMappingType( entityName );

hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/DiscriminatedAssociationMapping.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -230,13 +230,9 @@ public <X, Y> int decompose(
230230
}
231231

232232
private EntityMappingType determineConcreteType(Object entity, SharedSessionContractImplementor session) {
233-
final String entityName;
234-
if ( session == null ) {
235-
entityName = sessionFactory.bestGuessEntityName( entity );
236-
}
237-
else {
238-
entityName = session.bestGuessEntityName( entity );
239-
}
233+
final String entityName = session == null
234+
? sessionFactory.bestGuessEntityName( entity )
235+
: session.bestGuessEntityName( entity );
240236
return sessionFactory
241237
.getRuntimeMetamodels()
242238
.getEntityMappingType( entityName );

0 commit comments

Comments
 (0)