Skip to content

Commit 994a521

Browse files
committed
minor code improvements
1 parent 77a53bb commit 994a521

File tree

2 files changed

+21
-21
lines changed

2 files changed

+21
-21
lines changed

hibernate-core/src/main/java/org/hibernate/query/spi/AbstractSelectionQuery.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ protected void applyOptions(NamedQueryMemento<?> memento) {
147147

148148
@Override
149149
public List<R> list() {
150-
final HashSet<String> fetchProfiles = beforeQueryHandlingFetchProfiles();
150+
final var fetchProfiles = beforeQueryHandlingFetchProfiles();
151151
boolean success = false;
152152
try {
153153
final List<R> result = doList();
@@ -174,10 +174,8 @@ protected HashSet<String> beforeQueryHandlingFetchProfiles() {
174174

175175
protected void beforeQuery() {
176176
getQueryParameterBindings().validate();
177-
178177
final var session = getSession();
179178
final var options = getQueryOptions();
180-
181179
session.prepareForQueryExecution( requiresTxn( options.getLockOptions().getLockMode() ) );
182180
prepareForExecution();
183181
prepareSessionFlushMode( session );

hibernate-core/src/main/java/org/hibernate/sql/results/spi/ListResultsConsumer.java

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -207,31 +207,33 @@ private Results<R> createResults(
207207
boolean isEntityResultType,
208208
JavaType<R> domainResultJavaType,
209209
int initialCollectionSize) {
210-
if ( isEntityResultType
211-
&& ( uniqueSemantic == UniqueSemantic.ALLOW || uniqueSemantic == UniqueSemantic.FILTER ) ) {
212-
return new EntityResult<>( domainResultJavaType, initialCollectionSize );
213-
}
214-
else {
215-
return new Results<>( domainResultJavaType, initialCollectionSize );
216-
}
210+
return isEntityResultType && isAllowOrFilter()
211+
? new EntityResult<>( domainResultJavaType, initialCollectionSize )
212+
: new Results<>( domainResultJavaType, initialCollectionSize );
213+
}
214+
215+
private boolean isAllowOrFilter() {
216+
return uniqueSemantic == UniqueSemantic.ALLOW
217+
|| uniqueSemantic == UniqueSemantic.FILTER;
217218
}
218219

219220
private int readRows(
220221
RowProcessingStateStandardImpl rowProcessingState,
221222
RowReader<R> rowReader,
222223
boolean isEntityResultType,
223224
Results<R> results) {
224-
if ( uniqueSemantic == UniqueSemantic.FILTER
225-
|| uniqueSemantic == UniqueSemantic.ASSERT && rowReader.hasCollectionInitializers()
226-
|| uniqueSemantic == UniqueSemantic.ALLOW && isEntityResultType ) {
227-
return readUnique( rowProcessingState, rowReader, results );
228-
}
229-
else if ( uniqueSemantic == UniqueSemantic.ASSERT ) {
230-
return readUniqueAssert( rowProcessingState, rowReader, results );
231-
}
232-
else {
233-
return read( rowProcessingState, rowReader, results );
234-
}
225+
return switch ( uniqueSemantic ) {
226+
case FILTER ->
227+
readUnique( rowProcessingState, rowReader, results );
228+
case ASSERT -> rowReader.hasCollectionInitializers()
229+
? readUnique( rowProcessingState, rowReader, results )
230+
: readUniqueAssert( rowProcessingState, rowReader, results );
231+
case ALLOW -> isEntityResultType
232+
? readUnique( rowProcessingState, rowReader, results )
233+
: read( rowProcessingState, rowReader, results );
234+
case NONE, NEVER ->
235+
read( rowProcessingState, rowReader, results );
236+
};
235237
}
236238

237239
private static <R> int read(

0 commit comments

Comments
 (0)