Skip to content

Commit 8f8349b

Browse files
committed
HSEARCH-3319 Use mapper specific root-scope-creators
1 parent 1cc5790 commit 8f8349b

File tree

15 files changed

+75
-249
lines changed

15 files changed

+75
-249
lines changed

documentation/src/test/java/org/hibernate/search/documentation/search/predicate/FieldReferenceIT.java

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,14 @@
1919
import org.hibernate.search.documentation.testsupport.BackendConfigurations;
2020
import org.hibernate.search.documentation.testsupport.DocumentationSetupHelper;
2121
import org.hibernate.search.engine.backend.types.Projectable;
22-
import org.hibernate.search.engine.common.EntityReference;
23-
import org.hibernate.search.engine.mapper.scope.SearchScopeProvider;
2422
import org.hibernate.search.engine.search.common.ValueConvert;
2523
import org.hibernate.search.engine.search.predicate.SearchPredicate;
26-
import org.hibernate.search.engine.search.reference.RootReferenceScope;
2724
import org.hibernate.search.engine.search.reference.predicate.MatchPredicateFieldReference;
2825
import org.hibernate.search.engine.search.reference.projection.FieldProjectionFieldReference;
2926
import org.hibernate.search.mapper.orm.Search;
27+
import org.hibernate.search.mapper.orm.scope.HibernateOrmRootReferenceScope;
3028
import org.hibernate.search.mapper.orm.scope.SearchScope;
29+
import org.hibernate.search.mapper.orm.scope.SearchScopeProvider;
3130
import org.hibernate.search.mapper.orm.session.SearchSession;
3231
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.FullTextField;
3332
import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed;
@@ -198,7 +197,7 @@ public static class EntityC extends EntityB {
198197
public static class EntityA_ {
199198
public static ValueFieldReference1<EntityA_, String, String, String> stringA;
200199

201-
public static RootReferenceScope<EntityA_, EntityA> scope;
200+
public static HibernateOrmRootReferenceScope<EntityA_, EntityA> scope;
202201

203202
static {
204203
stringA = ValueFieldReference1.of( "stringA", EntityA_.class, String.class, String.class, String.class );
@@ -210,7 +209,7 @@ public static class EntityA_ {
210209
public static class EntityB_ extends EntityA_ {
211210
public static ValueFieldReference1<EntityB_, String, String, String> stringB;
212211

213-
public static RootReferenceScope<EntityB_, EntityB> scope;
212+
public static HibernateOrmRootReferenceScope<EntityB_, EntityB> scope;
214213

215214
static {
216215
stringB = ValueFieldReference1.of( "stringB", EntityB_.class, String.class, String.class, String.class );
@@ -222,7 +221,7 @@ public static class EntityB_ extends EntityA_ {
222221
public static class EntityC_ extends EntityB_ {
223222
public static ValueFieldReference1<EntityC_, String, String, String> stringC;
224223

225-
public static RootReferenceScope<EntityC_, EntityC> scope;
224+
public static HibernateOrmRootReferenceScope<EntityC_, EntityC> scope;
226225

227226
static {
228227
stringC = ValueFieldReference1.of( "stringC", EntityC_.class, String.class, String.class, String.class );
@@ -235,7 +234,7 @@ public static class EntityB_union_EntityC_ {
235234
public static ValueFieldReference1<EntityB_union_EntityC_, String, String, String> stringA;
236235
public static ValueFieldReference1<EntityB_union_EntityC_, String, String, String> stringB;
237236

238-
public static RootReferenceScope<EntityB_union_EntityC_, EntityB> scope;
237+
public static HibernateOrmRootReferenceScope<EntityB_union_EntityC_, EntityB> scope;
239238

240239
static {
241240
stringA = ValueFieldReference1.of( "stringA", EntityB_union_EntityC_.class, String.class, String.class,
@@ -286,7 +285,7 @@ public static class Entity2C {
286285
public static class Entity2A_union_Entity2B_ {
287286
public static ValueFieldReference1<Entity2A_union_Entity2B_, String, String, String> stringA;
288287

289-
public static RootReferenceScope<Entity2A_union_Entity2B_, Object> scope;
288+
public static HibernateOrmRootReferenceScope<Entity2A_union_Entity2B_, Object> scope;
290289

291290
static {
292291
stringA = ValueFieldReference1.of( "stringA", Entity2A_union_Entity2B_.class, String.class, String.class,
@@ -298,7 +297,7 @@ public static class Entity2A_union_Entity2B_ {
298297
public static class Entity2A_ {
299298
public static ValueFieldReference1<Entity2A_, String, String, String> stringA;
300299

301-
public static RootReferenceScope<Entity2A_, Entity2A> scope;
300+
public static HibernateOrmRootReferenceScope<Entity2A_, Entity2A> scope;
302301

303302
static {
304303
stringA = ValueFieldReference1.of( "stringA", Entity2A_.class, String.class, String.class, String.class );
@@ -311,7 +310,7 @@ public static class Entity2B_ {
311310
public static ValueFieldReference1<Entity2B_, String, String, String> stringA;
312311
public static ValueFieldReference1<Entity2B_, String, String, String> stringB;
313312

314-
public static RootReferenceScope<Entity2B_, Entity2B> scope;
313+
public static HibernateOrmRootReferenceScope<Entity2B_, Entity2B> scope;
315314

316315
static {
317316
stringA = ValueFieldReference1.of( "stringA", Entity2B_.class, String.class, String.class, String.class );
@@ -325,7 +324,7 @@ public static class Entity2C_ {
325324
public static ValueFieldReference1<Entity2C_, String, String, String> stringA;
326325
public static ValueFieldReference1<Entity2C_, String, String, String> stringC;
327326

328-
public static RootReferenceScope<Entity2C_, Entity2C> scope;
327+
public static HibernateOrmRootReferenceScope<Entity2C_, Entity2C> scope;
329328

330329
static {
331330
stringA = ValueFieldReference1.of( "stringA", Entity2C_.class, String.class, String.class, String.class );
@@ -415,12 +414,13 @@ public Class<P> projectionType() {
415414

416415
}
417416

418-
private static class RootReferenceScopeImpl<SR, E> implements RootReferenceScope<SR, E> {
417+
private static class RootReferenceScopeImpl<SR, E> implements HibernateOrmRootReferenceScope<SR, E> {
419418

420419
private final Class<SR> rootReferenceType;
421420
private final Class<? extends E>[] entityClass;
422421

423-
static <SR, E> RootReferenceScope<SR, E> of(Class<SR> rootReferenceType, Class<? extends E>... entityClass) {
422+
static <SR, E> HibernateOrmRootReferenceScope<SR, E> of(Class<SR> rootReferenceType,
423+
Class<? extends E>... entityClass) {
424424
return new RootReferenceScopeImpl<>( rootReferenceType, entityClass );
425425
}
426426

@@ -435,11 +435,8 @@ public Class<SR> rootReferenceType() {
435435
}
436436

437437
@Override
438-
public <
439-
ER extends EntityReference,
440-
S extends org.hibernate.search.engine.mapper.scope.SearchScope<SR, E, ER>,
441-
P extends SearchScopeProvider<ER>> S create(P scopeProvider) {
442-
return (S) scopeProvider.scope( Arrays.asList( entityClass ) );
438+
public SearchScope<SR, E> create(SearchScopeProvider scopeProvider) {
439+
return scopeProvider.scope( Arrays.asList( entityClass ) );
443440
}
444441
}
445442

engine/src/main/java/org/hibernate/search/engine/mapper/scope/SearchScope.java

Lines changed: 0 additions & 129 deletions
This file was deleted.

engine/src/main/java/org/hibernate/search/engine/mapper/scope/SearchScopeProvider.java

Lines changed: 0 additions & 76 deletions
This file was deleted.

engine/src/main/java/org/hibernate/search/engine/search/reference/RootReferenceScope.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,9 @@
66
*/
77
package org.hibernate.search.engine.search.reference;
88

9-
import org.hibernate.search.engine.common.EntityReference;
10-
import org.hibernate.search.engine.mapper.scope.SearchScope;
11-
import org.hibernate.search.engine.mapper.scope.SearchScopeProvider;
9+
import org.hibernate.search.util.common.annotation.Incubating;
1210

11+
@Incubating
1312
public interface RootReferenceScope<SR, T> {
1413
Class<SR> rootReferenceType();
15-
16-
<ER extends EntityReference, S extends SearchScope<SR, T, ER>, P extends SearchScopeProvider<ER>> S create(P scopeProvider);
1714
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/*
2+
* Hibernate Search, full-text search for your domain model
3+
*
4+
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
5+
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
6+
*/
7+
package org.hibernate.search.mapper.orm.scope;
8+
9+
import org.hibernate.search.engine.search.reference.RootReferenceScope;
10+
import org.hibernate.search.util.common.annotation.Incubating;
11+
12+
@Incubating
13+
public interface HibernateOrmRootReferenceScope<SR, T> extends RootReferenceScope<SR, T> {
14+
15+
SearchScope<SR, T> create(SearchScopeProvider scopeProvider);
16+
}

mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/SearchScope.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
* @param <E> A supertype of all types in this scope.
4141
*/
4242
@SuppressWarnings("deprecation")
43-
public interface SearchScope<SR, E> extends org.hibernate.search.engine.mapper.scope.SearchScope<SR, E, EntityReference> {
43+
public interface SearchScope<SR, E> {
4444

4545
/**
4646
* Initiate the building of a search predicate.

mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/SearchScopeProvider.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,7 @@
1818
* @see org.hibernate.search.mapper.orm.session.SearchSession
1919
*/
2020
@SuppressWarnings("deprecation")
21-
public interface SearchScopeProvider
22-
extends
23-
org.hibernate.search.engine.mapper.scope.SearchScopeProvider<org.hibernate.search.mapper.orm.common.EntityReference> {
21+
public interface SearchScopeProvider {
2422

2523
/**
2624
* Creates a {@link SearchScope} limited to

mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414

1515
import org.hibernate.Session;
1616
import org.hibernate.search.engine.search.query.dsl.SearchQuerySelectStep;
17-
import org.hibernate.search.engine.search.reference.RootReferenceScope;
1817
import org.hibernate.search.mapper.orm.mapping.SearchMapping;
1918
import org.hibernate.search.mapper.orm.massindexing.MassIndexer;
2019
import org.hibernate.search.mapper.orm.schema.management.SearchSchemaManager;
20+
import org.hibernate.search.mapper.orm.scope.HibernateOrmRootReferenceScope;
2121
import org.hibernate.search.mapper.orm.scope.SearchScope;
2222
import org.hibernate.search.mapper.orm.scope.SearchScopeProvider;
2323
import org.hibernate.search.mapper.orm.search.loading.dsl.SearchLoadingOptionsStep;
@@ -115,7 +115,7 @@ public interface SearchSession extends SearchScopeProvider {
115115
T,
116116
SearchLoadingOptionsStep,
117117
?,
118-
?> search(RootReferenceScope<SR, T> scope);
118+
?> search(HibernateOrmRootReferenceScope<SR, T> scope);
119119

120120
/**
121121
* Create a {@link SearchSchemaManager} for all indexes.

0 commit comments

Comments
 (0)