diff --git a/design/sqm.adoc b/design/sqm.adoc index 3c0af9f93798..d33a3bd661a4 100644 --- a/design/sqm.adoc +++ b/design/sqm.adoc @@ -6,7 +6,7 @@ represents an atomic piece of the query. E.g. `SqmSelectClause` represents the `SqmSelectClause` is ultimately a collection of one or more `SqmSelection` references representing the individual selections to be returned from the query (called the domain results). Etc -All of these details are handled by the `QuerySqmImpl` implementation of `Query`. This is what Hibernate +All of these details are handled by the `SqmQueryImpl` implementation of `Query`. This is what Hibernate uses for both HQL and Criteria queries. diff --git a/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java b/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java index 4a5a3cfec3cf..b058c6a77738 100644 --- a/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java +++ b/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java @@ -81,7 +81,7 @@ import org.hibernate.query.sql.spi.NamedNativeQueryMemento; import org.hibernate.query.sql.spi.NativeQueryImplementor; import org.hibernate.query.sqm.SqmSelectionQuery; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.internal.SqmSelectionQueryImpl; import org.hibernate.query.sqm.spi.NamedSqmQueryMemento; import org.hibernate.query.sqm.tree.SqmDmlStatement; @@ -888,7 +888,7 @@ public QueryImplementor createQuery(String queryString, Class expected checksBeforeQueryCreation(); try { final HqlInterpretation interpretation = interpretHql( queryString, expectedResultType ); - final QuerySqmImpl query = new QuerySqmImpl<>( queryString, interpretation, expectedResultType, this ); + final SqmQueryImpl query = new SqmQueryImpl<>( queryString, interpretation, expectedResultType, this ); applyQuerySettingsAndHints( query ); query.setComment( queryString ); return query; @@ -904,11 +904,11 @@ public QueryImplementor createQuery(TypedQueryReference typedQueryRefe checksBeforeQueryCreation(); if ( typedQueryReference instanceof SelectionSpecificationImpl specification ) { final CriteriaQuery query = specification.buildCriteria( getCriteriaBuilder() ); - return new QuerySqmImpl<>( (SqmStatement) query, specification.getResultType(), this ); + return new SqmQueryImpl<>( (SqmStatement) query, specification.getResultType(), this ); } else if ( typedQueryReference instanceof MutationSpecificationImpl specification ) { final CommonAbstractCriteria query = specification.buildCriteria( getCriteriaBuilder() ); - return new QuerySqmImpl<>( (SqmStatement) query, (Class) specification.getResultType(), this ); + return new SqmQueryImpl<>( (SqmStatement) query, (Class) specification.getResultType(), this ); } else { @SuppressWarnings("unchecked") @@ -1502,7 +1502,7 @@ public QueryImplementor createQuery(@SuppressWarnings("rawtypes") CriteriaDel } protected QueryImplementor createCriteriaQuery(SqmStatement criteria, Class resultType) { - final QuerySqmImpl query = new QuerySqmImpl<>( criteria, resultType, this ); + final SqmQueryImpl query = new SqmQueryImpl<>( criteria, resultType, this ); applyQuerySettingsAndHints( query ); return query; } diff --git a/hibernate-core/src/main/java/org/hibernate/query/criteria/internal/NamedCriteriaQueryMementoImpl.java b/hibernate-core/src/main/java/org/hibernate/query/criteria/internal/NamedCriteriaQueryMementoImpl.java index cd3587a394d1..0259abd70f38 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/criteria/internal/NamedCriteriaQueryMementoImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/query/criteria/internal/NamedCriteriaQueryMementoImpl.java @@ -18,7 +18,7 @@ import org.hibernate.query.named.AbstractNamedQueryMemento; import org.hibernate.query.spi.QueryEngine; import org.hibernate.query.sqm.SqmSelectionQuery; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.internal.SqmSelectionQueryImpl; import org.hibernate.query.sqm.spi.NamedSqmQueryMemento; import org.hibernate.query.sqm.tree.SqmStatement; @@ -89,7 +89,7 @@ public SqmQueryImplementor toQuery(SharedSessionContractImplementor sessi } @SuppressWarnings("unchecked") // we just checked the result type final SqmStatement statement = (SqmStatement) sqmStatement; - return new QuerySqmImpl<>( this, statement, resultType, session ); + return new SqmQueryImpl<>( this, statement, resultType, session ); } @Override @@ -110,7 +110,7 @@ public SqmSelectionQuery toSelectionQuery(Class resultType, SharedSess @Override public String getHqlString() { - return QuerySqmImpl.CRITERIA_HQL_STRING; + return SqmQueryImpl.CRITERIA_HQL_STRING; } @Override diff --git a/hibernate-core/src/main/java/org/hibernate/query/hql/internal/NamedHqlQueryMementoImpl.java b/hibernate-core/src/main/java/org/hibernate/query/hql/internal/NamedHqlQueryMementoImpl.java index e88ac6b852e8..34acdd382f86 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/hql/internal/NamedHqlQueryMementoImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/query/hql/internal/NamedHqlQueryMementoImpl.java @@ -15,7 +15,7 @@ import org.hibernate.query.named.AbstractNamedQueryMemento; import org.hibernate.query.spi.QueryEngine; import org.hibernate.query.sqm.SqmSelectionQuery; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.internal.SqmSelectionQueryImpl; import org.hibernate.query.sqm.spi.NamedSqmQueryMemento; import org.hibernate.query.sqm.tree.SqmStatement; @@ -147,6 +147,6 @@ public SqmStatement getSqmStatement() { @Override public SqmQueryImplementor toQuery(SharedSessionContractImplementor session, Class resultType) { - return new QuerySqmImpl<>( this, resultType, session ); + return new SqmQueryImpl<>( this, resultType, session ); } } diff --git a/hibernate-core/src/main/java/org/hibernate/query/hql/spi/SqmQueryImplementor.java b/hibernate-core/src/main/java/org/hibernate/query/hql/spi/SqmQueryImplementor.java index 0f5385b0c769..e40a365ea2bc 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/hql/spi/SqmQueryImplementor.java +++ b/hibernate-core/src/main/java/org/hibernate/query/hql/spi/SqmQueryImplementor.java @@ -25,7 +25,6 @@ import org.hibernate.query.spi.QueryImplementor; import org.hibernate.query.spi.SqmQuery; import org.hibernate.query.sqm.spi.NamedSqmQueryMemento; -import org.hibernate.query.sqm.tree.SqmStatement; import org.hibernate.transform.ResultTransformer; import jakarta.persistence.FlushModeType; @@ -39,17 +38,13 @@ * * @author Steve Ebersole */ -public interface SqmQueryImplementor extends QueryImplementor, SqmQuery, NameableQuery { +public interface SqmQueryImplementor extends QueryImplementor, SqmQuery, NameableQuery { @Override NamedSqmQueryMemento toMemento(String name); @Override ParameterMetadataImplementor getParameterMetadata(); - @Override - SqmStatement getSqmStatement(); - - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // covariance diff --git a/hibernate-core/src/main/java/org/hibernate/query/specification/internal/MutationSpecificationImpl.java b/hibernate-core/src/main/java/org/hibernate/query/specification/internal/MutationSpecificationImpl.java index 4ea754a98b9f..64a01b53095e 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/specification/internal/MutationSpecificationImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/query/specification/internal/MutationSpecificationImpl.java @@ -24,7 +24,7 @@ import org.hibernate.query.spi.QueryEngine; import org.hibernate.query.sqm.NodeBuilder; import org.hibernate.query.sqm.SqmQuerySource; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.internal.SqmUtil; import org.hibernate.query.sqm.tree.AbstractSqmDmlStatement; import org.hibernate.query.sqm.tree.SqmDeleteOrUpdateStatement; @@ -124,7 +124,7 @@ public MutationQuery createQuery(StatelessSession session) { public MutationQuery createQuery(SharedSessionContract session) { final var sessionImpl = session.unwrap(SharedSessionContractImplementor.class); final SqmDeleteOrUpdateStatement sqmStatement = build( sessionImpl.getFactory().getQueryEngine() ); - return new QuerySqmImpl<>( sqmStatement, true, null, sessionImpl ); + return new SqmQueryImpl<>( sqmStatement, true, null, sessionImpl ); } private SqmDeleteOrUpdateStatement build(QueryEngine queryEngine) { diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractCommonQueryContract.java b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractCommonQueryContract.java index 1de88b3c24fe..8aab94753782 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractCommonQueryContract.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractCommonQueryContract.java @@ -96,8 +96,15 @@ import static org.hibernate.jpa.internal.util.LockModeTypeHelper.interpretLockMode; /** + * Base implementation of {@link CommonQueryContract}. + * + * @apiNote This class is now considered internal implementation + * and will move to an internal package in a future version. + * Application programs should never depend directly on this class. + * * @author Steve Ebersole */ +@Internal public abstract class AbstractCommonQueryContract implements CommonQueryContract { private final SharedSessionContractImplementor session; private final QueryOptionsImpl queryOptions; diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQuery.java b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQuery.java index 1abb7ce170d4..efa7ec8307d6 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQuery.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQuery.java @@ -24,6 +24,7 @@ import jakarta.persistence.Timeout; import org.hibernate.CacheMode; import org.hibernate.FlushMode; +import org.hibernate.Internal; import org.hibernate.query.QueryFlushMode; import org.hibernate.HibernateException; import org.hibernate.LockMode; @@ -62,8 +63,15 @@ import static org.hibernate.jpa.SpecHints.HINT_SPEC_QUERY_TIMEOUT; /** + * Base implementation of {@link org.hibernate.query.Query}. + * + * @apiNote This class is now considered internal implementation + * and will move to an internal package in a future version. + * Application programs should never depend directly on this class. + * * @author Steve Ebersole */ +@Internal public abstract class AbstractQuery extends AbstractSelectionQuery implements QueryImplementor { diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQueryParameter.java b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQueryParameter.java index 5f8fb9d869fb..c18704a307de 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQueryParameter.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQueryParameter.java @@ -5,13 +5,21 @@ package org.hibernate.query.spi; +import org.hibernate.Internal; import org.hibernate.type.BindableType; import static org.hibernate.query.QueryLogging.QUERY_MESSAGE_LOGGER; /** + * Base implementation of {@link org.hibernate.query.QueryParameter}. + * + * @apiNote This class is now considered internal implementation + * and will move to an internal package in a future version. + * Application programs should never depend directly on this class. + * * @author Steve Ebersole */ +@Internal public abstract class AbstractQueryParameter implements QueryParameterImplementor { private boolean allowMultiValuedBinding; diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractSelectionQuery.java b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractSelectionQuery.java index 5db77c4985e8..cb6e6808e8e0 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractSelectionQuery.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/AbstractSelectionQuery.java @@ -20,6 +20,7 @@ import jakarta.persistence.Timeout; import org.hibernate.CacheMode; import org.hibernate.FlushMode; +import org.hibernate.Internal; import org.hibernate.ScrollableResults; import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.query.QueryFlushMode; @@ -67,8 +68,15 @@ import static org.hibernate.jpa.HibernateHints.HINT_READ_ONLY; /** + * Base implementation of {@link SelectionQuery}. + * + * @apiNote This class is now considered internal implementation + * and will move to an internal package in a future version. + * Application programs should never depend directly on this class. + * * @author Steve Ebersole */ +@Internal public abstract class AbstractSelectionQuery extends AbstractCommonQueryContract implements SelectionQuery, DomainQueryExecutionContext { diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/SimpleHqlInterpretationImpl.java b/hibernate-core/src/main/java/org/hibernate/query/spi/SimpleHqlInterpretationImpl.java index 9c88ecc53beb..9aecd24816db 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/SimpleHqlInterpretationImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/SimpleHqlInterpretationImpl.java @@ -6,6 +6,7 @@ import java.util.concurrent.ConcurrentHashMap; +import org.hibernate.Internal; import org.hibernate.query.sqm.internal.DomainParameterXref; import org.hibernate.query.sqm.tree.SqmStatement; import org.hibernate.query.sqm.tree.select.SqmSelectStatement; @@ -14,8 +15,15 @@ import static org.hibernate.query.sqm.internal.SqmUtil.isResultTypeAlwaysAllowed; /** + * Default implementation if {@link HqlInterpretation}. + * + * @apiNote This class is now considered internal implementation + * and will move to an internal package in a future version. + * Application programs should never depend directly on this class. + * * @author Steve Ebersole */ +@Internal public class SimpleHqlInterpretationImpl implements HqlInterpretation { private final SqmStatement sqmStatement; private final ParameterMetadataImplementor parameterMetadata; diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/SqlOmittingQueryOptions.java b/hibernate-core/src/main/java/org/hibernate/query/spi/SqlOmittingQueryOptions.java index 187025d89f0c..f50cf484c176 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/SqlOmittingQueryOptions.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/SqlOmittingQueryOptions.java @@ -4,13 +4,19 @@ */ package org.hibernate.query.spi; +import org.hibernate.Internal; import org.hibernate.LockOptions; import org.hibernate.sql.exec.spi.JdbcOperationQuerySelect; import org.hibernate.sql.results.spi.ListResultsConsumer; /** + * @apiNote This class is considered internal implementation + * and will move to an internal package in a future version. + * Application programs should never depend directly on this class. + * * @author Christian Beikov */ +@Internal public class SqlOmittingQueryOptions extends DelegatingQueryOptions { private final boolean omitLimit; diff --git a/hibernate-core/src/main/java/org/hibernate/query/spi/SqmQuery.java b/hibernate-core/src/main/java/org/hibernate/query/spi/SqmQuery.java index d04b13a37cb9..7d1600d85c5c 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/spi/SqmQuery.java +++ b/hibernate-core/src/main/java/org/hibernate/query/spi/SqmQuery.java @@ -26,133 +26,132 @@ * * @author Steve Ebersole */ -public interface SqmQuery extends CommonQueryContract { +public interface SqmQuery extends CommonQueryContract { String getQueryString(); - @SuppressWarnings("rawtypes") - SqmStatement getSqmStatement(); + SqmStatement getSqmStatement(); ParameterMetadata getParameterMetadata(); QueryOptions getQueryOptions(); @Override - SqmQuery setParameter(String name, Object value); + SqmQuery setParameter(String name, Object value); @Override -

SqmQuery setParameter(String name, P value, Class

type); +

SqmQuery setParameter(String name, P value, Class

type); @Override -

SqmQuery setParameter(String name, P value, Type

type); +

SqmQuery setParameter(String name, P value, Type

type); @Override @Deprecated(since = "7") - SqmQuery setParameter(String name, Instant value, TemporalType temporalType); + SqmQuery setParameter(String name, Instant value, TemporalType temporalType); @Override @Deprecated(since = "7") - SqmQuery setParameter(String name, Calendar value, TemporalType temporalType); + SqmQuery setParameter(String name, Calendar value, TemporalType temporalType); @Override @Deprecated(since = "7") - SqmQuery setParameter(String name, Date value, TemporalType temporalType); + SqmQuery setParameter(String name, Date value, TemporalType temporalType); @Override - SqmQuery setParameter(int position, Object value); + SqmQuery setParameter(int position, Object value); @Override -

SqmQuery setParameter(int position, P value, Class

type); +

SqmQuery setParameter(int position, P value, Class

type); @Override -

SqmQuery setParameter(int position, P value, Type

type); +

SqmQuery setParameter(int position, P value, Type

type); @Override @Deprecated(since = "7") - SqmQuery setParameter(int position, Instant value, TemporalType temporalType); + SqmQuery setParameter(int position, Instant value, TemporalType temporalType); @Override @Deprecated(since = "7") - SqmQuery setParameter(int position, Date value, TemporalType temporalType); + SqmQuery setParameter(int position, Date value, TemporalType temporalType); @Override @Deprecated(since = "7") - SqmQuery setParameter(int position, Calendar value, TemporalType temporalType); + SqmQuery setParameter(int position, Calendar value, TemporalType temporalType); @Override - SqmQuery setParameter(QueryParameter parameter, T value); + SqmQuery setParameter(QueryParameter parameter, T value); @Override -

SqmQuery setParameter(QueryParameter

parameter, P value, Class

type); +

SqmQuery setParameter(QueryParameter

parameter, P value, Class

type); @Override -

SqmQuery setParameter(QueryParameter

parameter, P val, Type

type); +

SqmQuery setParameter(QueryParameter

parameter, P val, Type

type); @Override - SqmQuery setParameter(Parameter param, T value); + SqmQuery setParameter(Parameter param, T value); @Override @Deprecated(since = "7") - SqmQuery setParameter(Parameter param, Calendar value, TemporalType temporalType); + SqmQuery setParameter(Parameter param, Calendar value, TemporalType temporalType); @Override @Deprecated(since = "7") - SqmQuery setParameter(Parameter param, Date value, TemporalType temporalType); + SqmQuery setParameter(Parameter param, Date value, TemporalType temporalType); @Override - SqmQuery setParameterList(String name, @SuppressWarnings("rawtypes") Collection values); + SqmQuery setParameterList(String name, @SuppressWarnings("rawtypes") Collection values); @Override -

SqmQuery setParameterList(String name, Collection values, Class

javaType); +

SqmQuery setParameterList(String name, Collection values, Class

javaType); @Override -

SqmQuery setParameterList(String name, Collection values, Type

type); +

SqmQuery setParameterList(String name, Collection values, Type

type); @Override - SqmQuery setParameterList(String name, Object[] values); + SqmQuery setParameterList(String name, Object[] values); @Override -

SqmQuery setParameterList(String name, P[] values, Class

javaType); +

SqmQuery setParameterList(String name, P[] values, Class

javaType); @Override -

SqmQuery setParameterList(String name, P[] values, Type

type); +

SqmQuery setParameterList(String name, P[] values, Type

type); @Override - SqmQuery setParameterList(int position, @SuppressWarnings("rawtypes") Collection values); + SqmQuery setParameterList(int position, @SuppressWarnings("rawtypes") Collection values); @Override -

SqmQuery setParameterList(int position, Collection values, Class

javaType); +

SqmQuery setParameterList(int position, Collection values, Class

javaType); @Override -

SqmQuery setParameterList(int position, Collection values, Type

type); +

SqmQuery setParameterList(int position, Collection values, Type

type); @Override - SqmQuery setParameterList(int position, Object[] values); + SqmQuery setParameterList(int position, Object[] values); @Override -

SqmQuery setParameterList(int position, P[] values, Class

javaType); +

SqmQuery setParameterList(int position, P[] values, Class

javaType); @Override -

SqmQuery setParameterList(int position, P[] values, Type

type); +

SqmQuery setParameterList(int position, P[] values, Type

type); @Override -

SqmQuery setParameterList(QueryParameter

parameter, Collection values); +

SqmQuery setParameterList(QueryParameter

parameter, Collection values); @Override -

SqmQuery setParameterList(QueryParameter

parameter, Collection values, Class

javaType); +

SqmQuery setParameterList(QueryParameter

parameter, Collection values, Class

javaType); @Override -

SqmQuery setParameterList(QueryParameter

parameter, Collection values, Type

type); +

SqmQuery setParameterList(QueryParameter

parameter, Collection values, Type

type); @Override -

SqmQuery setParameterList(QueryParameter

parameter, P[] values); +

SqmQuery setParameterList(QueryParameter

parameter, P[] values); @Override -

SqmQuery setParameterList(QueryParameter

parameter, P[] values, Class

javaType); +

SqmQuery setParameterList(QueryParameter

parameter, P[] values, Class

javaType); @Override -

SqmQuery setParameterList(QueryParameter

parameter, P[] values, Type

type); +

SqmQuery setParameterList(QueryParameter

parameter, P[] values, Type

type); @Override - SqmQuery setProperties(Object bean); + SqmQuery setProperties(Object bean); @Override - SqmQuery setProperties(@SuppressWarnings("rawtypes") Map bean); + SqmQuery setProperties(@SuppressWarnings("rawtypes") Map bean); @Override @Deprecated(since = "7") - SqmQuery setHibernateFlushMode(FlushMode flushMode); + SqmQuery setHibernateFlushMode(FlushMode flushMode); @Override - SqmQuery setQueryFlushMode(QueryFlushMode queryFlushMode); + SqmQuery setQueryFlushMode(QueryFlushMode queryFlushMode); } diff --git a/hibernate-core/src/main/java/org/hibernate/query/sqm/SqmSelectionQuery.java b/hibernate-core/src/main/java/org/hibernate/query/sqm/SqmSelectionQuery.java index a9c11a42941b..f9859ad11c2f 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/sqm/SqmSelectionQuery.java +++ b/hibernate-core/src/main/java/org/hibernate/query/sqm/SqmSelectionQuery.java @@ -26,7 +26,7 @@ /** * @author Steve Ebersole */ -public interface SqmSelectionQuery extends SqmQuery, SelectionQuery { +public interface SqmSelectionQuery extends SqmQuery, SelectionQuery { @Override SqmSelectionQuery setParameter(String name, Object value); diff --git a/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/ConcreteSqmSelectQueryPlan.java b/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/ConcreteSqmSelectQueryPlan.java index 70f66c045ad3..aa1f876fd69c 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/ConcreteSqmSelectQueryPlan.java +++ b/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/ConcreteSqmSelectQueryPlan.java @@ -61,7 +61,7 @@ import static org.hibernate.internal.util.ReflectHelper.isClass; import static org.hibernate.internal.util.collections.ArrayHelper.toStringArray; import static org.hibernate.query.sqm.internal.AppliedGraphs.containsCollectionFetches; -import static org.hibernate.query.sqm.internal.QuerySqmImpl.CRITERIA_HQL_STRING; +import static org.hibernate.query.sqm.internal.SqmQueryImpl.CRITERIA_HQL_STRING; import static org.hibernate.query.sqm.internal.SqmUtil.generateJdbcParamsXref; import static org.hibernate.query.sqm.internal.SqmUtil.isSelectionAssignableToResultType; diff --git a/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/QuerySqmImpl.java b/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SqmQueryImpl.java similarity index 99% rename from hibernate-core/src/main/java/org/hibernate/query/sqm/internal/QuerySqmImpl.java rename to hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SqmQueryImpl.java index 123340409ed2..e765cff01923 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/QuerySqmImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SqmQueryImpl.java @@ -115,7 +115,7 @@ * * @author Steve Ebersole */ -public class QuerySqmImpl +public class SqmQueryImpl extends AbstractSqmSelectionQuery implements SqmQueryImplementor, InterpretationsKeySource, DomainQueryExecutionContext { @@ -136,7 +136,7 @@ public class QuerySqmImpl * instance from a named HQL memento. * Form used from {@link NamedHqlQueryMementoImpl}. */ - public QuerySqmImpl( + public SqmQueryImpl( NamedSqmQueryMemento memento, Class expectedResultType, SharedSessionContractImplementor session) { @@ -151,7 +151,7 @@ public QuerySqmImpl( * instance from a named criteria query memento. * Form used from {@link NamedCriteriaQueryMementoImpl} */ - public QuerySqmImpl( + public SqmQueryImpl( NamedSqmQueryMemento memento, SqmStatement statement, Class resultType, @@ -163,7 +163,7 @@ public QuerySqmImpl( /** * Form used for HQL queries */ - public QuerySqmImpl( + public SqmQueryImpl( String hql, HqlInterpretation hqlInterpretation, Class resultType, @@ -193,7 +193,7 @@ else if ( resultType != null ) { /** * Form used for criteria queries */ - public QuerySqmImpl( + public SqmQueryImpl( SqmStatement criteria, Class expectedResultType, SharedSessionContractImplementor producer) { @@ -203,7 +203,7 @@ public QuerySqmImpl( /** * Used for specifications. */ - public QuerySqmImpl( + public SqmQueryImpl( SqmStatement criteria, boolean copyAst, Class expectedResultType, diff --git a/hibernate-core/src/main/java/org/hibernate/query/sqm/spi/DelegatingSqmSelectionQueryImplementor.java b/hibernate-core/src/main/java/org/hibernate/query/sqm/spi/DelegatingSqmSelectionQueryImplementor.java index d20e399f7e2d..42f21c32c3d4 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/sqm/spi/DelegatingSqmSelectionQueryImplementor.java +++ b/hibernate-core/src/main/java/org/hibernate/query/sqm/spi/DelegatingSqmSelectionQueryImplementor.java @@ -319,8 +319,8 @@ public String getQueryString() { return getDelegate().getQueryString(); } - @Override @SuppressWarnings("rawtypes") - public SqmStatement getSqmStatement() { + @Override + public SqmStatement getSqmStatement() { return getDelegate().getSqmStatement(); } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/CriteriaEntityGraphTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/CriteriaEntityGraphTest.java index 9363a7cbf0d3..f171bf7d0fc8 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/CriteriaEntityGraphTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/CriteriaEntityGraphTest.java @@ -24,7 +24,7 @@ import org.hibernate.persister.entity.EntityPersister; import org.hibernate.query.Query; import org.hibernate.query.hql.spi.SqmQueryImplementor; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.sql.SqmTranslation; import org.hibernate.query.sqm.sql.internal.StandardSqmTranslator; import org.hibernate.query.sqm.tree.select.SqmSelectStatement; @@ -405,7 +405,7 @@ private SelectStatement buildSqlSelectAst( final StandardSqmTranslator sqmConverter = new StandardSqmTranslator<>( sqmStatement, hqlQuery.getQueryOptions(), - ( (QuerySqmImpl) hqlQuery ).getDomainParameterXref(), + ( (SqmQueryImpl) hqlQuery ).getDomainParameterXref(), hqlQuery.getParameterBindings(), loadQueryInfluencers, session.getSessionFactory().getSqlTranslationEngine(), diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/HqlEntityGraphTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/HqlEntityGraphTest.java index 2fd7ddbb1f39..e45a77192f68 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/HqlEntityGraphTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/entitygraph/ast/HqlEntityGraphTest.java @@ -24,7 +24,7 @@ import org.hibernate.persister.entity.EntityPersister; import org.hibernate.query.Query; import org.hibernate.query.hql.spi.SqmQueryImplementor; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.sql.SqmTranslation; import org.hibernate.query.sqm.sql.internal.StandardSqmTranslator; import org.hibernate.query.sqm.tree.select.SqmSelectStatement; @@ -400,7 +400,7 @@ private SelectStatement buildSqlSelectAst( final StandardSqmTranslator sqmConverter = new StandardSqmTranslator<>( sqmStatement, hqlQuery.getQueryOptions(), - ( (QuerySqmImpl) hqlQuery ).getDomainParameterXref(), + ( (SqmQueryImpl) hqlQuery ).getDomainParameterXref(), hqlQuery.getParameterBindings(), loadQueryInfluencers, session.getSessionFactory().getSqlTranslationEngine(), diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/flush/NonTransactionalDataAccessTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/flush/NonTransactionalDataAccessTest.java index d1d894fd8929..66874390e61d 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/flush/NonTransactionalDataAccessTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/flush/NonTransactionalDataAccessTest.java @@ -15,7 +15,6 @@ import org.hibernate.Session; import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Configuration; -import org.hibernate.query.sqm.internal.QuerySqmImpl; import org.hibernate.testing.orm.junit.JiraKey; import org.hibernate.testing.junit4.BaseCoreFunctionalTestCase; @@ -144,7 +143,7 @@ public void hhh17743Test() throws Exception { MyEntity entity = new MyEntity("N1"); entityManager.persist(entity); - QuerySqmImpl q = (QuerySqmImpl)entityManager.createNamedQuery("deleteByName"); + var q = entityManager.createNamedQuery("deleteByName"); q.setParameter("name", "N1"); int d = q.executeUpdate(); assertEquals(0, d); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/hql/ASTParserLoadingTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/hql/ASTParserLoadingTest.java index efc3c41881eb..f1a6d8121017 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/hql/ASTParserLoadingTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/hql/ASTParserLoadingTest.java @@ -38,8 +38,8 @@ import org.hibernate.orm.test.cid.Product; import org.hibernate.query.Query; import org.hibernate.query.SyntaxException; +import org.hibernate.query.spi.SqmQuery; import org.hibernate.query.sqm.SqmExpressible; -import org.hibernate.query.sqm.internal.QuerySqmImpl; import org.hibernate.query.sqm.tree.domain.SqmPath; import org.hibernate.query.sqm.tree.expression.SqmFunction; import org.hibernate.query.sqm.tree.select.SqmSelectStatement; @@ -235,11 +235,10 @@ public void testJpaTypeOperator(SessionFactoryScope scope) { // select clause // control - Query query = session - .createQuery( "select a.class from Animal a where a.class = Dog" ); + Query query = session.createQuery( "select a.class from Animal a where a.class = Dog" ); query.list(); - SqmSelectStatement sqmStatement = (SqmSelectStatement) query.unwrap( QuerySqmImpl.class ) - .getSqmStatement(); + SqmSelectStatement sqmStatement = + (SqmSelectStatement) query.unwrap( SqmQuery.class ).getSqmStatement(); List> selections = sqmStatement.getQuerySpec().getSelectClause().getSelections(); assertThat( selections.size() ).isEqualTo( 1 ); SqmSelection typeSelection = selections.get( 0 ); @@ -249,7 +248,7 @@ public void testJpaTypeOperator(SessionFactoryScope scope) { // test query = session.createQuery( "select type(a) from Animal a where type(a) = Dog" ); query.list(); - sqmStatement = (SqmSelectStatement) query.unwrap( QuerySqmImpl.class ).getSqmStatement(); + sqmStatement = (SqmSelectStatement) query.unwrap( SqmQuery.class ).getSqmStatement(); selections = sqmStatement.getQuerySpec().getSelectClause().getSelections(); assertThat( selections.size() ).isEqualTo( 1 ); typeSelection = selections.get( 0 ); @@ -1454,8 +1453,8 @@ public void testComponentQueries(SessionFactoryScope scope) { scope.inTransaction( session -> { final Query query = session.createQuery( "select h.name from Human h" ); - final SqmSelectStatement sqmStatement = (SqmSelectStatement) query.unwrap( - QuerySqmImpl.class ).getSqmStatement(); + final SqmSelectStatement sqmStatement = + (SqmSelectStatement) query.unwrap( SqmQuery.class ).getSqmStatement(); assertThat( sqmStatement.getQuerySpec().getSelectClause().getSelections().size() ).isEqualTo( 1 ); final SqmSelection selection = sqmStatement.getQuerySpec().getSelectClause().getSelections() .get( 0 ); @@ -1837,8 +1836,8 @@ public void testQueryMetadataRetrievalWithFetching(SessionFactoryScope scope) { scope.inSession( session -> { final Query query = session.createQuery( "from Animal a inner join fetch a.mother" ); - final SqmSelectStatement sqmStatement = (SqmSelectStatement) query.unwrap( - QuerySqmImpl.class ).getSqmStatement(); + final SqmSelectStatement sqmStatement = + (SqmSelectStatement) query.unwrap( SqmQuery.class ).getSqmStatement(); assertThat( sqmStatement.getQuerySpec().getSelectClause().getSelections().size() ).isEqualTo( 1 ); final SqmSelection selection = sqmStatement.getQuerySpec().getSelectClause().getSelections() .get( 0 ); @@ -2150,8 +2149,7 @@ public void testSelectClauseImplicitJoin(SessionFactoryScope scope) { } private static void verifyAnimalZooSelection(Query q) { - final SqmSelectStatement sqmStatement = (SqmSelectStatement) q.unwrap( QuerySqmImpl.class ) - .getSqmStatement(); + final SqmSelectStatement sqmStatement = (SqmSelectStatement) q.unwrap( SqmQuery.class ).getSqmStatement(); final SqmSelection sqmSelection = sqmStatement.getQuerySpec().getSelectClause().getSelections().get( 0 ); assertThat( sqmSelection.getSelectableNode() ).isInstanceOf( SqmPath.class ); final SqmPath selectedPath = (SqmPath) sqmSelection.getSelectableNode(); @@ -2584,7 +2582,7 @@ public void testAliases(SessionFactoryScope scope) { session.persist( a ); Query q = session.createQuery( "select a.bodyWeight as abw, a.description from Animal a" ); - SqmSelectStatement sqmStatement = (SqmSelectStatement) q.unwrap( QuerySqmImpl.class ) + SqmSelectStatement sqmStatement = (SqmSelectStatement) q.unwrap( SqmQuery.class ) .getSqmStatement(); List> selections = sqmStatement.getQuerySpec().getSelectClause().getSelections(); assertThat( selections.size() ).isEqualTo( 2 ); @@ -2592,7 +2590,7 @@ public void testAliases(SessionFactoryScope scope) { assertThat( selections.get( 1 ).getAlias() ).isNull(); q = session.createQuery( "select count(*), avg(a.bodyWeight) as avg from Animal a" ); - sqmStatement = (SqmSelectStatement) q.unwrap( QuerySqmImpl.class ).getSqmStatement(); + sqmStatement = (SqmSelectStatement) q.unwrap( SqmQuery.class ).getSqmStatement(); selections = sqmStatement.getQuerySpec().getSelectClause().getSelections(); assertThat( selections.size() ).isEqualTo( 2 ); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/criteria/query/NamedQueryTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/criteria/query/NamedQueryTest.java index 7a6a4bd218db..b936d1b547a8 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/criteria/query/NamedQueryTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/criteria/query/NamedQueryTest.java @@ -4,7 +4,7 @@ */ package org.hibernate.orm.test.jpa.criteria.query; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.Query; import org.hibernate.testing.orm.domain.gambit.BasicEntity; import org.hibernate.testing.orm.junit.DomainModel; @@ -62,10 +62,9 @@ public void tearDown(SessionFactoryScope scope) { @Test public void testCriteria(SessionFactoryScope scope) { scope.inTransaction( session -> { - final TypedQuery query = session.createNamedQuery( "criteria_query", BasicEntity.class ); - final QuerySqmImpl querySqm = (QuerySqmImpl) query; - assertNull( querySqm.getQueryOptions().getLimit().getFirstRow() ); - assertNull( querySqm.getQueryOptions().getLimit().getMaxRows() ); + final Query query = session.createNamedQuery( "criteria_query", BasicEntity.class ); + assertNull( query.getQueryOptions().getLimit().getFirstRow() ); + assertNull( query.getQueryOptions().getLimit().getMaxRows() ); assertEquals( 2, query.getResultList().size() ); } ); } @@ -73,10 +72,9 @@ public void testCriteria(SessionFactoryScope scope) { @Test public void testCriteriaLimit(SessionFactoryScope scope) { scope.inTransaction( session -> { - final TypedQuery query = session.createNamedQuery( "criteria_query_limit", BasicEntity.class ); - final QuerySqmImpl querySqm = (QuerySqmImpl) query; - assertEquals( 1, querySqm.getQueryOptions().getLimit().getFirstRow() ); - assertEquals( 1, querySqm.getQueryOptions().getLimit().getMaxRows() ); + final Query query = session.createNamedQuery( "criteria_query_limit", BasicEntity.class ); + assertEquals( 1, query.getQueryOptions().getLimit().getFirstRow() ); + assertEquals( 1, query.getQueryOptions().getLimit().getMaxRows() ); assertEquals( 1, query.getResultList().size() ); } ); } @@ -84,10 +82,9 @@ public void testCriteriaLimit(SessionFactoryScope scope) { @Test public void testHql(SessionFactoryScope scope) { scope.inTransaction( session -> { - final TypedQuery query = session.createNamedQuery( "hql_query", BasicEntity.class ); - final QuerySqmImpl querySqm = (QuerySqmImpl) query; - assertNull( querySqm.getQueryOptions().getLimit().getFirstRow() ); - assertNull( querySqm.getQueryOptions().getLimit().getMaxRows() ); + final Query query = session.createNamedQuery( "hql_query", BasicEntity.class ); + assertNull( query.getQueryOptions().getLimit().getFirstRow() ); + assertNull( query.getQueryOptions().getLimit().getMaxRows() ); assertEquals( 2, query.getResultList().size() ); } ); } @@ -95,10 +92,9 @@ public void testHql(SessionFactoryScope scope) { @Test public void testHqlLimit(SessionFactoryScope scope) { scope.inTransaction( session -> { - final TypedQuery query = session.createNamedQuery( "hql_query_limit", BasicEntity.class ); - final QuerySqmImpl querySqm = (QuerySqmImpl) query; - assertEquals( 1, querySqm.getQueryOptions().getLimit().getFirstRow() ); - assertEquals( 1, querySqm.getQueryOptions().getLimit().getMaxRows() ); + final Query query = session.createNamedQuery( "hql_query_limit", BasicEntity.class ); + assertEquals( 1, query.getQueryOptions().getLimit().getFirstRow() ); + assertEquals( 1, query.getQueryOptions().getLimit().getMaxRows() ); assertEquals( 1, query.getResultList().size() ); } ); } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/query/ToHqlStringTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/query/ToHqlStringTest.java index 86c896c627cc..d25671390faf 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/query/ToHqlStringTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/query/ToHqlStringTest.java @@ -48,7 +48,7 @@ public void testCriteriaCountDistinctToHqlString(EntityManagerFactoryScope scope criteriaQuery = criteriaQuery.select( countDistinct ); TypedQuery query = entityManager.createQuery( criteriaQuery ); - ( (SqmQuery) query ).getSqmStatement().toHqlString(); + ( (SqmQuery) query ).getSqmStatement().toHqlString(); } ); } @@ -58,7 +58,7 @@ public void testHqlCountDistinctToHqlString(EntityManagerFactoryScope scope) { scope.inTransaction( entityManager -> { Query query = entityManager.createQuery( "select count (distinct t) from TestEntity t" ); - ( (SqmQuery) query ).getSqmStatement().toHqlString(); + ( (SqmQuery) query ).getSqmStatement().toHqlString(); } ); } @@ -69,7 +69,7 @@ public void testDynamicInstantiationToHqlString(EntityManagerFactoryScope scope) entityManager -> { Query query = entityManager.createQuery( "select new org.hibernate.orm.test.query.ToHqlStringTest$TestDto(" + " t.id, t.name ) from TestEntity t" ); - ( (SqmQuery) query ).getSqmStatement().toHqlString(); + ( (SqmQuery) query ).getSqmStatement().toHqlString(); } ); } @@ -87,7 +87,7 @@ public void testCriteriaWithTreatToHqlString(EntityManagerFactoryScope scope) { criteriaQuery = criteriaQuery.select( entity ); TypedQuery query = entityManager.createQuery( criteriaQuery ); - String hqlString = ( (SqmQuery) query ).getSqmStatement().toHqlString(); + String hqlString = ( (SqmQuery) query ).getSqmStatement().toHqlString(); final int fromIndex = hqlString.indexOf( " from " ); final String alias = hqlString.substring( "select ".length(), fromIndex ); assertThat( hqlString.substring( fromIndex ), containsString( alias ) ); @@ -109,7 +109,7 @@ public void testCriteriaWithFunctionTakingOneArgument(EntityManagerFactoryScope ); TypedQuery query = entityManager.createQuery( criteriaQuery ); - String hqlString = ( (SqmQuery) query ).getSqmStatement().toHqlString(); + String hqlString = ( (SqmQuery) query ).getSqmStatement().toHqlString(); assertThat( hqlString, containsString( "where lower('Foo') = 'foo'" ) ); } ); @@ -129,7 +129,7 @@ public void testCriteriaWithFunctionTakingTwoArguments(EntityManagerFactoryScope ) ); TypedQuery query = entityManager.createQuery( criteriaQuery ); - String hqlString = ( (SqmQuery) query ).getSqmStatement().toHqlString(); + String hqlString = ( (SqmQuery) query ).getSqmStatement().toHqlString(); assertThat( hqlString, containsString( "where myFunction(0, 10)" ) ); } ); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/query/sqm/exec/ParameterTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/query/sqm/exec/ParameterTest.java index e5558622f2d3..c7f832490dda 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/query/sqm/exec/ParameterTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/query/sqm/exec/ParameterTest.java @@ -7,7 +7,7 @@ import org.hibernate.query.Query; import org.hibernate.query.spi.QueryParameterImplementor; import org.hibernate.query.sqm.internal.DomainParameterXref; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.testing.orm.domain.StandardDomainModel; import org.hibernate.testing.orm.junit.DomainModel; @@ -50,7 +50,7 @@ public void testParametersWithQueryInterpretationCache(SessionFactoryScope scope scope.inTransaction( session -> { Query q = session.createQuery( query ); - DomainParameterXref xref = q.unwrap( QuerySqmImpl.class ).getDomainParameterXref(); + DomainParameterXref xref = q.unwrap( SqmQueryImpl.class ).getDomainParameterXref(); for ( QueryParameterImplementor p : xref.getQueryParameters().keySet() ) { Assertions.assertTrue( q.getParameterMetadata().containsReference( p ) ); } @@ -59,7 +59,7 @@ public void testParametersWithQueryInterpretationCache(SessionFactoryScope scope scope.inTransaction( session -> { Query q = session.createQuery( query ); - DomainParameterXref xref = q.unwrap( QuerySqmImpl.class ).getDomainParameterXref(); + DomainParameterXref xref = q.unwrap( SqmQueryImpl.class ).getDomainParameterXref(); for ( QueryParameterImplementor p : xref.getQueryParameters().keySet() ) { Assertions.assertTrue( q.getParameterMetadata().containsReference( p ) ); } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SmokeTests.java b/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SmokeTests.java index 7984d20999bc..23b9044efb0b 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SmokeTests.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SmokeTests.java @@ -11,7 +11,7 @@ import org.hibernate.query.hql.spi.SqmQueryImplementor; import org.hibernate.query.Query; import org.hibernate.query.spi.QueryOptions; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.sql.SqmTranslation; import org.hibernate.query.sqm.sql.internal.StandardSqmTranslator; import org.hibernate.query.sqm.tree.select.SqmSelectStatement; @@ -113,7 +113,7 @@ public void testConvertedHqlInterpretation(SessionFactoryScope scope) { final StandardSqmTranslator sqmConverter = new StandardSqmTranslator<>( sqmStatement, hqlQuery.getQueryOptions(), - ( (QuerySqmImpl) hqlQuery ).getDomainParameterXref(), + ( (SqmQueryImpl) hqlQuery ).getDomainParameterXref(), hqlQuery.getParameterBindings(), session.getLoadQueryInfluencers(), scope.getSessionFactory().getSqlTranslationEngine(), diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SqlAstHelper.java b/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SqlAstHelper.java index 9f57a8e6d167..270f359ee095 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SqlAstHelper.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/sql/ast/SqlAstHelper.java @@ -6,7 +6,7 @@ import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.query.Query; -import org.hibernate.query.sqm.internal.QuerySqmImpl; +import org.hibernate.query.sqm.internal.SqmQueryImpl; import org.hibernate.query.sqm.sql.SqmTranslation; import org.hibernate.query.sqm.sql.internal.StandardSqmTranslator; import org.hibernate.query.sqm.tree.select.SqmSelectStatement; @@ -18,7 +18,7 @@ public class SqlAstHelper { public static SelectStatement translateHqlSelectQuery(String hql, Class returnType, SessionImplementor session) { final Query query = session.createQuery( hql, returnType ); - final QuerySqmImpl hqlQuery = (QuerySqmImpl) query; + final SqmQueryImpl hqlQuery = (SqmQueryImpl) query; final SqmSelectStatement sqmStatement = (SqmSelectStatement) hqlQuery.getSqmStatement(); final StandardSqmTranslator sqmConverter = new StandardSqmTranslator<>(