Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

three more minor things #9894

Merged
merged 3 commits into from
Mar 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import java.math.BigInteger;
import java.util.Collection;
import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Predicate;

/**
* API extension to the JPA {@link Expression} contract
Expand Down Expand Up @@ -53,17 +52,17 @@
JpaPredicate in(Expression<Collection<?>> values);

@Override
Predicate equalTo(Expression<?> value);
JpaPredicate equalTo(Expression<?> value);

Check notice

Code scanning / CodeQL

Confusing overloading of methods Note

Method JpaExpression.equalTo(..) could be confused with overloaded method
equalTo
, since dispatch depends on static types.

@Override
Predicate equalTo(Object value);
JpaPredicate equalTo(Object value);

@Override
<X> JpaExpression<X> cast(Class<X> type);

@Override
Predicate notEqualTo(Expression<?> value);
JpaPredicate notEqualTo(Expression<?> value);

Check notice

Code scanning / CodeQL

Confusing overloading of methods Note

Method JpaExpression.notEqualTo(..) could be confused with overloaded method
notEqualTo
, since dispatch depends on static types.

@Override
Predicate notEqualTo(Object value);
JpaPredicate notEqualTo(Object value);
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
import org.hibernate.type.descriptor.java.JavaType;

import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Predicate;

import org.hibernate.type.descriptor.java.spi.JavaTypeRegistry;

Expand Down Expand Up @@ -219,12 +218,12 @@ public SqmPredicate equalTo(Object that) {
}

@Override
public Predicate notEqualTo(Expression value) {
public SqmPredicate notEqualTo(Expression value) {
return null;
}

@Override
public Predicate notEqualTo(Object value) {
public SqmPredicate notEqualTo(Object value) {
return null;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
import org.hibernate.type.descriptor.java.JavaType;

import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Predicate;
import org.checkerframework.checker.nullness.qual.Nullable;

import static org.hibernate.query.internal.QueryHelper.highestPrecedenceType2;
Expand Down Expand Up @@ -121,12 +120,12 @@ public SqmPredicate equalTo(Object value) {
}

@Override
public Predicate notEqualTo(Expression<?> value) {
public SqmPredicate notEqualTo(Expression<?> value) {
return nodeBuilder().notEqual( this, value );
}

@Override
public Predicate notEqualTo(Object value) {
public SqmPredicate notEqualTo(Object value) {
return nodeBuilder().notEqual( this, value );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
import java.util.Collection;
import java.util.function.Consumer;
import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Predicate;
import org.checkerframework.checker.nullness.qual.Nullable;

import org.hibernate.Internal;
import org.hibernate.metamodel.model.domain.ReturnableType;
import org.hibernate.metamodel.model.domain.DomainType;
import org.hibernate.query.criteria.JpaExpression;
import org.hibernate.query.criteria.JpaPredicate;
import org.hibernate.query.spi.QueryEngine;
import org.hibernate.query.sqm.SqmExpressible;
import org.hibernate.query.sqm.tree.SqmCopyContext;
Expand Down Expand Up @@ -130,8 +130,8 @@
}

@Override
Predicate notEqualTo(Expression<?> value);
JpaPredicate notEqualTo(Expression<?> value);

Check notice

Code scanning / CodeQL

Confusing overloading of methods Note

Method SqmExpression.notEqualTo(..) could be confused with overloaded method
Expression.notEqualTo
, since dispatch depends on static types.

@Override
Predicate notEqualTo(Object value);
JpaPredicate notEqualTo(Object value);
}
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
import org.hibernate.type.descriptor.java.JavaType;

import jakarta.persistence.criteria.Expression;
import jakarta.persistence.criteria.Predicate;
import org.checkerframework.checker.nullness.qual.Nullable;

/**
Expand Down Expand Up @@ -163,12 +162,12 @@ public SqmPredicate equalTo(Object that) {
}

@Override
public Predicate notEqualTo(Expression<?> that) {
public SqmPredicate notEqualTo(Expression<?> that) {
return nodeBuilder().notEqual( this, that );
}

@Override
public Predicate notEqualTo(Object that) {
public SqmPredicate notEqualTo(Object that) {
return nodeBuilder().notEqual( this, that );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
import org.hibernate.query.criteria.JpaEntityJoin;
import org.hibernate.query.criteria.JpaExpression;
import org.hibernate.query.criteria.JpaOrder;
import org.hibernate.query.criteria.JpaPredicate;
import org.hibernate.query.criteria.JpaSelection;
import org.hibernate.query.criteria.JpaSubQuery;
import org.hibernate.query.common.FetchClauseType;
Expand Down Expand Up @@ -746,12 +747,12 @@ public Set<ParameterExpression<?>> getParameters() {
}

@Override
public Predicate notEqualTo(Expression<?> value) {
public JpaPredicate notEqualTo(Expression<?> value) {
return nodeBuilder().notEqual( this, value );
}

@Override
public Predicate notEqualTo(Object value) {
public JpaPredicate notEqualTo(Object value) {
return nodeBuilder().notEqual( this, value );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -932,10 +932,7 @@ public void resolveInstance(Object instance, EntityInitializerData data) {
// Entity is most probably initialized
data.entityInstanceForNotify = instance;
data.concreteDescriptor = session.getEntityPersister( null, instance );
resolveEntityKey(
data,
data.concreteDescriptor.getIdentifier( instance, session )
);
resolveEntityKey( data, data.concreteDescriptor.getIdentifier( instance, session ) );
data.entityHolder = persistenceContext.getEntityHolder( data.entityKey );
if ( data.entityHolder == null ) {
// Entity was most probably removed in the same session without setting this association to null.
Expand All @@ -950,7 +947,8 @@ public void resolveInstance(Object instance, EntityInitializerData data) {
}
if ( data.concreteDescriptor.getBytecodeEnhancementMetadata().isEnhancedForLazyLoading()
&& isPersistentAttributeInterceptable( data.entityInstanceForNotify )
&& getAttributeInterceptor( data.entityInstanceForNotify ) instanceof EnhancementAsProxyLazinessInterceptor enhancementInterceptor
&& getAttributeInterceptor( data.entityInstanceForNotify )
instanceof EnhancementAsProxyLazinessInterceptor enhancementInterceptor
&& !enhancementInterceptor.isInitialized() ) {
data.setState( State.RESOLVED );
}
Expand Down Expand Up @@ -1033,14 +1031,14 @@ public void resolveInstance(EntityInitializerData data) {
}
resolveEntityKey( data, id );
}
final PersistenceContext persistenceContext = rowProcessingState.getSession()
.getPersistenceContextInternal();
data.entityHolder = persistenceContext.claimEntityHolderIfPossible(
data.entityKey,
null,
rowProcessingState.getJdbcValuesSourceProcessingState(),
this
);
data.entityHolder =
rowProcessingState.getSession().getPersistenceContextInternal()
.claimEntityHolderIfPossible(
data.entityKey,
null,
rowProcessingState.getJdbcValuesSourceProcessingState(),
this
);

if ( useEmbeddedIdentifierInstanceAsEntity( data ) ) {
data.setInstance( data.entityInstanceForNotify = rowProcessingState.getEntityId() );
Expand Down Expand Up @@ -1078,8 +1076,9 @@ public void resolveInstance(EntityInitializerData data) {

protected void resolveEntityInstance1(EntityInitializerData data) {
final Object proxy = data.entityHolder.getProxy();
final boolean unwrapProxy = proxy != null && referencedModelPart instanceof ToOneAttributeMapping
&& ( (ToOneAttributeMapping) referencedModelPart ).isUnwrapProxy()
final boolean unwrapProxy = proxy != null
&& referencedModelPart instanceof ToOneAttributeMapping toOneAttributeMapping
&& toOneAttributeMapping.isUnwrapProxy()
&& getConcreteDescriptor( data ).getBytecodeEnhancementMetadata().isEnhancedForLazyLoading();
final Object entityFromExecutionContext;
if ( !unwrapProxy && isProxyInstance( proxy ) ) {
Expand Down Expand Up @@ -1265,18 +1264,18 @@ else if ( entityDescriptor.canUseReferenceCacheEntries() ) {
}

protected Object instantiateEntity(EntityInitializerData data) {
return data.getRowProcessingState().getSession().instantiate(
data.concreteDescriptor,
data.entityKey.getIdentifier()
);
return data.getRowProcessingState().getSession()
.instantiate( data.concreteDescriptor, data.entityKey.getIdentifier() );
}

private Object resolveToOptionalInstance(EntityInitializerData data) {
if ( isResultInitializer() ) {
// this isEntityReturn bit is just for entity loaders, not hql/criteria
final JdbcValuesSourceProcessingOptions processingOptions =
data.getRowProcessingState().getJdbcValuesSourceProcessingState().getProcessingOptions();
return matchesOptionalInstance( data, processingOptions ) ? processingOptions.getEffectiveOptionalObject() : null;
return matchesOptionalInstance( data, processingOptions )
? processingOptions.getEffectiveOptionalObject()
: null;
}
else {
return null;
Expand All @@ -1289,8 +1288,8 @@ private boolean matchesOptionalInstance(
final Object optionalEntityInstance = processingOptions.getEffectiveOptionalObject();
final Object requestedEntityId = processingOptions.getEffectiveOptionalId();
return requestedEntityId != null
&& optionalEntityInstance != null
&& areKeysEqual( requestedEntityId, data.entityKey.getIdentifier() );
&& optionalEntityInstance != null
&& areKeysEqual( requestedEntityId, data.entityKey.getIdentifier() );
}

private Object resolveInstanceFromCache(EntityInitializerData data) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,8 @@ public static Action interpretJpaSetting(Object value) {
return NONE;
}

if ( value instanceof Action ) {
return (Action) value;
if ( value instanceof Action action ) {
return action;
}

final String name = value.toString().trim();
Expand Down Expand Up @@ -277,8 +277,8 @@ public static Action interpretHbm2ddlSetting(Object value) {
return NONE;
}

if ( value instanceof Action ) {
return (Action) value;
if ( value instanceof Action action ) {
return action;
}

final String name = value.toString().trim();
Expand Down
Loading