Skip to content

Commit e62c085

Browse files
committed
HHH-10664 - Prep 6.0 feature branch - merge hibernate-entitymanager into hibernate-core (continued fixing of hibernate-core test failures)
1 parent 45f82cb commit e62c085

File tree

60 files changed

+950
-455
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+950
-455
lines changed

hibernate-core/src/main/java/org/hibernate/Query.java

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -750,7 +750,7 @@ default org.hibernate.query.Query setCharacter(int position, char val) {
750750
@Deprecated
751751
@SuppressWarnings("unchecked")
752752
default org.hibernate.query.Query setBoolean(int position, boolean val) {
753-
setParameter( position, val, BooleanType.INSTANCE );
753+
setParameter( position, val, determineProperBooleanType( position, val, BooleanType.INSTANCE ) );
754754
return (org.hibernate.query.Query) this;
755755
}
756756

@@ -1110,7 +1110,7 @@ default org.hibernate.query.Query setCharacter(String name, char val) {
11101110
@Deprecated
11111111
@SuppressWarnings("unchecked")
11121112
default org.hibernate.query.Query setBoolean(String name, boolean val) {
1113-
setParameter( name, val, BooleanType.INSTANCE );
1113+
setParameter( name, val, determineProperBooleanType( name, val, BooleanType.INSTANCE ) );
11141114
return (org.hibernate.query.Query) this;
11151115
}
11161116

@@ -1450,6 +1450,17 @@ default org.hibernate.query.Query setCalendarDate(String name, Calendar value) {
14501450
@SuppressWarnings("unchecked")
14511451
org.hibernate.query.Query setEntity(String name, Object val);
14521452

1453+
/**
1454+
* @deprecated added only to allow default method definition for deprecated methods here.
1455+
*/
1456+
@Deprecated
1457+
Type determineProperBooleanType(int position, Object value, Type defaultType);
1458+
1459+
/**
1460+
* @deprecated added only to allow default method definition for deprecated methods here.
1461+
*/
1462+
@Deprecated
1463+
Type determineProperBooleanType(String name, Object value, Type defaultType);
14531464

14541465

14551466
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1463,18 +1474,17 @@ default org.hibernate.query.Query setCalendarDate(String name, Calendar value) {
14631474
*
14641475
* @return this (for method chaining)
14651476
*
1466-
* @deprecated (since 6.0) - todo : develop a new approach to result transformers
1477+
* @deprecated (since 5.2)
1478+
* @todo develop a new approach to result transformers
14671479
*/
14681480
@Deprecated
14691481
org.hibernate.query.Query setResultTransformer(ResultTransformer transformer);
14701482

14711483
/**
1472-
* @deprecated (since 6.0) use {@link javax.persistence.Tuple} if you need access to "result variables".
1484+
* @deprecated (since 5.2) use {@link javax.persistence.Tuple} if you need access to "result variables".
14731485
*/
14741486
@Deprecated
1475-
default String[] getReturnAliases() {
1476-
return null;
1477-
}
1487+
String[] getReturnAliases();
14781488

14791489
/**
14801490
* Bind values and types to positional parameters. Allows binding more than one at a time; no real performance
@@ -1488,7 +1498,7 @@ default String[] getReturnAliases() {
14881498
*
14891499
* @return {@code this}, for method chaining
14901500
*
1491-
* @deprecated (since 6.0) Bind values individually
1501+
* @deprecated (since 5.2) Bind values individually
14921502
*/
14931503
@Deprecated
14941504
@SuppressWarnings("unchecked")

hibernate-core/src/main/java/org/hibernate/Session.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ public interface Session extends SharedSessionContract, EntityManager, Hibernate
115115
*
116116
* @param flushMode the new flush mode
117117
*
118-
* @deprecated (since 6.0) use {@link #setHibernateFlushMode(FlushMode)} instead
118+
* @deprecated (since 5.2) use {@link #setHibernateFlushMode(FlushMode)} instead
119119
*/
120120
@Deprecated
121121
void setFlushMode(FlushMode flushMode);

hibernate-core/src/main/java/org/hibernate/SessionBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ public interface SessionBuilder<T extends SessionBuilder> {
7272
*
7373
* @return {@code this}, for method chaining
7474
*
75-
* @deprecated (since 6.0) use {@link #connectionHandlingMode} instead
75+
* @deprecated (since 5.2) use {@link #connectionHandlingMode} instead
7676
*/
7777
@Deprecated
7878
T connectionReleaseMode(ConnectionReleaseMode connectionReleaseMode);

hibernate-core/src/main/java/org/hibernate/SharedSessionContract.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ public interface SharedSessionContract extends QueryProducer, Serializable {
115115
*
116116
* @return The criteria instance for manipulation and execution
117117
*
118-
* @deprecated (since 6.0) for Session, use the JPA Criteria
118+
* @deprecated (since 5.2) for Session, use the JPA Criteria
119119
*/
120120
@Deprecated
121121
Criteria createCriteria(Class persistentClass);
@@ -129,7 +129,7 @@ public interface SharedSessionContract extends QueryProducer, Serializable {
129129
*
130130
* @return The criteria instance for manipulation and execution
131131
*
132-
* @deprecated (since 6.0) for Session, use the JPA Criteria
132+
* @deprecated (since 5.2) for Session, use the JPA Criteria
133133
*/
134134
@Deprecated
135135
Criteria createCriteria(Class persistentClass, String alias);
@@ -141,7 +141,7 @@ public interface SharedSessionContract extends QueryProducer, Serializable {
141141
142142
* @return The criteria instance for manipulation and execution
143143
*
144-
* @deprecated (since 6.0) for Session, use the JPA Criteria
144+
* @deprecated (since 5.2) for Session, use the JPA Criteria
145145
*/
146146
@Deprecated
147147
Criteria createCriteria(String entityName);
@@ -154,7 +154,7 @@ public interface SharedSessionContract extends QueryProducer, Serializable {
154154
*
155155
* @return The criteria instance for manipulation and execution
156156
*
157-
* @deprecated (since 6.0) for Session, use the JPA Criteria
157+
* @deprecated (since 5.2) for Session, use the JPA Criteria
158158
*/
159159
@Deprecated
160160
Criteria createCriteria(String entityName, String alias);

hibernate-core/src/main/java/org/hibernate/action/internal/BulkOperationCleanupAction.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public class BulkOperationCleanupAction implements Executable, Serializable {
5757
*/
5858
public BulkOperationCleanupAction(SharedSessionContractImplementor session, Queryable... affectedQueryables) {
5959
final SessionFactoryImplementor factory = session.getFactory();
60-
final LinkedHashSet<String> spacesList = new LinkedHashSet<String>();
60+
final LinkedHashSet<String> spacesList = new LinkedHashSet<>();
6161
for ( Queryable persister : affectedQueryables ) {
6262
spacesList.addAll( Arrays.asList( (String[]) persister.getQuerySpaces() ) );
6363

@@ -68,10 +68,10 @@ public BulkOperationCleanupAction(SharedSessionContractImplementor session, Quer
6868
naturalIdCleanups.add( new NaturalIdCleanup( persister.getNaturalIdCacheAccessStrategy() ) );
6969
}
7070

71-
final Set<String> roles = factory.getCollectionRolesByEntityParticipant( persister.getEntityName() );
71+
final Set<String> roles = factory.getMetamodel().getCollectionRolesByEntityParticipant( persister.getEntityName() );
7272
if ( roles != null ) {
7373
for ( String role : roles ) {
74-
final CollectionPersister collectionPersister = factory.getCollectionPersister( role );
74+
final CollectionPersister collectionPersister = factory.getMetamodel().collectionPersister( role );
7575
if ( collectionPersister.hasCache() ) {
7676
collectionCleanups.add( new CollectionCleanup( collectionPersister.getCacheAccessStrategy() ) );
7777
}
@@ -96,12 +96,11 @@ public BulkOperationCleanupAction(SharedSessionContractImplementor session, Quer
9696
*/
9797
@SuppressWarnings({ "unchecked" })
9898
public BulkOperationCleanupAction(SharedSessionContractImplementor session, Set tableSpaces) {
99-
final LinkedHashSet<String> spacesList = new LinkedHashSet<String>();
99+
final LinkedHashSet<String> spacesList = new LinkedHashSet<>();
100100
spacesList.addAll( tableSpaces );
101101

102102
final SessionFactoryImplementor factory = session.getFactory();
103-
for ( String entityName : factory.getAllClassMetadata().keySet() ) {
104-
final EntityPersister persister = factory.getEntityPersister( entityName );
103+
for ( EntityPersister persister : factory.getMetamodel().entityPersisters().values() ) {
105104
final String[] entitySpaces = (String[]) persister.getQuerySpaces();
106105
if ( affectedEntity( tableSpaces, entitySpaces ) ) {
107106
spacesList.addAll( Arrays.asList( entitySpaces ) );
@@ -113,10 +112,10 @@ public BulkOperationCleanupAction(SharedSessionContractImplementor session, Set
113112
naturalIdCleanups.add( new NaturalIdCleanup( persister.getNaturalIdCacheAccessStrategy() ) );
114113
}
115114

116-
final Set<String> roles = session.getFactory().getCollectionRolesByEntityParticipant( persister.getEntityName() );
115+
final Set<String> roles = session.getFactory().getMetamodel().getCollectionRolesByEntityParticipant( persister.getEntityName() );
117116
if ( roles != null ) {
118117
for ( String role : roles ) {
119-
final CollectionPersister collectionPersister = factory.getCollectionPersister( role );
118+
final CollectionPersister collectionPersister = factory.getMetamodel().collectionPersister( role );
120119
if ( collectionPersister.hasCache() ) {
121120
collectionCleanups.add(
122121
new CollectionCleanup( collectionPersister.getCacheAccessStrategy() )

hibernate-core/src/main/java/org/hibernate/boot/internal/SessionFactoryBuilderImpl.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -598,7 +598,10 @@ public SessionFactoryOptionsStateStandardImpl(StandardServiceRegistry serviceReg
598598
);
599599

600600
final Object statelessInterceptorSetting = configurationSettings.get( SESSION_SCOPED_INTERCEPTOR );
601-
if ( statelessInterceptorSetting instanceof Class ) {
601+
if ( statelessInterceptorSetting == null ) {
602+
this.statelessInterceptorClass = null;
603+
}
604+
else if ( statelessInterceptorSetting instanceof Class ) {
602605
this.statelessInterceptorClass = (Class<? extends Interceptor>) statelessInterceptorSetting;
603606
}
604607
else {

hibernate-core/src/main/java/org/hibernate/cache/spi/RegionFactory.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public interface RegionFactory extends Service {
4040
* considered as a sign to stop {@link org.hibernate.SessionFactory}
4141
* building.
4242
*
43-
* @deprecated (since 6.0) use the form accepting map instead.
43+
* @deprecated (since 5.2) use the form accepting map instead.
4444
*/
4545
@Deprecated
4646
void start(SessionFactoryOptions settings, Properties properties) throws CacheException;
@@ -108,7 +108,7 @@ default void start(SessionFactoryOptions settings, Map<String, Object> configVal
108108
*
109109
* @throws CacheException Indicates problems building the region.
110110
*
111-
* @deprecated (since 6.0) use the form taking Map instead
111+
* @deprecated (since 5.2) use the form taking Map instead
112112
*/
113113
@Deprecated
114114
EntityRegion buildEntityRegion(String regionName, Properties properties, CacheDataDescription metadata)
@@ -143,7 +143,7 @@ default EntityRegion buildEntityRegion(String regionName, Map<String,Object> con
143143
*
144144
* @throws CacheException Indicates problems building the region.
145145
*
146-
* @deprecated (since 6.0) use the form accepting a Map instead
146+
* @deprecated (since 5.2) use the form accepting a Map instead
147147
*/
148148
@Deprecated
149149
NaturalIdRegion buildNaturalIdRegion(String regionName, Properties properties, CacheDataDescription metadata)
@@ -209,7 +209,7 @@ default CollectionRegion buildCollectionRegion(String regionName, Map<String,Obj
209209
*
210210
* @throws CacheException Indicates problems building the region.
211211
*
212-
* @deprecated (since 6.0) use the form taking Map instead
212+
* @deprecated (since 5.2) use the form taking Map instead
213213
*/
214214
@Deprecated
215215
QueryResultsRegion buildQueryResultsRegion(String regionName, Properties properties) throws CacheException;
@@ -240,7 +240,7 @@ default QueryResultsRegion buildQueryResultsRegion(String qualifyRegionName, Map
240240
*
241241
* @throws CacheException Indicates problems building the region.
242242
*
243-
* @deprecated (since 6.0) use the form taking Map
243+
* @deprecated (since 5.2) use the form taking Map
244244
*/
245245
@Deprecated
246246
TimestampsRegion buildTimestampsRegion(String regionName, Properties properties) throws CacheException;

hibernate-core/src/main/java/org/hibernate/engine/internal/SessionEventListenerManagerImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,10 @@
1919
public class SessionEventListenerManagerImpl implements SessionEventListenerManager, Serializable {
2020
private List<SessionEventListener> listenerList;
2121

22+
@Override
2223
public void addListener(SessionEventListener... listeners) {
2324
if ( listenerList == null ) {
24-
listenerList = new ArrayList<SessionEventListener>();
25+
listenerList = new ArrayList<>();
2526
}
2627

2728
java.util.Collections.addAll( listenerList, listeners );

hibernate-core/src/main/java/org/hibernate/engine/query/spi/HQLQueryPlan.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,13 +104,12 @@ protected HQLQueryPlan(
104104
final List<String> sqlStringList = new ArrayList<String>();
105105
final Set<Serializable> combinedQuerySpaces = new HashSet<Serializable>();
106106

107-
final boolean hasCollectionRole = (collectionRole == null);
108107
final Map querySubstitutions = factory.getSessionFactoryOptions().getQuerySubstitutions();
109108
final QueryTranslatorFactory queryTranslatorFactory = factory.getServiceRegistry().getService( QueryTranslatorFactory.class );
110109

111110

112111
for ( int i=0; i<length; i++ ) {
113-
if ( hasCollectionRole ) {
112+
if ( collectionRole == null ) {
114113
translators[i] = queryTranslatorFactory
115114
.createQueryTranslator( hql, concreteQueryStrings[i], enabledFilters, factory, entityGraphQueryHint );
116115
translators[i].compile( querySubstitutions, shallow );
@@ -394,13 +393,13 @@ private ParameterMetadataImpl buildParameterMetadata(ParameterTranslations param
394393
ordinalParamCount = locations.length;
395394

396395
final OrdinalParameterDescriptor[] ordinalParamDescriptors = new OrdinalParameterDescriptor[ordinalParamCount];
397-
for ( int i = 1; i <= ordinalParamCount; i++ ) {
398-
ordinalParamDescriptors[ i - 1 ] = new OrdinalParameterDescriptor(
396+
for ( int i = 0; i < ordinalParamCount; i++ ) {
397+
ordinalParamDescriptors[ i ] = new OrdinalParameterDescriptor(
399398
i,
400399
parameterTranslations.supportsOrdinalParameterMetadata()
401400
? parameterTranslations.getOrdinalParameterExpectedType( i )
402401
: null,
403-
locations[ i - 1 ]
402+
locations[ i ]
404403
);
405404
}
406405

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public interface SessionBuilderImplementor<T extends SessionBuilder> extends Ses
2424
*
2525
* @return {@code this}, for method chaining
2626
*
27-
* @deprecated (since 6.0) since consolidating hibernate-entitymanager into hibernate-core
27+
* @deprecated (since 5.2) since consolidating hibernate-entitymanager into hibernate-core
2828
* I believe this is no longer needed.
2929
*/
3030
@Deprecated

0 commit comments

Comments
 (0)