Skip to content

Commit

Permalink
HSEARCH-4775 Avoid direct references to setParameter methods in ORM q…
Browse files Browse the repository at this point in the history
…uery adapters

ORM 6.2 makes some changes to the setParameter methods, so we'd better
avoid overriding them altogether. Overriding locateBinding() methods is
safe, though.
  • Loading branch information
yrodiere authored and marko-bekhta committed Sep 25, 2023
1 parent ee4d3db commit 4be4d06
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
package org.hibernate.search.mapper.orm.search.query.impl;

import java.lang.invoke.MethodHandles;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
Expand All @@ -29,7 +28,9 @@
import org.hibernate.query.spi.AbstractQuery;
import org.hibernate.query.spi.ParameterMetadataImplementor;
import org.hibernate.query.spi.QueryImplementor;
import org.hibernate.query.spi.QueryParameterBinding;
import org.hibernate.query.spi.QueryParameterBindings;
import org.hibernate.query.spi.QueryParameterImplementor;
import org.hibernate.query.spi.ScrollableResultsImplementor;
import org.hibernate.search.engine.search.query.SearchQuery;
import org.hibernate.search.engine.search.query.spi.SearchQueryImplementor;
Expand All @@ -43,6 +44,7 @@
import org.hibernate.search.util.common.logging.impl.LoggerFactory;

import jakarta.persistence.LockModeType;
import jakarta.persistence.Parameter;
import jakarta.persistence.PersistenceException;
import jakarta.persistence.QueryTimeoutException;

Expand Down Expand Up @@ -232,17 +234,22 @@ protected QueryParameterBindings getQueryParameterBindings() {
}

@Override
public HibernateOrmSearchQueryAdapter<R> setParameterList(String name, Object[] values) {
protected <P> QueryParameterBinding<P> locateBinding(String name) {
throw parametersNoSupported();
}

@Override
public QueryImplementor<R> setParameterList(String s, Collection collection, Class aClass) {
protected <P> QueryParameterBinding<P> locateBinding(int position) {
throw parametersNoSupported();
}

@Override
public QueryImplementor<R> setParameterList(int i, Collection collection, Class aClass) {
protected <P> QueryParameterBinding<P> locateBinding(Parameter<P> parameter) {
throw parametersNoSupported();
}

@Override
protected <P> QueryParameterBinding<P> locateBinding(QueryParameterImplementor<P> parameter) {
throw parametersNoSupported();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
package org.hibernate.search.query.hibernate.impl;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
Expand All @@ -17,6 +16,7 @@

import jakarta.persistence.FlushModeType;
import jakarta.persistence.LockModeType;
import jakarta.persistence.Parameter;
import jakarta.persistence.PersistenceException;
import jakarta.persistence.QueryTimeoutException;

Expand All @@ -35,7 +35,9 @@
import org.hibernate.query.spi.AbstractQuery;
import org.hibernate.query.spi.ParameterMetadataImplementor;
import org.hibernate.query.spi.QueryImplementor;
import org.hibernate.query.spi.QueryParameterBinding;
import org.hibernate.query.spi.QueryParameterBindings;
import org.hibernate.query.spi.QueryParameterImplementor;
import org.hibernate.query.spi.ScrollableResultsImplementor;
import org.hibernate.search.FullTextQuery;
import org.hibernate.search.engine.search.query.SearchScroll;
Expand Down Expand Up @@ -288,17 +290,22 @@ protected QueryParameterBindings getQueryParameterBindings() {
}

@Override
public QueryImplementor<?> setParameterList(String name, Object[] values) {
protected QueryParameterBinding locateBinding(String name) {
throw parametersNoSupported();
}

@Override
public QueryImplementor<?> setParameterList(String s, Collection collection, Class aClass) {
protected QueryParameterBinding locateBinding(int position) {
throw parametersNoSupported();
}

@Override
public QueryImplementor<?> setParameterList(int i, Collection collection, Class aClass) {
protected QueryParameterBinding locateBinding(Parameter parameter) {
throw parametersNoSupported();
}

@Override
protected QueryParameterBinding locateBinding(QueryParameterImplementor parameter) {
throw parametersNoSupported();
}

Expand Down

0 comments on commit 4be4d06

Please sign in to comment.