From 691a125178747660dc27a5739ab302fb4cef7f5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 12:08:33 +0200 Subject: [PATCH 01/11] HSEARCH-3606 Rename SearchWriter to SearchWorkspace SearchWorkspace = SearchScope + tenantId --- .../mapper-orm-indexing-manual.asciidoc | 28 ++++----- .../HibernateOrmManualIndexingIT.java | 26 ++++----- ...ractSearchWorkspaceSimpleOperationIT.java} | 58 +++++++++---------- .../SearchWorkspaceFlushIT.java} | 14 ++--- .../SearchWorkspaceOptimizeIT.java} | 14 ++--- .../SearchWorkspacePurgeIT.java} | 14 ++--- .../search/mapper/orm/scope/SearchScope.java | 18 +++--- .../orm/scope/impl/SearchScopeImpl.java | 16 ++--- .../mapper/orm/session/SearchSession.java | 34 +++++------ .../impl/HibernateOrmSearchSession.java | 6 +- .../session/impl/LazyInitSearchSession.java | 6 +- .../SearchWorkspace.java} | 17 +++--- .../impl/SearchWorkspaceImpl.java} | 8 +-- 13 files changed, 131 insertions(+), 128 deletions(-) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/{writing/AbstractSearchWriterSimpleOperationIT.java => workspace/AbstractSearchWorkspaceSimpleOperationIT.java} (74%) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/{writing/SearchWriterFlushIT.java => workspace/SearchWorkspaceFlushIT.java} (63%) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/{writing/SearchWriterOptimizeIT.java => workspace/SearchWorkspaceOptimizeIT.java} (63%) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/{writing/SearchWriterPurgeIT.java => workspace/SearchWorkspacePurgeIT.java} (63%) rename mapper/orm/src/main/java/org/hibernate/search/mapper/orm/{writing/SearchWriter.java => work/SearchWorkspace.java} (84%) rename mapper/orm/src/main/java/org/hibernate/search/mapper/orm/{writing/impl/SearchWriterImpl.java => work/impl/SearchWorkspaceImpl.java} (81%) diff --git a/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc b/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc index e012fb4aff0..5ee1d4bd963 100644 --- a/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc +++ b/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc @@ -248,7 +248,7 @@ but rather about a large number of documents, possibly all of them. This includes, for example, purging the index to remove all of its content. The operations are performed *outside* of the context of an ORM session, -using the `SearchWriter` interface. +using the `SearchWorkspace` interface. This interface exposes various large-scale operations that can be applied to an index or a set of indexes. These operations are triggered as soon as they are requested, @@ -257,10 +257,10 @@ without waiting for the transaction commit. This interface offers the following methods: `purge()`:: -Purge the indexes targeted by this writer, removing all documents. +Purge the indexes targeted by this workspace, removing all documents. + When using multi-tenancy, only documents of one tenant will be removed: -the tenant of the session from which this writer originated. +the tenant of the session from which this workspace originated. `purgeAsync()`:: Asynchronous version of `purge()` returning a `CompletableFuture`. `flush()`:: @@ -273,7 +273,7 @@ Only to be used by experts fully aware of the implications. `flushAsync()`:: Asynchronous version of `flush()` returning a `CompletableFuture`. `optimize()`:: -Merge all segments of the indexes targeted by this writer into a single one. +Merge all segments of the indexes targeted by this workspace into a single one. + Note this operation may affect performance positively as well as negatively. As a rule of thumb, if indexes are read-only for extended periods of time, @@ -283,31 +283,31 @@ is likely to degrade read/write performance overall. `optimizeAsync()`:: Asynchronous version of `optimize()` returning a `CompletableFuture`. -Below is an example using a `SearchWriter` to purge several indexes. +Below is an example using a `SearchWorkspace` to purge several indexes. -.Purging indexes using a `SearchWriter` +.Purging indexes using a `SearchWorkspace` ==== [source, JAVA, indent=0] ---- -include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=writer-purge] +include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=workspace-purge] ---- <1> Get a `SearchSession`. -<2> Get a writer targeting the indexes mapped to the `Book` and `Author` entity types. +<2> Get a workspace targeting the indexes mapped to the `Book` and `Author` entity types. <3> Trigger a purge. This method is synchronous and will only return after the purge is complete, but an asynchronous method, `purgeAsync`, is also available. ==== -There are multiple ways to retrieve the `SearchWriter` to target one, several or all indexes: +There are multiple ways to retrieve a `SearchWorkspace` to target one, several or all indexes: -.Retrieving a `SearchWriter` +.Retrieving a `SearchWorkspace` ==== [source, JAVA, indent=0] ---- -include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=writer-retrieval] +include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=workspace-retrieval] ---- <1> Get a `SearchSession`. -<2> Get a writer targeting all indexes. -<3> Get a writer targeting the index mapped to the `Book` entity type. -<4> Get a writer targeting the indexes mapped to the `Book` and `Author` entity types. +<2> Get a workspace targeting all indexes. +<3> Get a workspace targeting the index mapped to the `Book` entity type. +<4> Get a workspace targeting the indexes mapped to the `Book` and `Author` entity types. ==== diff --git a/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java b/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java index 90a990986eb..2f68621645c 100644 --- a/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java +++ b/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java @@ -17,7 +17,7 @@ import org.hibernate.search.mapper.orm.cfg.HibernateOrmMapperSettings; import org.hibernate.search.mapper.orm.session.SearchSession; import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendConfiguration; import org.hibernate.search.util.impl.integrationtest.orm.OrmSetupHelper; import org.hibernate.search.util.impl.integrationtest.orm.OrmUtils; @@ -205,29 +205,29 @@ public void delete() { } @Test - public void writer() { + public void workspace() { int numberOfBooks = 10; EntityManagerFactory entityManagerFactory = setup( AutomaticIndexingStrategyName.SESSION ); initBooksAndAuthors( entityManagerFactory, numberOfBooks ); OrmUtils.withinEntityManager( entityManagerFactory, entityManager -> { - // tag::writer-retrieval[] + // tag::workspace-retrieval[] SearchSession searchSession = Search.session( entityManager ); // <1> - SearchWriter writer1 = searchSession.writer(); // <2> - SearchWriter writer2 = searchSession.writer( Book.class ); // <3> - SearchWriter writer3 = searchSession.writer( Book.class, Author.class ); // <4> - // end::writer-retrieval[] + SearchWorkspace workspace1 = searchSession.workspace(); // <2> + SearchWorkspace workspace2 = searchSession.workspace( Book.class ); // <3> + SearchWorkspace workspace3 = searchSession.workspace( Book.class, Author.class ); // <4> + // end::workspace-retrieval[] } ); OrmUtils.withinEntityManager( entityManagerFactory, entityManager -> { assertBookCount( entityManager, numberOfBooks ); assertAuthorCount( entityManager, numberOfBooks ); - // tag::writer-purge[] + // tag::workspace-purge[] SearchSession searchSession = Search.session( entityManager ); // <1> - SearchWriter writer = searchSession.writer( Book.class, Author.class ); // <2> - writer.purge(); // <3> - // end::writer-purge[] + SearchWorkspace workspace = searchSession.workspace( Book.class, Author.class ); // <2> + workspace.purge(); // <3> + // end::workspace-purge[] assertBookCount( entityManager, 0 ); assertAuthorCount( entityManager, 0 ); @@ -279,7 +279,7 @@ private Author newAuthor(int id) { private void assertBookCount(EntityManager entityManager, int expectedCount) { SearchSession searchSession = Search.session( entityManager ); // Ensure every committed work is searchable: flush also executes a refresh on Elasticsearch - searchSession.writer().flush(); + searchSession.workspace().flush(); assertThat( searchSession.search( Book.class ) .predicate( f -> f.matchAll() ) @@ -291,7 +291,7 @@ private void assertBookCount(EntityManager entityManager, int expectedCount) { private void assertAuthorCount(EntityManager entityManager, int expectedCount) { SearchSession searchSession = Search.session( entityManager ); // Ensure every committed work is searchable: flush also executes a refresh on Elasticsearch - searchSession.writer().flush(); + searchSession.workspace().flush(); assertThat( searchSession.search( Author.class ) .predicate( f -> f.matchAll() ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/AbstractSearchWriterSimpleOperationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/AbstractSearchWorkspaceSimpleOperationIT.java similarity index 74% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/AbstractSearchWriterSimpleOperationIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/AbstractSearchWorkspaceSimpleOperationIT.java index 1c05b22fb21..c3ceb5d6078 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/AbstractSearchWriterSimpleOperationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/AbstractSearchWorkspaceSimpleOperationIT.java @@ -4,7 +4,7 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.integrationtest.mapper.orm.writing; +package org.hibernate.search.integrationtest.mapper.orm.workspace; import static org.hibernate.search.util.impl.test.FutureAssert.assertThat; @@ -15,7 +15,7 @@ import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.search.mapper.orm.Search; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; import org.hibernate.search.util.impl.integrationtest.orm.OrmSetupHelper; @@ -25,7 +25,7 @@ import org.junit.Rule; import org.junit.Test; -public abstract class AbstractSearchWriterSimpleOperationIT { +public abstract class AbstractSearchWorkspaceSimpleOperationIT { private static final String BACKEND1_NAME = "stubBackend1"; private static final String BACKEND2_NAME = "stubBackend2"; @@ -44,17 +44,17 @@ public void async_success() { SessionFactory sessionFactory = setup(); OrmUtils.withinSession( sessionFactory, session -> { - SearchWriter writer = Search.session( session ).writer( IndexedEntity1.class ); + SearchWorkspace workspace = Search.session( session ).workspace( IndexedEntity1.class ); CompletableFuture futureFromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, futureFromBackend ); - CompletableFuture futureFromWriter = executeAsync( writer ); + CompletableFuture futureFromWorkspace = executeAsync( workspace ); backend1Mock.verifyExpectationsMet(); - assertThat( futureFromWriter ).isPending(); + assertThat( futureFromWorkspace ).isPending(); futureFromBackend.complete( new Object() ); - assertThat( futureFromWriter ).isSuccessful(); + assertThat( futureFromWorkspace ).isSuccessful(); } ); } @@ -63,18 +63,18 @@ public void async_failure() { SessionFactory sessionFactory = setup(); OrmUtils.withinSession( sessionFactory, session -> { - SearchWriter writer = Search.session( session ).writer( IndexedEntity1.class ); + SearchWorkspace workspace = Search.session( session ).workspace( IndexedEntity1.class ); CompletableFuture futureFromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, futureFromBackend ); - CompletableFuture futureFromWriter = executeAsync( writer ); + CompletableFuture futureFromWorkspace = executeAsync( workspace ); backend1Mock.verifyExpectationsMet(); - assertThat( futureFromWriter ).isPending(); + assertThat( futureFromWorkspace ).isPending(); RuntimeException exception = new RuntimeException(); futureFromBackend.completeExceptionally( exception ); - assertThat( futureFromWriter ).isFailed( exception ); + assertThat( futureFromWorkspace ).isFailed( exception ); } ); } @@ -83,13 +83,13 @@ public void sync_success() { SessionFactory sessionFactory = setup(); OrmUtils.withinSession( sessionFactory, session -> { - SearchWriter writer = Search.session( session ).writer( IndexedEntity1.class ); + SearchWorkspace workspace = Search.session( session ).workspace( IndexedEntity1.class ); CompletableFuture futureFromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, futureFromBackend ); futureFromBackend.complete( new Object() ); - executeSync( writer ); + executeSync( workspace ); backend1Mock.verifyExpectationsMet(); } ); } @@ -99,7 +99,7 @@ public void sync_failure() { SessionFactory sessionFactory = setup(); OrmUtils.withinSession( sessionFactory, session -> { - SearchWriter writer = Search.session( session ).writer( IndexedEntity1.class ); + SearchWorkspace workspace = Search.session( session ).workspace( IndexedEntity1.class ); CompletableFuture futureFromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, futureFromBackend ); @@ -108,7 +108,7 @@ public void sync_failure() { futureFromBackend.completeExceptionally( exception ); SubTest.expectException( - () -> executeSync( writer ) + () -> executeSync( workspace ) ) .assertThrown() .isSameAs( exception ); @@ -120,23 +120,23 @@ public void multiIndexMultiBackend() { SessionFactory sessionFactory = setup(); OrmUtils.withinSession( sessionFactory, session -> { - SearchWriter writer = Search.session( session ).writer(); + SearchWorkspace workspace = Search.session( session ).workspace(); CompletableFuture future1FromBackend = new CompletableFuture<>(); CompletableFuture future2FromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, future1FromBackend ); expectWork( backend2Mock, IndexedEntity2.INDEX_NAME, future2FromBackend ); - CompletableFuture futureFromWriter = executeAsync( writer ); + CompletableFuture futureFromWorkspace = executeAsync( workspace ); backend1Mock.verifyExpectationsMet(); backend2Mock.verifyExpectationsMet(); - assertThat( futureFromWriter ).isPending(); + assertThat( futureFromWorkspace ).isPending(); future1FromBackend.complete( new Object() ); - assertThat( futureFromWriter ).isPending(); + assertThat( futureFromWorkspace ).isPending(); future2FromBackend.complete( new Object() ); - assertThat( futureFromWriter ).isSuccessful(); + assertThat( futureFromWorkspace ).isSuccessful(); } ); } @@ -144,32 +144,32 @@ public void multiIndexMultiBackend() { public void outOfSession() { SessionFactory sessionFactory = setup(); - SearchWriter writer; + SearchWorkspace workspace; try ( Session session = sessionFactory.openSession() ) { - writer = Search.session( session ).writer( IndexedEntity1.class ); + workspace = Search.session( session ).workspace( IndexedEntity1.class ); } CompletableFuture futureFromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, futureFromBackend ); - CompletableFuture futureFromWriter = executeAsync( writer ); + CompletableFuture futureFromWorkspace = executeAsync( workspace ); backend1Mock.verifyExpectationsMet(); - assertThat( futureFromWriter ).isPending(); + assertThat( futureFromWorkspace ).isPending(); futureFromBackend.complete( new Object() ); - assertThat( futureFromWriter ).isSuccessful(); + assertThat( futureFromWorkspace ).isSuccessful(); } @Test public void fromMappingWithoutSession() { SessionFactory sessionFactory = setup(); - SearchWriter writer = Search.mapping( sessionFactory ).scope( IndexedEntity1.class ).writer(); + SearchWorkspace workspace = Search.mapping( sessionFactory ).scope( IndexedEntity1.class ).workspace(); CompletableFuture futureFromBackend = new CompletableFuture<>(); expectWork( backend1Mock, IndexedEntity1.INDEX_NAME, futureFromBackend ); - CompletableFuture futureFromWriter = executeAsync( writer ); + CompletableFuture futureFromWriter = executeAsync( workspace ); backend1Mock.verifyExpectationsMet(); assertThat( futureFromWriter ).isPending(); @@ -179,9 +179,9 @@ public void fromMappingWithoutSession() { protected abstract void expectWork(BackendMock backendMock, String indexName, CompletableFuture future); - protected abstract void executeSync(SearchWriter writer); + protected abstract void executeSync(SearchWorkspace workspace); - protected abstract CompletableFuture executeAsync(SearchWriter writer); + protected abstract CompletableFuture executeAsync(SearchWorkspace workspace); private SessionFactory setup() { backend1Mock.expectAnySchema( IndexedEntity1.INDEX_NAME ); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterFlushIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspaceFlushIT.java similarity index 63% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterFlushIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspaceFlushIT.java index 3793e4eb79c..1d11fcdf5a3 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterFlushIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspaceFlushIT.java @@ -4,16 +4,16 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.integrationtest.mapper.orm.writing; +package org.hibernate.search.integrationtest.mapper.orm.workspace; import java.util.concurrent.CompletableFuture; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; import org.hibernate.search.util.impl.test.annotation.TestForIssue; @TestForIssue(jiraKey = "HSEARCH-3049") -public class SearchWriterFlushIT extends AbstractSearchWriterSimpleOperationIT { +public class SearchWorkspaceFlushIT extends AbstractSearchWorkspaceSimpleOperationIT { @Override protected void expectWork(BackendMock backendMock, String indexName, CompletableFuture future) { backendMock.expectIndexScopeWorks( indexName ) @@ -21,12 +21,12 @@ protected void expectWork(BackendMock backendMock, String indexName, Completable } @Override - protected void executeSync(SearchWriter writer) { - writer.flush(); + protected void executeSync(SearchWorkspace workspace) { + workspace.flush(); } @Override - protected CompletableFuture executeAsync(SearchWriter writer) { - return writer.flushAsync(); + protected CompletableFuture executeAsync(SearchWorkspace workspace) { + return workspace.flushAsync(); } } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterOptimizeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspaceOptimizeIT.java similarity index 63% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterOptimizeIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspaceOptimizeIT.java index c3be0c779e8..5c9c7669495 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterOptimizeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspaceOptimizeIT.java @@ -4,16 +4,16 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.integrationtest.mapper.orm.writing; +package org.hibernate.search.integrationtest.mapper.orm.workspace; import java.util.concurrent.CompletableFuture; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; import org.hibernate.search.util.impl.test.annotation.TestForIssue; @TestForIssue(jiraKey = "HSEARCH-3049") -public class SearchWriterOptimizeIT extends AbstractSearchWriterSimpleOperationIT { +public class SearchWorkspaceOptimizeIT extends AbstractSearchWorkspaceSimpleOperationIT { @Override protected void expectWork(BackendMock backendMock, String indexName, CompletableFuture future) { backendMock.expectIndexScopeWorks( indexName ) @@ -21,12 +21,12 @@ protected void expectWork(BackendMock backendMock, String indexName, Completable } @Override - protected void executeSync(SearchWriter writer) { - writer.optimize(); + protected void executeSync(SearchWorkspace workspace) { + workspace.optimize(); } @Override - protected CompletableFuture executeAsync(SearchWriter writer) { - return writer.optimizeAsync(); + protected CompletableFuture executeAsync(SearchWorkspace workspace) { + return workspace.optimizeAsync(); } } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterPurgeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspacePurgeIT.java similarity index 63% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterPurgeIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspacePurgeIT.java index 4f6bded1d95..06191ddacf2 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/writing/SearchWriterPurgeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/workspace/SearchWorkspacePurgeIT.java @@ -4,16 +4,16 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.integrationtest.mapper.orm.writing; +package org.hibernate.search.integrationtest.mapper.orm.workspace; import java.util.concurrent.CompletableFuture; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; import org.hibernate.search.util.impl.test.annotation.TestForIssue; @TestForIssue(jiraKey = "HSEARCH-3049") -public class SearchWriterPurgeIT extends AbstractSearchWriterSimpleOperationIT { +public class SearchWorkspacePurgeIT extends AbstractSearchWorkspaceSimpleOperationIT { @Override protected void expectWork(BackendMock backendMock, String indexName, CompletableFuture future) { backendMock.expectIndexScopeWorks( indexName ) @@ -21,12 +21,12 @@ protected void expectWork(BackendMock backendMock, String indexName, Completable } @Override - protected void executeSync(SearchWriter writer) { - writer.purge(); + protected void executeSync(SearchWorkspace workspace) { + workspace.purge(); } @Override - protected CompletableFuture executeAsync(SearchWriter writer) { - return writer.purgeAsync(); + protected CompletableFuture executeAsync(SearchWorkspace workspace) { + return workspace.purgeAsync(); } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/SearchScope.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/SearchScope.java index 7870dfcde57..c6d8d329a97 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/SearchScope.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/SearchScope.java @@ -17,7 +17,7 @@ import org.hibernate.search.engine.search.query.dsl.SearchQueryPredicateStep; import org.hibernate.search.engine.search.sort.dsl.SearchSortFactory; import org.hibernate.search.mapper.orm.massindexing.MassIndexer; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.mapper.orm.search.query.dsl.HibernateOrmSearchQueryHitTypeStep; import org.hibernate.search.mapper.orm.common.EntityReference; @@ -96,25 +96,25 @@ public interface SearchScope { SearchAggregationFactory aggregation(); /** - * Create a {@link SearchWriter} for the indexes mapped to types in this scope, or to any of their sub-types. + * Create a {@link SearchWorkspace} for the indexes mapped to types in this scope, or to any of their sub-types. *

* This method only works for single-tenant applications. - * If multi-tenancy is enabled, use {@link #writer(String)} instead. + * If multi-tenancy is enabled, use {@link #workspace(String)} instead. * - * @return A {@link SearchWriter}. + * @return A {@link SearchWorkspace}. */ - SearchWriter writer(); + SearchWorkspace workspace(); /** - * Create a {@link SearchWriter} for the indexes mapped to types in this scope, or to any of their sub-types. + * Create a {@link SearchWorkspace} for the indexes mapped to types in this scope, or to any of their sub-types. *

* This method only works for multi-tenant applications. - * If multi-tenancy is disabled, use {@link #writer()} instead. + * If multi-tenancy is disabled, use {@link #workspace()} instead. * * @param tenantId The identifier of the tenant whose index content should be targeted. - * @return A {@link SearchWriter}. + * @return A {@link SearchWorkspace}. */ - SearchWriter writer(String tenantId); + SearchWorkspace workspace(String tenantId); /** * Create a {@link MassIndexer} for the indexes mapped to types in this scope, or to any of their sub-types. diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java index 9d2f919b4de..962b3c51389 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java @@ -17,8 +17,8 @@ import org.hibernate.search.mapper.orm.search.query.dsl.HibernateOrmSearchQueryHitTypeStep; import org.hibernate.search.mapper.orm.search.query.dsl.impl.HibernateOrmSearchQueryHitTypeStepImpl; import org.hibernate.search.mapper.orm.search.loading.context.impl.HibernateOrmLoadingContext; -import org.hibernate.search.mapper.orm.writing.SearchWriter; -import org.hibernate.search.mapper.orm.writing.impl.SearchWriterImpl; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; +import org.hibernate.search.mapper.orm.work.impl.SearchWorkspaceImpl; import org.hibernate.search.mapper.pojo.scope.spi.PojoScopeDelegate; import org.hibernate.search.mapper.orm.common.EntityReference; @@ -64,17 +64,17 @@ public SearchAggregationFactory aggregation() { } @Override - public SearchWriter writer() { - return writer( (String) null ); + public SearchWorkspace workspace() { + return workspace( (String) null ); } @Override - public SearchWriter writer(String tenantId) { - return writer( mappingContext.getDetachedBackendSessionContext( tenantId ) ); + public SearchWorkspace workspace(String tenantId) { + return workspace( mappingContext.getDetachedBackendSessionContext( tenantId ) ); } - public SearchWriter writer(DetachedBackendSessionContext detachedSessionContext) { - return new SearchWriterImpl( delegate.executor( detachedSessionContext ) ); + public SearchWorkspace workspace(DetachedBackendSessionContext detachedSessionContext) { + return new SearchWorkspaceImpl( delegate.executor( detachedSessionContext ) ); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java index b6502a67929..3cd1c9253e0 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java @@ -14,7 +14,7 @@ import org.hibernate.Session; import org.hibernate.search.mapper.orm.scope.SearchScope; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.mapper.orm.massindexing.MassIndexer; import org.hibernate.search.mapper.orm.search.query.dsl.HibernateOrmSearchQueryHitTypeStep; @@ -59,31 +59,31 @@ default HibernateOrmSearchQueryHitTypeStep search(Class type) { HibernateOrmSearchQueryHitTypeStep search(SearchScope scope); /** - * Create a {@link SearchWriter} for the indexes mapped to all indexed types. + * Create a {@link SearchWorkspace} for the indexes mapped to all indexed types. * - * @return A {@link SearchWriter}. + * @return A {@link SearchWorkspace}. */ - default SearchWriter writer() { - return writer( Collections.singleton( Object.class ) ); + default SearchWorkspace workspace() { + return workspace( Collections.singleton( Object.class ) ); } /** - * Create a {@link SearchWriter} for the indexes mapped to the given type, or to any of its sub-types. + * Create a {@link SearchWorkspace} for the indexes mapped to the given type, or to any of its sub-types. * - * @param types One or more indexed types, or supertypes of all indexed types that will be targeted by the writer. - * @return A {@link SearchWriter}. + * @param types One or more indexed types, or supertypes of all indexed types that will be targeted by the workspace. + * @return A {@link SearchWorkspace}. */ - default SearchWriter writer(Class ... types) { - return writer( Arrays.asList( types ) ); + default SearchWorkspace workspace(Class ... types) { + return workspace( Arrays.asList( types ) ); } /** - * Create a {@link SearchWriter} for the indexes mapped to the given types, or to any of their sub-types. + * Create a {@link SearchWorkspace} for the indexes mapped to the given types, or to any of their sub-types. * - * @param types A collection of indexed types, or supertypes of all indexed types that will be targeted by the writer. - * @return A {@link SearchWriter}. + * @param types A collection of indexed types, or supertypes of all indexed types that will be targeted by the workspace. + * @return A {@link SearchWorkspace}. */ - SearchWriter writer(Collection> types); + SearchWorkspace workspace(Collection> types); /** * Creates a {@link MassIndexer} to rebuild the indexes of all indexed entity types. @@ -101,7 +101,7 @@ default MassIndexer massIndexer() { *

* {@link MassIndexer} instances cannot be reused. * - * @param types An array of indexed types, or supertypes of all indexed types that will be targeted by the writer. + * @param types An array of indexed types, or supertypes of all indexed types that will be targeted by the workspace. * @return The created mass indexer. */ default MassIndexer massIndexer(Class... types) { @@ -111,8 +111,8 @@ default MassIndexer massIndexer(Class... types) { /** * Creates a {@link MassIndexer} to rebuild the indexes mapped to the given types, or to any of their sub-types. * - * @param types A collection of indexed types, or supertypes of all indexed types that will be targeted by the writer. - * @return A {@link SearchWriter}. + * @param types A collection of indexed types, or supertypes of all indexed types that will be targeted by the workspace. + * @return A {@link SearchWorkspace}. */ MassIndexer massIndexer(Collection> types); diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java index 4d0fbe38d6b..5042b95a931 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java @@ -39,7 +39,7 @@ import org.hibernate.search.mapper.orm.session.SearchSession; import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; import org.hibernate.search.mapper.orm.session.context.impl.HibernateOrmSessionContextImpl; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.session.spi.AbstractPojoSearchSession; import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; @@ -133,8 +133,8 @@ private HibernateOrmSearchQueryHitTypeStep search(SearchScopeImpl scop } @Override - public SearchWriter writer(Collection> types) { - return scope( types ).writer( DetachedBackendSessionContext.of( sessionContext ) ); + public SearchWorkspace workspace(Collection> types) { + return scope( types ).workspace( DetachedBackendSessionContext.of( sessionContext ) ); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java index b3603e70dbc..6c95759dd67 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java @@ -19,7 +19,7 @@ import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; import org.hibernate.search.mapper.orm.session.SearchSession; import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; /** * A lazily initializing {@link SearchSession}. @@ -50,8 +50,8 @@ public HibernateOrmSearchQueryHitTypeStep search(SearchScope scope) { } @Override - public SearchWriter writer(Collection> types) { - return getDelegate().writer( types ); + public SearchWorkspace workspace(Collection> types) { + return getDelegate().workspace( types ); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/writing/SearchWriter.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/SearchWorkspace.java similarity index 84% rename from mapper/orm/src/main/java/org/hibernate/search/mapper/orm/writing/SearchWriter.java rename to mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/SearchWorkspace.java index 2e507a8f7a0..8f9a96b8389 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/writing/SearchWriter.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/SearchWorkspace.java @@ -4,26 +4,29 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.mapper.orm.writing; +package org.hibernate.search.mapper.orm.work; import java.util.concurrent.CompletableFuture; /** - * The entry point for explicit index write operations. + * The entry point for explicit index operations. + *

+ * A {@link SearchWorkspace} targets a pre-defined set of indexed types (and their indexes), + * filtered to only affect a single tenant, if relevant. *

* While {@link org.hibernate.search.mapper.orm.cfg.HibernateOrmMapperSettings#AUTOMATIC_INDEXING_STRATEGY automatic indexing} * generally takes care of indexing entities as they are persisted/deleted in the database, * there are cases where massive operations must be applied to the index, * such as completely purging the index. - * This is where the {@link SearchWriter} comes in. + * This is where the {@link SearchWorkspace} comes in. */ -public interface SearchWriter { +public interface SearchWorkspace { /** - * Purge the indexes targeted by this writer, removing all documents. + * Purge the data targeted by this workspaces, removing all documents. *

* When using multi-tenancy, only documents of one tenant will be removed: - * the tenant that was targeted by the session from where this writer originated. + * the tenant that was targeted by the session from where this workspace originated. */ void purge(); @@ -60,7 +63,7 @@ public interface SearchWriter { CompletableFuture flushAsync(); /** - * Merge all segments of the indexes targeted by this writer into a single one. + * Merge all segments of the indexes targeted by this workspace into a single one. *

* Note this operation may affect performance positively as well as negatively. * As a rule of thumb, if indexes are read-only for extended periods of time, diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/writing/impl/SearchWriterImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java similarity index 81% rename from mapper/orm/src/main/java/org/hibernate/search/mapper/orm/writing/impl/SearchWriterImpl.java rename to mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java index 794bdb4380f..23ce01bf854 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/writing/impl/SearchWriterImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java @@ -4,18 +4,18 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.mapper.orm.writing.impl; +package org.hibernate.search.mapper.orm.work.impl; import java.util.concurrent.CompletableFuture; -import org.hibernate.search.mapper.orm.writing.SearchWriter; +import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; import org.hibernate.search.util.common.impl.Futures; -public class SearchWriterImpl implements SearchWriter { +public class SearchWorkspaceImpl implements SearchWorkspace { private final PojoScopeWorkExecutor scopeWorkExecutor; - public SearchWriterImpl(PojoScopeWorkExecutor scopeWorkExecutor) { + public SearchWorkspaceImpl(PojoScopeWorkExecutor scopeWorkExecutor) { this.scopeWorkExecutor = scopeWorkExecutor; } From 8d0bcea7277c6f9ad793dcecc5f80e35b0f74978 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 12:22:36 +0200 Subject: [PATCH 02/11] HSEARCH-3606 Make SearchSessionWritePlan more independent from HibernateOrmSearchSession --- .../impl/HibernateOrmSearchSession.java | 12 ++++--- .../impl/SearchSessionWritePlanContext.java | 18 +++++++++++ .../impl/SearchSessionWritePlanImpl.java | 31 ++++++++++--------- 3 files changed, 43 insertions(+), 18 deletions(-) create mode 100644 mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java index 5042b95a931..aeb1edd923d 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java @@ -52,7 +52,8 @@ * The actual implementation of {@link SearchSession}. */ public class HibernateOrmSearchSession extends AbstractPojoSearchSession - implements SearchSession, HibernateOrmScopeSessionContext, ReferenceHitMapper { + implements SearchSession, HibernateOrmScopeSessionContext, SearchSessionWritePlanContext, + ReferenceHitMapper { /** * @param sessionImplementor A Hibernate session @@ -205,9 +206,11 @@ public PojoSessionWorkExecutor createSessionWorkExecutor(DocumentCommitStrategy return getDelegate().createSessionWorkExecutor( commitStrategy ); } + @Override @SuppressWarnings("unchecked") public PojoWorkPlan getCurrentWorkPlan(boolean createIfDoesNotExist) { SessionImplementor sessionImplementor = sessionContext.getSession(); + checkOrmSessionIsOpen( sessionImplementor ); Transaction transactionIdentifier = null; TransientReference> reference = (TransientReference>) sessionImplementor.getProperties() @@ -249,7 +252,8 @@ public PojoWorkPlan getCurrentWorkPlan(boolean createIfDoesNotExist) { return workPlan; } - AutomaticIndexingSynchronizationStrategy getAutomaticIndexingSynchronizationStrategy() { + @Override + public AutomaticIndexingSynchronizationStrategy getAutomaticIndexingSynchronizationStrategy() { return synchronizationStrategy; } @@ -312,11 +316,11 @@ private boolean isLocalTransaction(SessionImplementor sessionImplementor) { .isJta(); } - void checkOrmSessionIsOpen() { + private void checkOrmSessionIsOpen() { checkOrmSessionIsOpen( sessionContext.getSession() ); } - static void checkOrmSessionIsOpen(SessionImplementor session) { + private static void checkOrmSessionIsOpen(SessionImplementor session) { try { session.checkOpen(); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java new file mode 100644 index 00000000000..e8ca8dd210a --- /dev/null +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java @@ -0,0 +1,18 @@ +/* + * Hibernate Search, full-text search for your domain model + * + * License: GNU Lesser General Public License (LGPL), version 2.1 or later + * See the lgpl.txt file in the root directory or . + */ +package org.hibernate.search.mapper.orm.session.impl; + +import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; +import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; + +public interface SearchSessionWritePlanContext { + + AutomaticIndexingSynchronizationStrategy getAutomaticIndexingSynchronizationStrategy(); + + PojoWorkPlan getCurrentWorkPlan(boolean createIfDoesNotExist); + +} diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java index 6344c284ea3..d9055bc34a0 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java @@ -11,41 +11,44 @@ final class SearchSessionWritePlanImpl implements SearchSessionWritePlan { - private final HibernateOrmSearchSession searchSession; + private final SearchSessionWritePlanContext context; - SearchSessionWritePlanImpl(HibernateOrmSearchSession searchSession) { - this.searchSession = searchSession; + SearchSessionWritePlanImpl(SearchSessionWritePlanContext context) { + this.context = context; } @Override public void addOrUpdate(Object entity) { - getCurrentWorkPlan().update( entity ); + context.getCurrentWorkPlan( true ).update( entity ); } @Override public void delete(Object entity) { - getCurrentWorkPlan().delete( entity ); + context.getCurrentWorkPlan( true ).delete( entity ); } @Override public void purge(Class entityClass, Object providedId) { - getCurrentWorkPlan().purge( entityClass, providedId ); + context.getCurrentWorkPlan( true ).purge( entityClass, providedId ); } @Override public void process() { - getCurrentWorkPlan().prepare(); + PojoWorkPlan plan = context.getCurrentWorkPlan( false ); + if ( plan == null ) { + return; + } + plan.prepare(); } @Override public void execute() { - searchSession.getAutomaticIndexingSynchronizationStrategy().handleFuture( - getCurrentWorkPlan().execute() + PojoWorkPlan plan = context.getCurrentWorkPlan( false ); + if ( plan == null ) { + return; + } + context.getAutomaticIndexingSynchronizationStrategy().handleFuture( + plan.execute() ); } - - private PojoWorkPlan getCurrentWorkPlan() { - searchSession.checkOrmSessionIsOpen(); - return searchSession.getCurrentWorkPlan( true ); - } } From 90cc6a14da3c8632322c30182176fc73961c4a79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 12:38:37 +0200 Subject: [PATCH 03/11] HSEARCH-3606 Rename SearchSessionWritePlan to SearchIndexingPlan --- .../mapper-orm-indexing-automatic.asciidoc | 4 +- .../mapper-orm-indexing-manual.asciidoc | 42 ++++----- .../HibernateOrmManualIndexingIT.java | 22 ++--- .../AutomaticIndexingBasicIT.java | 10 +-- .../AutomaticIndexingOutOfTransactionIT.java | 10 +-- ...eIT.java => SearchIndexingPlanBaseIT.java} | 86 +++++++++---------- ...hIndexingPlanNonEntityIdDocumentIdIT.java} | 16 ++-- ...chIndexingPlanPersistBatchIndexingIT.java} | 12 +-- .../AutomaticIndexingStrategyName.java | 2 +- .../mapper/orm/session/SearchSession.java | 5 +- .../impl/HibernateOrmSearchSession.java | 16 ++-- .../session/impl/LazyInitSearchSession.java | 6 +- .../SearchIndexingPlan.java} | 8 +- .../impl/SearchIndexingPlanContext.java} | 4 +- .../impl/SearchIndexingPlanImpl.java} | 10 +-- 15 files changed, 128 insertions(+), 125 deletions(-) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/{SearchSessionWritePlanBaseIT.java => SearchIndexingPlanBaseIT.java} (85%) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/{SearchSessionWritePlanNonEntityIdDocumentIdIT.java => SearchIndexingPlanNonEntityIdDocumentIdIT.java} (85%) rename integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/{SearchSessionWritePlanPersistBatchIndexingIT.java => SearchIndexingPlanPersistBatchIndexingIT.java} (93%) rename mapper/orm/src/main/java/org/hibernate/search/mapper/orm/{session/SearchSessionWritePlan.java => work/SearchIndexingPlan.java} (95%) rename mapper/orm/src/main/java/org/hibernate/search/mapper/orm/{session/impl/SearchSessionWritePlanContext.java => work/impl/SearchIndexingPlanContext.java} (84%) rename mapper/orm/src/main/java/org/hibernate/search/mapper/orm/{session/impl/SearchSessionWritePlanImpl.java => work/impl/SearchIndexingPlanImpl.java} (77%) diff --git a/documentation/src/main/asciidoc/mapper-orm-indexing-automatic.asciidoc b/documentation/src/main/asciidoc/mapper-orm-indexing-automatic.asciidoc index e9be6a057e9..cff343add1d 100644 --- a/documentation/src/main/asciidoc/mapper-orm-indexing-automatic.asciidoc +++ b/documentation/src/main/asciidoc/mapper-orm-indexing-automatic.asciidoc @@ -55,7 +55,7 @@ entity changes performed up to the flush will be indexed correctly. If you come from Hibernate Search 5 or earlier, you may see this as a significant improvement: there is no need to call `flushToIndexes()` and update indexes in the middle of a transaction anymore, -except for larger volumes of data (see <>). +except for larger volumes of data (see <>). ==== Inside transactions, indexing happens after transactions are committed:: When entity changes happen inside a transaction, @@ -68,7 +68,7 @@ and perform flush/clear, regularly to save memory, be aware that Hibernate Search's internal buffer holding documents to index will grow on each flush, and will not be cleared until the transaction is committed or rolled back. If you encounter memory issues because of that, -see <> for a few solutions. +see <> for a few solutions. Outside of transactions, indexing happens on session flush:: When entity changes happen outside of any transaction (not recommended), indexes are updated immediately upon session `flush()`. diff --git a/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc b/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc index 5ee1d4bd963..2c1c1026893 100644 --- a/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc +++ b/documentation/src/main/asciidoc/mapper-orm-indexing-manual.asciidoc @@ -24,8 +24,8 @@ As with everything in Hibernate Search, these APIs only affect the Hibernate Search indexes: they do not write anything to the database. -[[mapper-orm-indexing-manual-writeplan-process-execute]] -== Controlling entity reads and index writes with `SearchSessionWritePlan` +[[mapper-orm-indexing-manual-indexingplan-process-execute]] +== Controlling entity reads and index writes with `SearchIndexingPlan` // Search 5 anchors backward compatibility [[search-batchindex-flushtoindexes]] @@ -91,7 +91,7 @@ include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/Hibe Note we're relying on automatic indexing to index the entity, but this would work just as well if automatic indexing was disabled, only requiring an extra call to index the entity. -See <>. +See <>. <5> Commit the transaction at the end of each iteration of the outer loop. The entities will be flushed and indexed automatically. ==== @@ -113,7 +113,7 @@ after the call to `session.flush()`/`session.clear()`, without waiting for the database transaction to be committed: the internal document buffer will be cleared after each write to indexes. -This is done by calling the `execute()` method on the write plan, +This is done by calling the `execute()` method on the indexing plan, as shown in the example below. [IMPORTANT] @@ -126,7 +126,7 @@ The index will thus be inconsistent with the database. To recover from that situation, you will have to either execute the exact same database changes that failed manually (to get the database back in sync with the index), -or <> affected by the transaction manually +or <> affected by the transaction manually (to get the index back in sync with the database). Of course, if you can afford to take the indexes offline for a longer period of time, @@ -141,13 +141,13 @@ and <>. include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=persist-automatic-indexing-periodic-flush-execute-clear] ---- <1> Get the `SearchSession`. -<2> Get the search session's write plan. +<2> Get the search session's indexing plan. <3> For every iteration of the loop, instantiate a new entity and persist it. Note we're relying on automatic indexing to index the entity, but this would work just as well if automatic indexing was disabled, only requiring an extra call to index the entity. -See <>. -<4> After after a `flush()`/`clear()`, call `writePlan.execute()`. +See <>. +<4> After after a `flush()`/`clear()`, call `indexingPlan.execute()`. The entities will be processed and *the changes will be sent to the indexes immediately*. Hibernate Search will wait for index changes to be "completed" as required by the configured <>. @@ -156,7 +156,7 @@ The remaining entities that were not flushed/cleared will be flushed and indexed ==== -[[mapper-orm-indexing-manual-writeplan-writes]] +[[mapper-orm-indexing-manual-indexingplan-writes]] == Explicitly indexing and deleting specific documents // Search 5 anchors backward compatibility [[_adding_instances_to_the_index]] @@ -167,7 +167,7 @@ the indexes will start empty and stay that way until explicit indexing commands are sent to Hibernate Search. Indexing is done in the context of an ORM session -using the `SearchSessionWritePlan` interface. +using the `SearchIndexingPlan` interface. This interface represents the (mutable) set of changes that are planned in the context of a session, and will be applied to indexes upon transaction commit. @@ -193,35 +193,35 @@ Respectively, process the changes and apply them to indexes. + These methods will be executed automatically on commit, so they are only useful when processing large number of items, -as explained in <>. +as explained in <>. Below are examples of using `addOrUpdate` and `delete`. -.Explicitly adding or updating an entity in the index using `SearchSessionWritePlan` +.Explicitly adding or updating an entity in the index using `SearchIndexingPlan` ==== [source, JAVA, indent=0] ---- -include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=write-plan-addOrUpdate] +include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=indexing-plan-addOrUpdate] ---- <1> Get the `SearchSession`. -<2> Get the search session's write plan. +<2> Get the search session's indexing plan. <3> Fetch from the database the `Book` we want to index. -<4> Submit the `Book` to the write plan for an add-or-update operation. +<4> Submit the `Book` to the indexing plan for an add-or-update operation. The operation won't be executed immediately, but will be delayed until the transaction is committed. <5> Commit the transaction, allowing Hibernate Search to actually write the document to the index. ==== -.Explicitly deleting an entity from the index using `SearchSessionWritePlan` +.Explicitly deleting an entity from the index using `SearchIndexingPlan` ==== [source, JAVA, indent=0] ---- -include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=write-plan-delete] +include::{sourcedir}/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java[tags=indexing-plan-delete] ---- <1> Get the `SearchSession`. -<2> Get the search session's write plan. +<2> Get the search session's indexing plan. <3> Fetch from the database the `Book` we want to un-index. -<4> Submit the `Book` to the write plan for a delete operation. +<4> Submit the `Book` to the indexing plan for a delete operation. The operation won't be executed immediately, but will be delayed until the transaction is committed. <5> Commit the transaction, allowing Hibernate Search to actually delete the document from the index. @@ -229,7 +229,7 @@ but will be delayed until the transaction is committed. [TIP] ==== -Multiple operations can be performed in a single write plan. +Multiple operations can be performed in a single indexing plan. The same entity can even be changed multiple times, for example added and then removed: Hibernate Search will simplify the operation as expected. @@ -238,7 +238,7 @@ This will work fine for any reasonable number of entities, but changing or simply loading large numbers of entities in a single session requires special care with Hibernate ORM, and then some extra care with Hibernate Search. -See <> for more information. +See <> for more information. ==== == Explicitly altering a whole index diff --git a/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java b/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java index 2f68621645c..b29bc239bb5 100644 --- a/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java +++ b/documentation/src/test/java/org/hibernate/search/documentation/mapper/orm/indexing/HibernateOrmManualIndexingIT.java @@ -16,7 +16,7 @@ import org.hibernate.search.mapper.orm.automaticindexing.AutomaticIndexingStrategyName; import org.hibernate.search.mapper.orm.cfg.HibernateOrmMapperSettings; import org.hibernate.search.mapper.orm.session.SearchSession; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendConfiguration; import org.hibernate.search.util.impl.integrationtest.orm.OrmSetupHelper; @@ -86,7 +86,7 @@ public void persist_automaticIndexing_periodicFlushExecuteClear() { // tag::persist-automatic-indexing-periodic-flush-execute-clear[] SearchSession searchSession = Search.session( entityManager ); // <1> - SearchSessionWritePlan searchWritePlan = searchSession.writePlan(); // <2> + SearchIndexingPlan indexingPlan = searchSession.indexingPlan(); // <2> entityManager.getTransaction().begin(); try { @@ -97,7 +97,7 @@ public void persist_automaticIndexing_periodicFlushExecuteClear() { if ( ( i + 1 ) % BATCH_SIZE == 0 ) { entityManager.flush(); entityManager.clear(); - searchWritePlan.execute(); // <4> + indexingPlan.execute(); // <4> } } entityManager.getTransaction().commit(); // <5> @@ -151,15 +151,15 @@ public void addOrUpdate() { OrmUtils.withinEntityManager( entityManagerFactory, entityManager -> { assertBookCount( entityManager, 0 ); - // tag::write-plan-addOrUpdate[] + // tag::indexing-plan-addOrUpdate[] SearchSession searchSession = Search.session( entityManager ); // <1> - SearchSessionWritePlan searchWritePlan = searchSession.writePlan(); // <2> + SearchIndexingPlan indexingPlan = searchSession.indexingPlan(); // <2> entityManager.getTransaction().begin(); try { Book book = entityManager.getReference( Book.class, 5 ); // <3> - searchWritePlan.addOrUpdate( book ); // <4> + indexingPlan.addOrUpdate( book ); // <4> entityManager.getTransaction().commit(); // <5> } @@ -167,7 +167,7 @@ public void addOrUpdate() { entityManager.getTransaction().rollback(); throw e; } - // end::write-plan-addOrUpdate[] + // end::indexing-plan-addOrUpdate[] assertBookCount( entityManager, 1 ); } ); @@ -182,15 +182,15 @@ public void delete() { OrmUtils.withinEntityManager( entityManagerFactory, entityManager -> { assertBookCount( entityManager, numberOfBooks ); - // tag::write-plan-delete[] + // tag::indexing-plan-delete[] SearchSession searchSession = Search.session( entityManager ); // <1> - SearchSessionWritePlan searchWritePlan = searchSession.writePlan(); // <2> + SearchIndexingPlan indexingPlan = searchSession.indexingPlan(); // <2> entityManager.getTransaction().begin(); try { Book book = entityManager.getReference( Book.class, 5 ); // <3> - searchWritePlan.delete( book ); // <4> + indexingPlan.delete( book ); // <4> entityManager.getTransaction().commit(); // <5> } @@ -198,7 +198,7 @@ public void delete() { entityManager.getTransaction().rollback(); throw e; } - // end::write-plan-delete[] + // end::indexing-plan-delete[] assertBookCount( entityManager, numberOfBooks - 1 ); } ); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java index ff5eb7a31e9..5e19c1cbb0f 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java @@ -20,7 +20,7 @@ import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.search.mapper.orm.Search; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.automaticindexing.ReindexOnUpdate; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.GenericField; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; @@ -595,12 +595,12 @@ public void sessionClear() { session.persist( entity7 ); session.persist( entity8 ); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); - writePlan.addOrUpdate( entity9 ); - writePlan.addOrUpdate( entity10 ); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); + indexingPlan.addOrUpdate( entity9 ); + indexingPlan.addOrUpdate( entity10 ); // the clear will revert the changes that haven't been flushed yet, - // including the ones that have been inserted directly in the write plan (bypassing the ORM session) + // including the ones that have been inserted directly in the indexing plan (bypassing the ORM session) session.clear(); backendMock.expectWorks( IndexedEntity.INDEX ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java index 2e2f05dbc4f..72b6a4ddeb6 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java @@ -14,7 +14,7 @@ import org.hibernate.SessionFactory; import org.hibernate.cfg.AvailableSettings; import org.hibernate.search.mapper.orm.Search; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.GenericField; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; @@ -67,17 +67,17 @@ public void add() { @Test public void clear() { withinSession( sessionFactory, session -> { - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); IndexedEntity entity1 = new IndexedEntity( 1, "number1" ); - // working directly on the work plan to add works immediately (not at flush time!) - writePlan.addOrUpdate( entity1 ); + // working directly on the indexing plan to add works immediately (not at flush time!) + indexingPlan.addOrUpdate( entity1 ); // clearing the update of entity 1 session.clear(); IndexedEntity entity2 = new IndexedEntity( 2, "number2" ); - writePlan.addOrUpdate( entity2 ); + indexingPlan.addOrUpdate( entity2 ); // only entity 2 is supposed to be flushed here backendMock.expectWorks( IndexedEntity.INDEX_NAME ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanBaseIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java similarity index 85% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanBaseIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java index 4a734e49cc0..c43a7c7aa5e 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanBaseIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java @@ -19,7 +19,7 @@ import org.hibernate.search.mapper.orm.Search; import org.hibernate.search.mapper.orm.automaticindexing.AutomaticIndexingStrategyName; import org.hibernate.search.mapper.orm.cfg.HibernateOrmMapperSettings; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.GenericField; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.IndexedEmbedded; @@ -33,7 +33,7 @@ import org.junit.Test; @TestForIssue(jiraKey = "HSEARCH-3049") -public class SearchSessionWritePlanBaseIT { +public class SearchIndexingPlanBaseIT { private static final String BACKEND1_NAME = "stubBackend1"; private static final String BACKEND2_NAME = "stubBackend2"; @@ -60,11 +60,11 @@ public void simple() { session.persist( entity2 ); session.persist( entity3 ); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); - writePlan.addOrUpdate( entity1 ); - writePlan.addOrUpdate( entity2 ); - writePlan.delete( entity3 ); - writePlan.purge( IndexedEntity1.class, 42 ); // Does not exist in database, but may exist in the index + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); + indexingPlan.addOrUpdate( entity1 ); + indexingPlan.addOrUpdate( entity2 ); + indexingPlan.delete( entity3 ); + indexingPlan.purge( IndexedEntity1.class, 42 ); // Does not exist in database, but may exist in the index backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .update( "1", b -> b.field( "text", "number1" ) ) @@ -99,34 +99,34 @@ public void mergedEvents() { session.persist( entity7 ); session.persist( entity8 ); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); - writePlan.addOrUpdate( entity1 ); - writePlan.addOrUpdate( entity1 ); + indexingPlan.addOrUpdate( entity1 ); + indexingPlan.addOrUpdate( entity1 ); - writePlan.delete( entity2 ); - writePlan.delete( entity2 ); + indexingPlan.delete( entity2 ); + indexingPlan.delete( entity2 ); - writePlan.addOrUpdate( entity3 ); - writePlan.delete( entity3 ); + indexingPlan.addOrUpdate( entity3 ); + indexingPlan.delete( entity3 ); - writePlan.delete( entity4 ); - writePlan.addOrUpdate( entity4 ); + indexingPlan.delete( entity4 ); + indexingPlan.addOrUpdate( entity4 ); - writePlan.purge( IndexedEntity1.class, 42 ); - writePlan.purge( IndexedEntity1.class, 42 ); + indexingPlan.purge( IndexedEntity1.class, 42 ); + indexingPlan.purge( IndexedEntity1.class, 42 ); - writePlan.delete( entity5 ); - writePlan.purge( IndexedEntity1.class, 5 ); + indexingPlan.delete( entity5 ); + indexingPlan.purge( IndexedEntity1.class, 5 ); - writePlan.purge( IndexedEntity1.class, 6 ); - writePlan.delete( entity6 ); + indexingPlan.purge( IndexedEntity1.class, 6 ); + indexingPlan.delete( entity6 ); - writePlan.addOrUpdate( entity7 ); - writePlan.purge( IndexedEntity1.class, 7 ); + indexingPlan.addOrUpdate( entity7 ); + indexingPlan.purge( IndexedEntity1.class, 7 ); - writePlan.purge( IndexedEntity1.class, 8 ); - writePlan.addOrUpdate( entity8 ); + indexingPlan.purge( IndexedEntity1.class, 8 ); + indexingPlan.addOrUpdate( entity8 ); backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) // multiple addOrUpdate => single update @@ -157,9 +157,9 @@ public void purgeContained() { SessionFactory sessionFactory = setup( AutomaticIndexingStrategyName.NONE ); withinTransaction( sessionFactory, session -> { - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); SubTest.expectException( - () -> writePlan.purge( ContainedEntity.class, 42 ) + () -> indexingPlan.purge( ContainedEntity.class, 42 ) ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -229,14 +229,14 @@ public void earlyExecute() { session.flush(); backend1Mock.verifyExpectationsMet(); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) .add( "2", b -> b.field( "text", "number2" ) ) .executed(); - writePlan.execute(); + indexingPlan.execute(); // Works should be executed immediately backend1Mock.verifyExpectationsMet(); @@ -270,9 +270,9 @@ public void mixedExplicitAndAutomaticIndexing() { session.persist( entity3 ); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); - writePlan.addOrUpdate( entity1 ); - writePlan.delete( entity2 ); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); + indexingPlan.addOrUpdate( entity1 ); + indexingPlan.delete( entity2 ); backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) // Requested explicitly @@ -298,10 +298,10 @@ public void multiIndexMultiBackend() { session.persist( entity2 ); session.persist( entity3 ); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); - writePlan.addOrUpdate( entity1 ); - writePlan.addOrUpdate( entity2 ); - writePlan.delete( entity3 ); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); + indexingPlan.addOrUpdate( entity1 ); + indexingPlan.addOrUpdate( entity2 ); + indexingPlan.delete( entity3 ); backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .update( "1", b -> b.field( "text", "number1" ) ) @@ -319,37 +319,37 @@ public void multiIndexMultiBackend() { public void outOfSession() { SessionFactory sessionFactory = setup( AutomaticIndexingStrategyName.NONE ); - SearchSessionWritePlan writePlan; + SearchIndexingPlan indexingPlan; IndexedEntity1 entity; try ( Session session = sessionFactory.openSession() ) { entity = new IndexedEntity1( 1, "number1" ); session.persist( entity ); - writePlan = Search.session( session ).writePlan(); + indexingPlan = Search.session( session ).indexingPlan(); } SubTest.expectException( - () -> writePlan.addOrUpdate( entity ) + () -> indexingPlan.addOrUpdate( entity ) ) .assertThrown() .isInstanceOf( SearchException.class ) .hasMessageContaining( "Underlying Hibernate ORM Session seems to be closed" ); SubTest.expectException( - () -> writePlan.delete( entity ) + () -> indexingPlan.delete( entity ) ) .assertThrown() .isInstanceOf( SearchException.class ) .hasMessageContaining( "Underlying Hibernate ORM Session seems to be closed" ); SubTest.expectException( - () -> writePlan.process() + () -> indexingPlan.process() ) .assertThrown() .isInstanceOf( SearchException.class ) .hasMessageContaining( "Underlying Hibernate ORM Session seems to be closed" ); SubTest.expectException( - () -> writePlan.execute() + () -> indexingPlan.execute() ) .assertThrown() .isInstanceOf( SearchException.class ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanNonEntityIdDocumentIdIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java similarity index 85% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanNonEntityIdDocumentIdIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java index 4059551e1f8..ce2fa555dda 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanNonEntityIdDocumentIdIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.mapper.orm.Search; import org.hibernate.search.mapper.orm.automaticindexing.AutomaticIndexingStrategyName; import org.hibernate.search.mapper.orm.cfg.HibernateOrmMapperSettings; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.DocumentId; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.GenericField; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; @@ -27,9 +27,9 @@ import org.junit.Test; /** - * Test usage of the session write plan with an entity type whose document ID is not the entity ID. + * Test usage of the session indexing plan with an entity type whose document ID is not the entity ID. */ -public class SearchSessionWritePlanNonEntityIdDocumentIdIT { +public class SearchIndexingPlanNonEntityIdDocumentIdIT { private static final String BACKEND_NAME = "stubBackend"; @@ -53,11 +53,11 @@ public void simple() { session.persist( entity2 ); session.persist( entity3 ); - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); - writePlan.addOrUpdate( entity1 ); - writePlan.addOrUpdate( entity2 ); - writePlan.delete( entity3 ); - writePlan.purge( IndexedEntity.class, 47 ); // Does not exist in database, but may exist in the index + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); + indexingPlan.addOrUpdate( entity1 ); + indexingPlan.addOrUpdate( entity2 ); + indexingPlan.delete( entity3 ); + indexingPlan.purge( IndexedEntity.class, 47 ); // Does not exist in database, but may exist in the index backendMock.expectWorks( IndexedEntity.INDEX_NAME ) .update( "41", b -> b.field( "text", "number1" ) ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanPersistBatchIndexingIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java similarity index 93% rename from integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanPersistBatchIndexingIT.java rename to integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java index 5ed0797af70..2288e207627 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchSessionWritePlanPersistBatchIndexingIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java @@ -13,7 +13,7 @@ import org.hibernate.SessionFactory; import org.hibernate.search.mapper.orm.Search; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.GenericField; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; @@ -25,13 +25,13 @@ /** * Test batch indexing relying not on the {@link org.hibernate.search.mapper.orm.massindexing.MassIndexer}, - * but on automatic indexing and on the {@link SearchSessionWritePlan}, + * but on automatic indexing and on the {@link SearchIndexingPlan}, * flushing and clearing the session periodically. *

* This is mostly useful when inserting lots of data into the database using JPA. */ @TestForIssue(jiraKey = "HSEARCH-3049") -public class SearchSessionWritePlanPersistBatchIndexingIT { +public class SearchIndexingPlanPersistBatchIndexingIT { private static final String BACKEND_NAME = "stubBackend"; @@ -55,7 +55,7 @@ public void processPerBatch() { SessionFactory sessionFactory = setup(); withinTransaction( sessionFactory, session -> { - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); // This is for test only and wouldn't be present in real code int firstIdOfThisBatch = 0; @@ -98,7 +98,7 @@ public void executePerBatch() { SessionFactory sessionFactory = setup(); withinTransaction( sessionFactory, session -> { - SearchSessionWritePlan writePlan = Search.session( session ).writePlan(); + SearchIndexingPlan indexingPlan = Search.session( session ).indexingPlan(); // This is for test only and wouldn't be present in real code int firstIdOfThisBatch = 0; @@ -113,7 +113,7 @@ public void executePerBatch() { expectAddWorks( firstIdOfThisBatch, i ).executed(); firstIdOfThisBatch = i; - writePlan.execute(); + indexingPlan.execute(); // For test only: check execution happens before the clear() backendMock.verifyExpectationsMet(); diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/automaticindexing/AutomaticIndexingStrategyName.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/automaticindexing/AutomaticIndexingStrategyName.java index 602ad4a51c3..d2be6039371 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/automaticindexing/AutomaticIndexingStrategyName.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/automaticindexing/AutomaticIndexingStrategyName.java @@ -22,7 +22,7 @@ public enum AutomaticIndexingStrategyName { /** * No automatic indexing is performed: * indexing will only happen when explicitly requested through APIs - * such as {@link SearchSession#writePlan()}. + * such as {@link SearchSession#indexingPlan()}. */ NONE("none"), diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java index 3cd1c9253e0..b248c5f7005 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSession.java @@ -14,6 +14,7 @@ import org.hibernate.Session; import org.hibernate.search.mapper.orm.scope.SearchScope; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.orm.work.SearchWorkspace; import org.hibernate.search.mapper.orm.massindexing.MassIndexer; import org.hibernate.search.mapper.orm.search.query.dsl.HibernateOrmSearchQueryHitTypeStep; @@ -156,10 +157,10 @@ default MassIndexer createIndexer(Class... types) { } /** - * @return The write plan for this session, allowing to explicitly index or delete entities, + * @return The indexing plan for this session, allowing to explicitly index entities or delete them from the index, * or to process entity changes or even write to the indexes before the transaction is committed. */ - SearchSessionWritePlan writePlan(); + SearchIndexingPlan indexingPlan(); /** * @return The underlying {@link EntityManager} used by this {@link SearchSession}. diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java index aeb1edd923d..fd3783a1e2a 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java @@ -37,9 +37,11 @@ import org.hibernate.search.mapper.orm.search.query.dsl.HibernateOrmSearchQueryHitTypeStep; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; import org.hibernate.search.mapper.orm.session.SearchSession; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.orm.session.context.impl.HibernateOrmSessionContextImpl; import org.hibernate.search.mapper.orm.work.SearchWorkspace; +import org.hibernate.search.mapper.orm.work.impl.SearchIndexingPlanContext; +import org.hibernate.search.mapper.orm.work.impl.SearchIndexingPlanImpl; import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.session.spi.AbstractPojoSearchSession; import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; @@ -52,7 +54,7 @@ * The actual implementation of {@link SearchSession}. */ public class HibernateOrmSearchSession extends AbstractPojoSearchSession - implements SearchSession, HibernateOrmScopeSessionContext, SearchSessionWritePlanContext, + implements SearchSession, HibernateOrmScopeSessionContext, SearchIndexingPlanContext, ReferenceHitMapper { /** @@ -100,7 +102,7 @@ public static HibernateOrmSearchSession get(HibernateOrmSearchSessionMappingCont */ private boolean enlistInTransaction = false; - private SearchSessionWritePlanImpl writePlan; + private SearchIndexingPlanImpl indexingPlan; private HibernateOrmSearchSession(HibernateOrmSearchSessionBuilder builder) { this( builder, builder.buildBackendSessionContext() ); @@ -160,11 +162,11 @@ public Session toOrmSession() { } @Override - public SearchSessionWritePlan writePlan() { - if ( writePlan == null ) { - writePlan = new SearchSessionWritePlanImpl( this ); + public SearchIndexingPlan indexingPlan() { + if ( indexingPlan == null ) { + indexingPlan = new SearchIndexingPlanImpl( this ); } - return writePlan; + return indexingPlan; } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java index 6c95759dd67..d99e54c9256 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/LazyInitSearchSession.java @@ -18,7 +18,7 @@ import org.hibernate.search.mapper.orm.search.query.dsl.HibernateOrmSearchQueryHitTypeStep; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; import org.hibernate.search.mapper.orm.session.SearchSession; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.orm.work.SearchWorkspace; /** @@ -75,8 +75,8 @@ public Session toOrmSession() { } @Override - public SearchSessionWritePlan writePlan() { - return getDelegate().writePlan(); + public SearchIndexingPlan indexingPlan() { + return getDelegate().indexingPlan(); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSessionWritePlan.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/SearchIndexingPlan.java similarity index 95% rename from mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSessionWritePlan.java rename to mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/SearchIndexingPlan.java index b6abf393487..503bf14eccc 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/SearchSessionWritePlan.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/SearchIndexingPlan.java @@ -4,10 +4,10 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.mapper.orm.session; +package org.hibernate.search.mapper.orm.work; /** - * An interface for writing to indexes in the context of an ORM Session. + * An interface for indexing entities in the context of an ORM Session. *

* This class is stateful: it queues operations internally to apply them at a later time. *

@@ -28,7 +28,7 @@ * {@link #process()} and {@link #execute()} are mostly useful when automatic indexing is disabled, * to control the indexing process explicitly. */ -public interface SearchSessionWritePlan { +public interface SearchIndexingPlan { /** * Add or update a document in the index if the entity type is mapped to an index @@ -75,7 +75,7 @@ public interface SearchSessionWritePlan { void purge(Class entityClass, Object providedId); /** - * Extract all data from objects passed to the write plan so far, + * Extract all data from objects passed to the indexing plan so far, * creates documents to be indexed and put them into an internal buffer, * without writing them to the indexes. *

diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java similarity index 84% rename from mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java rename to mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java index e8ca8dd210a..58cf61ee0a8 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanContext.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java @@ -4,12 +4,12 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.mapper.orm.session.impl; +package org.hibernate.search.mapper.orm.work.impl; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; -public interface SearchSessionWritePlanContext { +public interface SearchIndexingPlanContext { AutomaticIndexingSynchronizationStrategy getAutomaticIndexingSynchronizationStrategy(); diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java similarity index 77% rename from mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java rename to mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java index d9055bc34a0..fb79acc6991 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/SearchSessionWritePlanImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java @@ -4,16 +4,16 @@ * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or . */ -package org.hibernate.search.mapper.orm.session.impl; +package org.hibernate.search.mapper.orm.work.impl; -import org.hibernate.search.mapper.orm.session.SearchSessionWritePlan; +import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; -final class SearchSessionWritePlanImpl implements SearchSessionWritePlan { +public final class SearchIndexingPlanImpl implements SearchIndexingPlan { - private final SearchSessionWritePlanContext context; + private final SearchIndexingPlanContext context; - SearchSessionWritePlanImpl(SearchSessionWritePlanContext context) { + public SearchIndexingPlanImpl(SearchIndexingPlanContext context) { this.context = context; } From 6dd01dc977b06ac5ab9c9a42c9bfa2bcde47b62a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 14:07:59 +0200 Subject: [PATCH 04/11] HSEARCH-3606 Rename PojoWorkPlan to PojoIndexingPlan For consistency with the ORM SearchIndexingPlan, and also because this class will indeed always be about indexing and nothing else. --- .../AutomaticIndexingBasicIT.java | 4 +- .../SearchSessionFlushIT.java | 4 +- .../orm/session/SearchIndexingPlanBaseIT.java | 2 +- .../session/impl/JavaBeanSearchSession.java | 2 +- .../work/impl/SearchWorkPlanImpl.java | 6 +- .../HibernateOrmListenerContextProvider.java | 4 +- .../impl/HibernateOrmListenerTypeContext.java | 2 +- .../impl/HibernateSearchEventListener.java | 52 ++++++++--------- .../HibernateOrmContainedTypeContext.java | 4 +- .../impl/HibernateOrmIndexedTypeContext.java | 2 +- .../orm/mapping/impl/HibernateOrmMapping.java | 6 +- .../impl/HibernateOrmSearchSession.java | 54 +++++++++--------- ...InTransactionWorkQueueSynchronization.java | 18 +++--- ...stTransactionWorkQueueSynchronization.java | 22 ++++---- .../work/impl/SearchIndexingPlanContext.java | 4 +- .../orm/work/impl/SearchIndexingPlanImpl.java | 12 ++-- .../search/mapper/pojo/logging/impl/Log.java | 2 +- .../impl/PojoIndexedTypeManagerBuilder.java | 2 +- .../mapping/building/impl/PojoMapper.java | 2 +- .../impl/PojoContainedTypeManager.java | 6 +- .../mapping/impl/PojoIndexedTypeManager.java | 6 +- .../impl/PojoTypeAdditionalMetadata.java | 2 +- .../impl/PojoSearchSessionDelegateImpl.java | 8 +-- .../spi/PojoSearchSessionDelegate.java | 4 +- ...java => AbstractPojoTypeIndexingPlan.java} | 4 +- ...ava => PojoContainedTypeIndexingPlan.java} | 32 +++++------ ....java => PojoIndexedTypeIndexingPlan.java} | 54 +++++++++--------- ...lanImpl.java => PojoIndexingPlanImpl.java} | 56 +++++++++---------- .../impl/PojoWorkContainedTypeContext.java | 2 +- .../work/impl/PojoWorkIndexedTypeContext.java | 2 +- ...ojoWorkPlan.java => PojoIndexingPlan.java} | 20 ++++--- 31 files changed, 203 insertions(+), 197 deletions(-) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{AbstractPojoTypeWorkPlan.java => AbstractPojoTypeIndexingPlan.java} (86%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{PojoContainedTypeWorkPlan.java => PojoContainedTypeIndexingPlan.java} (82%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{PojoIndexedTypeWorkPlan.java => PojoIndexedTypeIndexingPlan.java} (82%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{PojoWorkPlanImpl.java => PojoIndexingPlanImpl.java} (72%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/{PojoWorkPlan.java => PojoIndexingPlan.java} (87%) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java index 5e19c1cbb0f..4fa9aa6cb7d 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java @@ -534,7 +534,7 @@ public void sessionClear() { session.persist( entity1 ); session.persist( entity2 ); - // flush triggers the prepare of the current PojoWorkPlan + // flush triggers the prepare of the current indexing plan Consumer documentFieldConsumer = b -> b.field( "indexedField", "number1" ).field( "noReindexOnUpdateField", null ); backendMock.expectWorks( IndexedEntity.INDEX ) @@ -576,7 +576,7 @@ public void sessionClear() { session.persist( entity5 ); session.persist( entity6 ); - // flush triggers the prepare of the current PojoWorkPlan + // flush triggers the prepare of the current indexing plan backendMock.expectWorks( IndexedEntity.INDEX ) .add( "5", expectedValue( "number5" ) ) .add( "6", expectedValue( "number6" ) ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java index 61bb746db22..617344c5030 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java @@ -18,7 +18,7 @@ import org.hibernate.SessionFactory; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.GenericField; import org.hibernate.search.mapper.pojo.mapping.definition.annotation.Indexed; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.rule.BackendMock; import org.hibernate.search.util.impl.integrationtest.orm.OrmSetupHelper; import org.hibernate.search.util.impl.test.annotation.TestForIssue; @@ -29,7 +29,7 @@ /** * Tests the behaviour of different kinds of {@link Session#flush()}. - * Each of ones has to trigger a {@link PojoWorkPlan#prepare()} exactly when the flush is expected. + * Each of ones has to trigger a {@link PojoIndexingPlan#prepare()} exactly when the flush is expected. */ @TestForIssue( jiraKey = "HSEARCH-3360" ) public class SearchSessionFlushIT { diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java index c43a7c7aa5e..3301d2ec3cb 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java @@ -179,7 +179,7 @@ public void earlyProcess() { session.persist( entity1 ); session.persist( entity2 ); - // flush triggers the prepare of the current PojoWorkPlan + // flush triggers the prepare of the current indexing plan backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) .add( "2", b -> b.field( "text", "number2" ) ) diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java index 0a0fb2803aa..643fee34d08 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java @@ -73,7 +73,7 @@ public SearchScopeImpl scope(Collection> types) { @Override public SearchWorkPlan getMainWorkPlan() { if ( workPlan == null ) { - workPlan = new SearchWorkPlanImpl( getDelegate().createWorkPlan( commitStrategy, refreshStrategy ) ); + workPlan = new SearchWorkPlanImpl( getDelegate().createIndexingPlan( commitStrategy, refreshStrategy ) ); } return workPlan; } diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java index 9eebd7fc9aa..71f37c87f77 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java @@ -9,13 +9,13 @@ import java.util.concurrent.CompletableFuture; import org.hibernate.search.mapper.javabean.work.SearchWorkPlan; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public class SearchWorkPlanImpl implements SearchWorkPlan { - private final PojoWorkPlan delegate; + private final PojoIndexingPlan delegate; - public SearchWorkPlanImpl(PojoWorkPlan delegate) { + public SearchWorkPlanImpl(PojoIndexingPlan delegate) { this.delegate = delegate; } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerContextProvider.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerContextProvider.java index 8ee3fa315c9..600925bfd7f 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerContextProvider.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerContextProvider.java @@ -8,7 +8,7 @@ import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public interface HibernateOrmListenerContextProvider { @@ -16,6 +16,6 @@ public interface HibernateOrmListenerContextProvider { AutomaticIndexingSynchronizationStrategy getSynchronizationStrategy(); - PojoWorkPlan getCurrentWorkPlan(SessionImplementor session, boolean createIfDoesNotExist); + PojoIndexingPlan getCurrentIndexingPlan(SessionImplementor session, boolean createIfDoesNotExist); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerTypeContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerTypeContext.java index 4de997793f3..f9ea965276b 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerTypeContext.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateOrmListenerTypeContext.java @@ -8,6 +8,6 @@ public interface HibernateOrmListenerTypeContext { - Object toWorkPlanProvidedId(Object entityId); + Object toIndexingPlanProvidedId(Object entityId); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java index f815a5e8675..3d079964acc 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java @@ -36,7 +36,7 @@ import org.hibernate.persister.entity.EntityPersister; import org.hibernate.search.mapper.orm.logging.impl.Log; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.logging.impl.LoggerFactory; /** @@ -75,10 +75,10 @@ public void onPostDelete(PostDeleteEvent event) { final Object entity = event.getEntity(); HibernateOrmListenerTypeContext typeContext = getTypeContext( contextProvider, entity ); if ( typeContext != null ) { - Object providedId = typeContext.toWorkPlanProvidedId( event.getId() ); + Object providedId = typeContext.toIndexingPlanProvidedId( event.getId() ); // TODO Check whether deletes work with hibernate.use_identifier_rollback enabled (see HSEARCH-650) // I think they should, but better safe than sorry - getCurrentWorkPlan( contextProvider, event.getSession() ) + getCurrentIndexingPlan( contextProvider, event.getSession() ) .delete( providedId, entity ); } } @@ -89,8 +89,8 @@ public void onPostInsert(PostInsertEvent event) { final Object entity = event.getEntity(); HibernateOrmListenerTypeContext typeContext = getTypeContext( contextProvider, entity ); if ( typeContext != null ) { - Object providedId = typeContext.toWorkPlanProvidedId( event.getId() ); - getCurrentWorkPlan( contextProvider, event.getSession() ) + Object providedId = typeContext.toIndexingPlanProvidedId( event.getId() ); + getCurrentIndexingPlan( contextProvider, event.getSession() ) .add( providedId, entity ); } } @@ -101,13 +101,13 @@ public void onPostUpdate(PostUpdateEvent event) { final Object entity = event.getEntity(); HibernateOrmListenerTypeContext typeContext = getTypeContext( contextProvider, entity ); if ( typeContext != null ) { - PojoWorkPlan workPlan = getCurrentWorkPlan( contextProvider, event.getSession() ); - Object providedId = typeContext.toWorkPlanProvidedId( event.getId() ); + PojoIndexingPlan plan = getCurrentIndexingPlan( contextProvider, event.getSession() ); + Object providedId = typeContext.toIndexingPlanProvidedId( event.getId() ); if ( dirtyCheckingEnabled ) { - workPlan.update( providedId, entity, getDirtyPropertyNames( event ) ); + plan.update( providedId, entity, getDirtyPropertyNames( event ) ); } else { - workPlan.update( providedId, entity ); + plan.update( providedId, entity ); } } } @@ -135,15 +135,15 @@ public void onPostUpdateCollection(PostCollectionUpdateEvent event) { public void onFlush(FlushEvent event) { HibernateOrmListenerContextProvider contextProvider = state.getContextProvider(); EventSource session = event.getSession(); - PojoWorkPlan currentWorkPlan = getCurrentWorkPlan( contextProvider, session ); - currentWorkPlan.prepare(); + PojoIndexingPlan plan = getCurrentIndexingPlan( contextProvider, session ); + plan.prepare(); // flush within a transaction should trigger only the prepare phase, // since the execute phase is supposed to be triggered by the transaction commit if ( !session.isTransactionInProgress() ) { // out of transaction it will trigger both of them AutomaticIndexingSynchronizationStrategy synchronizationStrategy = contextProvider.getSynchronizationStrategy(); - synchronizationStrategy.handleFuture( currentWorkPlan.execute() ); + synchronizationStrategy.handleFuture( plan.execute() ); } } @@ -159,17 +159,17 @@ public void onAutoFlush(AutoFlushEvent event) throws HibernateException { // */ // return; // } - getCurrentWorkPlan( state.getContextProvider(), event.getSession() ).prepare(); + getCurrentIndexingPlan( state.getContextProvider(), event.getSession() ).prepare(); } @Override public void onClear(ClearEvent event) { EventSource session = event.getSession(); - PojoWorkPlan workPlan = getCurrentWorkPlanIfExisting( state.getContextProvider(), session ); + PojoIndexingPlan plan = getCurrentIndexingPlanIfExisting( state.getContextProvider(), session ); // skip the clearNotPrepared operation in case there has been no one to clear - if ( workPlan != null ) { - workPlan.clearNotPrepared(); + if ( plan != null ) { + plan.clearNotPrepared(); } } @@ -181,14 +181,14 @@ private HibernateOrmListenerContextProvider doInitialize( return contextProvider; } - private PojoWorkPlan getCurrentWorkPlan(HibernateOrmListenerContextProvider contextProvider, + private PojoIndexingPlan getCurrentIndexingPlan(HibernateOrmListenerContextProvider contextProvider, SessionImplementor sessionImplementor) { - return contextProvider.getCurrentWorkPlan( sessionImplementor, true ); + return contextProvider.getCurrentIndexingPlan( sessionImplementor, true ); } - private PojoWorkPlan getCurrentWorkPlanIfExisting(HibernateOrmListenerContextProvider contextProvider, + private PojoIndexingPlan getCurrentIndexingPlanIfExisting(HibernateOrmListenerContextProvider contextProvider, SessionImplementor sessionImplementor) { - return contextProvider.getCurrentWorkPlan( sessionImplementor, false ); + return contextProvider.getCurrentIndexingPlan( sessionImplementor, false ); } private HibernateOrmListenerTypeContext getTypeContext(HibernateOrmListenerContextProvider contextProvider, @@ -208,8 +208,8 @@ private void processCollectionEvent(AbstractCollectionEvent event) { HibernateOrmListenerTypeContext typeContext = getTypeContext( contextProvider, entity ); if ( typeContext != null ) { - PojoWorkPlan workPlan = getCurrentWorkPlan( contextProvider, event.getSession() ); - Object providedId = typeContext.toWorkPlanProvidedId( event.getAffectedOwnerIdOrNull() ); + PojoIndexingPlan plan = getCurrentIndexingPlan( contextProvider, event.getSession() ); + Object providedId = typeContext.toIndexingPlanProvidedId( event.getAffectedOwnerIdOrNull() ); if ( dirtyCheckingEnabled ) { PersistentCollection persistentCollection = event.getCollection(); @@ -220,22 +220,22 @@ private void processCollectionEvent(AbstractCollectionEvent event) { if ( collectionRole != null ) { /* * Collection role will only be non-null for PostCollectionUpdateEvents. - * For those events, we can pass the role to the workPlan + * For those events, we can pass the role to the indexing plan * which can then decide whether to reindex based on whether the collection * has any impact on indexing. */ - workPlan.update( providedId, entity, collectionRole ); + plan.update( providedId, entity, collectionRole ); } else { /* * We don't know which collection is being changed, * so we have to default to reindexing, just in case. */ - workPlan.update( providedId, entity ); + plan.update( providedId, entity ); } } else { - workPlan.update( providedId, entity ); + plan.update( providedId, entity ); } } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmContainedTypeContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmContainedTypeContext.java index b3491884315..59cbad3419e 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmContainedTypeContext.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmContainedTypeContext.java @@ -17,9 +17,9 @@ private HibernateOrmContainedTypeContext(HibernateOrmContainedTypeContext.Builde } @Override - public Object toWorkPlanProvidedId(Object entityId) { + public Object toIndexingPlanProvidedId(Object entityId) { // The concept of document ID is not relevant for contained types, - // so we always provide the entity ID to work plans + // so we always provide the entity ID to indexing plans return entityId; } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmIndexedTypeContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmIndexedTypeContext.java index a389cfee93d..638205915bc 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmIndexedTypeContext.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmIndexedTypeContext.java @@ -58,7 +58,7 @@ public String getIndexName() { } @Override - public Object toWorkPlanProvidedId(Object entityId) { + public Object toIndexingPlanProvidedId(Object entityId) { if ( documentIdIsEntityId ) { return entityId; } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java index 93df0be8ae3..5bd214bf432 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java @@ -41,7 +41,7 @@ import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.scope.spi.PojoScopeDelegate; import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.AssertionFailure; import org.hibernate.search.util.common.logging.impl.LoggerFactory; @@ -181,8 +181,8 @@ public DetachedBackendSessionContext getDetachedBackendSessionContext(String ten } @Override - public PojoWorkPlan getCurrentWorkPlan(SessionImplementor session, boolean createIfDoesNotExist) { - return HibernateOrmSearchSession.get( this, session ).getCurrentWorkPlan( createIfDoesNotExist ); + public PojoIndexingPlan getCurrentIndexingPlan(SessionImplementor session, boolean createIfDoesNotExist) { + return HibernateOrmSearchSession.get( this, session ).getCurrentIndexingPlan( createIfDoesNotExist ); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java index fd3783a1e2a..363612d55aa 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java @@ -45,7 +45,7 @@ import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.session.spi.AbstractPojoSearchSession; import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.AssertionFailure; import org.hibernate.search.util.common.impl.TransientReference; import org.hibernate.search.util.common.logging.impl.LoggerFactory; @@ -86,8 +86,8 @@ public static HibernateOrmSearchSession get(HibernateOrmSearchSessionMappingCont private static final String SEARCH_SESSION_KEY = HibernateOrmMapping.class.getName() + "#SEARCH_SESSION_KEY"; - private static final String WORK_PLAN_PER_TRANSACTION_MAP_KEY = - HibernateOrmSearchSession.class.getName() + "#WORK_PLAN_PER_TRANSACTION_KEY"; + private static final String INDEXING_PLAN_PER_TRANSACTION_MAP_KEY = + HibernateOrmSearchSession.class.getName() + "#INDEXING_PLAN_PER_TRANSACTION_KEY"; private static final Log log = LoggerFactory.make( Log.class, MethodHandles.lookup() ); @@ -210,18 +210,18 @@ public PojoSessionWorkExecutor createSessionWorkExecutor(DocumentCommitStrategy @Override @SuppressWarnings("unchecked") - public PojoWorkPlan getCurrentWorkPlan(boolean createIfDoesNotExist) { + public PojoIndexingPlan getCurrentIndexingPlan(boolean createIfDoesNotExist) { SessionImplementor sessionImplementor = sessionContext.getSession(); checkOrmSessionIsOpen( sessionImplementor ); Transaction transactionIdentifier = null; - TransientReference> reference = (TransientReference>) sessionImplementor.getProperties() - .get( WORK_PLAN_PER_TRANSACTION_MAP_KEY ); - Map workPlanPerTransaction = reference == null ? null : reference.get(); - if ( workPlanPerTransaction == null ) { - workPlanPerTransaction = new HashMap<>(); - reference = new TransientReference<>( workPlanPerTransaction ); - sessionImplementor.setProperty( WORK_PLAN_PER_TRANSACTION_MAP_KEY, reference ); + TransientReference> reference = (TransientReference>) sessionImplementor.getProperties() + .get( INDEXING_PLAN_PER_TRANSACTION_MAP_KEY ); + Map planPerTransaction = reference == null ? null : reference.get(); + if ( planPerTransaction == null ) { + planPerTransaction = new HashMap<>(); + reference = new TransientReference<>( planPerTransaction ); + sessionImplementor.setProperty( INDEXING_PLAN_PER_TRANSACTION_MAP_KEY, reference ); } if ( sessionImplementor.isTransactionInProgress() ) { @@ -229,29 +229,29 @@ public PojoWorkPlan getCurrentWorkPlan(boolean createIfDoesNotExist) { } // For out of transaction case we will use null as transaction identifier - PojoWorkPlan workPlan = workPlanPerTransaction.get( transactionIdentifier ); - if ( workPlan != null ) { - return workPlan; + PojoIndexingPlan plan = planPerTransaction.get( transactionIdentifier ); + if ( plan != null ) { + return plan; } if ( !createIfDoesNotExist ) { return null; } - AutomaticIndexingSynchronizationStrategy workPlanSynchronizationStrategy = synchronizationStrategy; - workPlan = createWorkPlan( - workPlanSynchronizationStrategy.getDocumentCommitStrategy(), - workPlanSynchronizationStrategy.getDocumentRefreshStrategy() + AutomaticIndexingSynchronizationStrategy planSynchronizationStrategy = synchronizationStrategy; + plan = createIndexingPlan( + planSynchronizationStrategy.getDocumentCommitStrategy(), + planSynchronizationStrategy.getDocumentRefreshStrategy() ); - workPlanPerTransaction.put( transactionIdentifier, workPlan ); + planPerTransaction.put( transactionIdentifier, plan ); if ( sessionImplementor.isTransactionInProgress() ) { Synchronization txSync = createTransactionWorkQueueSynchronization( - workPlan, workPlanPerTransaction, transactionIdentifier, workPlanSynchronizationStrategy + plan, planPerTransaction, transactionIdentifier, planSynchronizationStrategy ); registerSynchronization( sessionImplementor, txSync ); } - return workPlan; + return plan; } @Override @@ -259,22 +259,22 @@ public AutomaticIndexingSynchronizationStrategy getAutomaticIndexingSynchronizat return synchronizationStrategy; } - private PojoWorkPlan createWorkPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return getDelegate().createWorkPlan( commitStrategy, refreshStrategy ); + private PojoIndexingPlan createIndexingPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { + return getDelegate().createIndexingPlan( commitStrategy, refreshStrategy ); } - private Synchronization createTransactionWorkQueueSynchronization(PojoWorkPlan workPlan, - Map workPlanPerTransaction, Transaction transactionIdentifier, + private Synchronization createTransactionWorkQueueSynchronization(PojoIndexingPlan indexingPlan, + Map indexingPlanPerTransaction, Transaction transactionIdentifier, AutomaticIndexingSynchronizationStrategy synchronizationStrategy) { if ( enlistInTransaction ) { return new InTransactionWorkQueueSynchronization( - workPlan, workPlanPerTransaction, transactionIdentifier, + indexingPlan, indexingPlanPerTransaction, transactionIdentifier, synchronizationStrategy ); } else { return new PostTransactionWorkQueueSynchronization( - workPlan, workPlanPerTransaction, transactionIdentifier, + indexingPlan, indexingPlanPerTransaction, transactionIdentifier, synchronizationStrategy ); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/InTransactionWorkQueueSynchronization.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/InTransactionWorkQueueSynchronization.java index ff3f0df81b9..533a85059b9 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/InTransactionWorkQueueSynchronization.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/InTransactionWorkQueueSynchronization.java @@ -14,7 +14,7 @@ import org.hibernate.search.mapper.orm.logging.impl.Log; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.logging.impl.LoggerFactory; /** @@ -26,16 +26,16 @@ public class InTransactionWorkQueueSynchronization implements Synchronization { private static final Log log = LoggerFactory.make( Log.class, MethodHandles.lookup() ); - private final PojoWorkPlan workPlan; - private final Map workPlanPerTransaction; + private final PojoIndexingPlan indexingPlan; + private final Map indexingPlanPerTransaction; private final Object transactionIdentifier; private final AutomaticIndexingSynchronizationStrategy synchronizationStrategy; - public InTransactionWorkQueueSynchronization(PojoWorkPlan workPlan, - Map workPlanPerTransaction, Object transactionIdentifier, + public InTransactionWorkQueueSynchronization(PojoIndexingPlan indexingPlan, + Map indexingPlanPerTransaction, Object transactionIdentifier, AutomaticIndexingSynchronizationStrategy synchronizationStrategy) { - this.workPlan = workPlan; - this.workPlanPerTransaction = workPlanPerTransaction; + this.indexingPlan = indexingPlan; + this.indexingPlanPerTransaction = indexingPlanPerTransaction; this.transactionIdentifier = transactionIdentifier; this.synchronizationStrategy = synchronizationStrategy; } @@ -47,12 +47,12 @@ public void beforeCompletion() { log.tracef( "Processing Transaction's beforeCompletion() phase for %s. Performing work.", this ); - CompletableFuture future = workPlan.execute(); + CompletableFuture future = indexingPlan.execute(); synchronizationStrategy.handleFuture( future ); } finally { //clean the Synchronization per Transaction - workPlanPerTransaction.remove( transactionIdentifier ); + indexingPlanPerTransaction.remove( transactionIdentifier ); } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java index ec5cdea1d9a..b4dba77b75c 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java @@ -14,7 +14,7 @@ import org.hibernate.search.mapper.orm.logging.impl.Log; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.logging.impl.LoggerFactory; /** @@ -26,16 +26,16 @@ public class PostTransactionWorkQueueSynchronization implements Synchronization private static final Log log = LoggerFactory.make( Log.class, MethodHandles.lookup() ); - private final PojoWorkPlan workPlan; - private final Map workPlanPerTransaction; + private final PojoIndexingPlan indexingPlan; + private final Map indexingPlanPerTransaction; private final Object transactionIdentifier; private final AutomaticIndexingSynchronizationStrategy synchronizationStrategy; - public PostTransactionWorkQueueSynchronization(PojoWorkPlan workPlan, - Map workPlanPerTransaction, Object transactionIdentifier, + public PostTransactionWorkQueueSynchronization(PojoIndexingPlan indexingPlan, + Map indexingPlanPerTransaction, Object transactionIdentifier, AutomaticIndexingSynchronizationStrategy synchronizationStrategy) { - this.workPlan = workPlan; - this.workPlanPerTransaction = workPlanPerTransaction; + this.indexingPlan = indexingPlan; + this.indexingPlanPerTransaction = indexingPlanPerTransaction; this.transactionIdentifier = transactionIdentifier; this.synchronizationStrategy = synchronizationStrategy; } @@ -43,7 +43,7 @@ public PostTransactionWorkQueueSynchronization(PojoWorkPlan workPlan, @Override public void beforeCompletion() { log.tracef( "Processing Transaction's beforeCompletion() phase: %s", this ); - workPlan.prepare(); + indexingPlan.prepare(); } @Override @@ -51,7 +51,7 @@ public void afterCompletion(int i) { try { if ( Status.STATUS_COMMITTED == i ) { log.tracef( "Processing Transaction's afterCompletion() phase for %s. Performing work.", this ); - CompletableFuture future = workPlan.execute(); + CompletableFuture future = indexingPlan.execute(); synchronizationStrategy.handleFuture( future ); } else { @@ -60,12 +60,12 @@ public void afterCompletion(int i) { this, i ); - workPlan.discard(); + indexingPlan.discard(); } } finally { //clean the Synchronization per Transaction - workPlanPerTransaction.remove( transactionIdentifier ); + indexingPlanPerTransaction.remove( transactionIdentifier ); } } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java index 58cf61ee0a8..21148eb4e22 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanContext.java @@ -7,12 +7,12 @@ package org.hibernate.search.mapper.orm.work.impl; import org.hibernate.search.mapper.orm.session.AutomaticIndexingSynchronizationStrategy; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public interface SearchIndexingPlanContext { AutomaticIndexingSynchronizationStrategy getAutomaticIndexingSynchronizationStrategy(); - PojoWorkPlan getCurrentWorkPlan(boolean createIfDoesNotExist); + PojoIndexingPlan getCurrentIndexingPlan(boolean createIfDoesNotExist); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java index fb79acc6991..53b6ebfff0a 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java @@ -7,7 +7,7 @@ package org.hibernate.search.mapper.orm.work.impl; import org.hibernate.search.mapper.orm.work.SearchIndexingPlan; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public final class SearchIndexingPlanImpl implements SearchIndexingPlan { @@ -19,22 +19,22 @@ public SearchIndexingPlanImpl(SearchIndexingPlanContext context) { @Override public void addOrUpdate(Object entity) { - context.getCurrentWorkPlan( true ).update( entity ); + context.getCurrentIndexingPlan( true ).update( entity ); } @Override public void delete(Object entity) { - context.getCurrentWorkPlan( true ).delete( entity ); + context.getCurrentIndexingPlan( true ).delete( entity ); } @Override public void purge(Class entityClass, Object providedId) { - context.getCurrentWorkPlan( true ).purge( entityClass, providedId ); + context.getCurrentIndexingPlan( true ).purge( entityClass, providedId ); } @Override public void process() { - PojoWorkPlan plan = context.getCurrentWorkPlan( false ); + PojoIndexingPlan plan = context.getCurrentIndexingPlan( false ); if ( plan == null ) { return; } @@ -43,7 +43,7 @@ public void process() { @Override public void execute() { - PojoWorkPlan plan = context.getCurrentWorkPlan( false ); + PojoIndexingPlan plan = context.getCurrentIndexingPlan( false ); if ( plan == null ) { return; } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java index 574517fc9ba..2ab87e3ac00 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java @@ -409,7 +409,7 @@ SearchException cannotPurgeNonIndexedContainedType( + " Make sure you do not change entities within an entity getter or a custom bridge used for indexing," + " and avoid any event that could trigger entity processing." + " Hibernate ORM flushes, in particular, must be avoided in entity getters and bridges.") - SearchException recursiveWorkPlanPrepare(); + SearchException recursiveIndexingPlanPrepare(); @Message(id = ID_OFFSET_2 + 61, value = "Type '%1$s' cannot be indexed-embedded, because no index mapping (@GenericField, @FullTextField, ...) is defined for that type.") SearchException invalidIndexedEmbedded(@FormatWith(PojoTypeModelFormatter.class) PojoTypeModel typeModel); diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoIndexedTypeManagerBuilder.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoIndexedTypeManagerBuilder.java index 5478b39caa9..f6ebcdae523 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoIndexedTypeManagerBuilder.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoIndexedTypeManagerBuilder.java @@ -118,7 +118,7 @@ void buildAndAddTo(PojoIndexedTypeManagerContainer.Builder typeManagersBuilder, /* * TODO offer more flexibility to mapper implementations, allowing them to define their own dirtiness state? - * Note this will require to allow them to define their own work plan APIs. + * Note this will require to allow them to define their own indexing plan APIs. */ PojoPathFilterFactory> pathFilterFactory = typeAdditionalMetadata .getEntityTypeMetadata().orElseThrow( () -> log.missingEntityTypeMetadata( typeModel ) ) diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoMapper.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoMapper.java index d81388bb06d..75a5c708ee8 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoMapper.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/building/impl/PojoMapper.java @@ -232,7 +232,7 @@ private void buildAndAddContainedTypeManagerTo( PojoRawTypeModel entityType) { /* * TODO offer more flexibility to mapper implementations, allowing them to define their own dirtiness state? - * Note this will require to allow them to define their own work plan APIs. + * Note this will require to allow them to define their own indexing plan APIs. */ PojoPathFilterFactory> pathFilterFactory = typeAdditionalMetadataProvider.get( entityType ) .getEntityTypeMetadata().orElseThrow( () -> log.missingEntityTypeMetadata( entityType ) ) diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoContainedTypeManager.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoContainedTypeManager.java index 1e21335e861..d483b8d0607 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoContainedTypeManager.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoContainedTypeManager.java @@ -16,7 +16,7 @@ import org.hibernate.search.mapper.pojo.scope.impl.PojoScopeContainedTypeContext; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; import org.hibernate.search.mapper.pojo.work.impl.CachingCastingEntitySupplier; -import org.hibernate.search.mapper.pojo.work.impl.PojoContainedTypeWorkPlan; +import org.hibernate.search.mapper.pojo.work.impl.PojoContainedTypeIndexingPlan; import org.hibernate.search.mapper.pojo.work.impl.PojoWorkContainedTypeContext; import org.hibernate.search.util.common.impl.ToStringTreeAppendable; import org.hibernate.search.util.common.impl.ToStringTreeBuilder; @@ -76,8 +76,8 @@ public void resolveEntitiesToReindex(PojoReindexingCollector collector, PojoRunt } @Override - public PojoContainedTypeWorkPlan createWorkPlan(AbstractPojoBackendSessionContext sessionContext) { - return new PojoContainedTypeWorkPlan<>( + public PojoContainedTypeIndexingPlan createIndexingPlan(AbstractPojoBackendSessionContext sessionContext) { + return new PojoContainedTypeIndexingPlan<>( this, sessionContext ); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java index 8d82bc5c148..71fbffbc5af 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java @@ -30,7 +30,7 @@ import org.hibernate.search.mapper.pojo.work.impl.CachingCastingEntitySupplier; import org.hibernate.search.mapper.pojo.work.impl.PojoDocumentContributor; import org.hibernate.search.mapper.pojo.work.impl.PojoDocumentReferenceProvider; -import org.hibernate.search.mapper.pojo.work.impl.PojoIndexedTypeWorkPlan; +import org.hibernate.search.mapper.pojo.work.impl.PojoIndexedTypeIndexingPlan; import org.hibernate.search.mapper.pojo.work.impl.PojoTypeDocumentWorkExecutor; import org.hibernate.search.mapper.pojo.work.impl.PojoWorkIndexedTypeContext; import org.hibernate.search.util.common.impl.Closer; @@ -156,9 +156,9 @@ public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessio } @Override - public PojoIndexedTypeWorkPlan createWorkPlan(AbstractPojoBackendSessionContext sessionContext, + public PojoIndexedTypeIndexingPlan createIndexingPlan(AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return new PojoIndexedTypeWorkPlan<>( + return new PojoIndexedTypeIndexingPlan<>( this, sessionContext, indexManager.createWorkPlan( sessionContext, commitStrategy, refreshStrategy ) ); diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/model/additionalmetadata/impl/PojoTypeAdditionalMetadata.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/model/additionalmetadata/impl/PojoTypeAdditionalMetadata.java index 9e4321f5ce6..7684ff02627 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/model/additionalmetadata/impl/PojoTypeAdditionalMetadata.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/model/additionalmetadata/impl/PojoTypeAdditionalMetadata.java @@ -27,7 +27,7 @@ public PojoTypeAdditionalMetadata(Optional ent * All other types are assumed to only be able to be embedded in other objects, * with their lifecycle completely tied to their embedding object. * As a result, entity types are the only types whose lifecycle events are expected to be sent - * to POJO work plans. + * to POJO indexing plans. * * @return {@code true} if this type is an entity type, {@code false} otherwise. */ diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java index 1b8b5a90c13..1cd671b4973 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java @@ -13,9 +13,9 @@ import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; import org.hibernate.search.mapper.pojo.session.spi.PojoSearchSessionDelegate; import org.hibernate.search.mapper.pojo.work.impl.PojoSessionWorkExecutorImpl; -import org.hibernate.search.mapper.pojo.work.impl.PojoWorkPlanImpl; +import org.hibernate.search.mapper.pojo.work.impl.PojoIndexingPlanImpl; import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public final class PojoSearchSessionDelegateImpl implements PojoSearchSessionDelegate { @@ -37,8 +37,8 @@ public AbstractPojoBackendSessionContext getBackendSessionContext() { } @Override - public PojoWorkPlan createWorkPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return new PojoWorkPlanImpl( + public PojoIndexingPlan createIndexingPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { + return new PojoIndexingPlanImpl( indexedTypeContextProvider, containedTypeContextProvider, backendSessionContext, commitStrategy, refreshStrategy ); diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java index 3eff1f8c5b6..e3ec83e28a4 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java @@ -10,13 +10,13 @@ import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public interface PojoSearchSessionDelegate { AbstractPojoBackendSessionContext getBackendSessionContext(); - PojoWorkPlan createWorkPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); + PojoIndexingPlan createIndexingPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); PojoSessionWorkExecutor createSessionWorkExecutor(DocumentCommitStrategy commitStrategy); diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/AbstractPojoTypeWorkPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/AbstractPojoTypeIndexingPlan.java similarity index 86% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/AbstractPojoTypeWorkPlan.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/AbstractPojoTypeIndexingPlan.java index a98d150e7fa..88d69015827 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/AbstractPojoTypeWorkPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/AbstractPojoTypeIndexingPlan.java @@ -8,11 +8,11 @@ import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; -abstract class AbstractPojoTypeWorkPlan { +abstract class AbstractPojoTypeIndexingPlan { final AbstractPojoBackendSessionContext sessionContext; - AbstractPojoTypeWorkPlan(AbstractPojoBackendSessionContext sessionContext) { + AbstractPojoTypeIndexingPlan(AbstractPojoBackendSessionContext sessionContext) { this.sessionContext = sessionContext; } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoContainedTypeWorkPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoContainedTypeIndexingPlan.java similarity index 82% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoContainedTypeWorkPlan.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoContainedTypeIndexingPlan.java index d1485199736..8f9316a2af9 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoContainedTypeWorkPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoContainedTypeIndexingPlan.java @@ -21,16 +21,16 @@ /** * @param The contained entity type. */ -public class PojoContainedTypeWorkPlan extends AbstractPojoTypeWorkPlan { +public class PojoContainedTypeIndexingPlan extends AbstractPojoTypeIndexingPlan { private static final Log log = LoggerFactory.make( Log.class, MethodHandles.lookup() ); private final PojoWorkContainedTypeContext typeContext; // Use a LinkedHashMap for deterministic iteration - private final Map workPlansPerId = new LinkedHashMap<>(); + private final Map indexingPlansPerId = new LinkedHashMap<>(); - public PojoContainedTypeWorkPlan(PojoWorkContainedTypeContext typeContext, + public PojoContainedTypeIndexingPlan(PojoWorkContainedTypeContext typeContext, AbstractPojoBackendSessionContext sessionContext) { super( sessionContext ); this.typeContext = typeContext; @@ -39,25 +39,25 @@ public PojoContainedTypeWorkPlan(PojoWorkContainedTypeContext typeContext, @Override void add(Object providedId, Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); - getWork( providedId ).add( entitySupplier ); + getPlan( providedId ).add( entitySupplier ); } @Override void update(Object providedId, Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); - getWork( providedId ).update( entitySupplier ); + getPlan( providedId ).update( entitySupplier ); } @Override void update(Object providedId, Object entity, String... dirtyPaths) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); - getWork( providedId ).update( entitySupplier, dirtyPaths ); + getPlan( providedId ).update( entitySupplier, dirtyPaths ); } @Override void delete(Object providedId, Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); - getWork( providedId ).delete( entitySupplier ); + getPlan( providedId ).delete( entitySupplier ); } @Override @@ -66,21 +66,21 @@ void purge(Object providedId) { } void resolveDirty(PojoReindexingCollector containingEntityCollector) { - for ( ContainedEntityWorkPlan workPerDocument : workPlansPerId.values() ) { - workPerDocument.resolveDirty( containingEntityCollector ); + for ( ContainedEntityIndexingPlan plan : indexingPlansPerId.values() ) { + plan.resolveDirty( containingEntityCollector ); } } - private ContainedEntityWorkPlan getWork(Object identifier) { - ContainedEntityWorkPlan work = workPlansPerId.get( identifier ); - if ( work == null ) { - work = new ContainedEntityWorkPlan(); - workPlansPerId.put( identifier, work ); + private ContainedEntityIndexingPlan getPlan(Object identifier) { + ContainedEntityIndexingPlan plan = indexingPlansPerId.get( identifier ); + if ( plan == null ) { + plan = new ContainedEntityIndexingPlan(); + indexingPlansPerId.put( identifier, plan ); } - return work; + return plan; } - private class ContainedEntityWorkPlan { + private class ContainedEntityIndexingPlan { private Supplier entitySupplier; private Boolean createdInThisPlan; diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeWorkPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java similarity index 82% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeWorkPlan.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java index 810ecaf3f5e..da6a92a8082 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeWorkPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java @@ -24,15 +24,15 @@ * @param The entity type mapped to the index. * @param The document type for the index. */ -public class PojoIndexedTypeWorkPlan extends AbstractPojoTypeWorkPlan { +public class PojoIndexedTypeIndexingPlan extends AbstractPojoTypeIndexingPlan { private final PojoWorkIndexedTypeContext typeContext; private final IndexWorkPlan delegate; // Use a LinkedHashMap for deterministic iteration - private final Map workPlansPerId = new LinkedHashMap<>(); + private final Map indexingPlansPerId = new LinkedHashMap<>(); - public PojoIndexedTypeWorkPlan(PojoWorkIndexedTypeContext typeContext, + public PojoIndexedTypeIndexingPlan(PojoWorkIndexedTypeContext typeContext, AbstractPojoBackendSessionContext sessionContext, IndexWorkPlan delegate) { super( sessionContext ); @@ -44,58 +44,58 @@ public PojoIndexedTypeWorkPlan(PojoWorkIndexedTypeContext typeContext, void add(Object providedId, Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); I identifier = typeContext.getIdentifierMapping().getIdentifier( providedId, entitySupplier ); - getWork( identifier ).add( entitySupplier ); + getPlan( identifier ).add( entitySupplier ); } @Override void update(Object providedId, Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); I identifier = typeContext.getIdentifierMapping().getIdentifier( providedId, entitySupplier ); - getWork( identifier ).update( entitySupplier ); + getPlan( identifier ).update( entitySupplier ); } @Override void update(Object providedId, Object entity, String... dirtyPaths) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); I identifier = typeContext.getIdentifierMapping().getIdentifier( providedId, entitySupplier ); - getWork( identifier ).update( entitySupplier, dirtyPaths ); + getPlan( identifier ).update( entitySupplier, dirtyPaths ); } @Override void delete(Object providedId, Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); I identifier = typeContext.getIdentifierMapping().getIdentifier( providedId, entitySupplier ); - getWork( identifier ).delete( entitySupplier ); + getPlan( identifier ).delete( entitySupplier ); } @Override void purge(Object providedId) { I identifier = typeContext.getIdentifierMapping().getIdentifier( providedId ); - getWork( identifier ).purge(); + getPlan( identifier ).purge(); } void updateBecauseOfContained(Object entity) { Supplier entitySupplier = typeContext.toEntitySupplier( sessionContext, entity ); I identifier = typeContext.getIdentifierMapping().getIdentifier( null, entitySupplier ); - if ( !workPlansPerId.containsKey( identifier ) ) { - getWork( identifier ).updateBecauseOfContained( entitySupplier ); + if ( !indexingPlansPerId.containsKey( identifier ) ) { + getPlan( identifier ).updateBecauseOfContained( entitySupplier ); } // If the entry is already there, no need for an additional update } void resolveDirty(PojoReindexingCollector containingEntityCollector) { - for ( IndexedEntityWorkPlan workPerDocument : workPlansPerId.values() ) { - workPerDocument.resolveDirty( containingEntityCollector ); + for ( IndexedEntityIndexingPlan plan : indexingPlansPerId.values() ) { + plan.resolveDirty( containingEntityCollector ); } } void prepare() { - sendWorksToDelegate(); + sendCommandsToDelegate(); getDelegate().prepare(); } CompletableFuture execute() { - sendWorksToDelegate(); + sendCommandsToDelegate(); /* * No need to call prepare() here: * delegates are supposed to handle execute() even without a prior call to prepare(). @@ -108,32 +108,32 @@ void discard() { } void clearNotPrepared() { - this.workPlansPerId.clear(); + this.indexingPlansPerId.clear(); } - private IndexedEntityWorkPlan getWork(I identifier) { - IndexedEntityWorkPlan work = workPlansPerId.get( identifier ); - if ( work == null ) { - work = new IndexedEntityWorkPlan( identifier ); - workPlansPerId.put( identifier, work ); + private IndexedEntityIndexingPlan getPlan(I identifier) { + IndexedEntityIndexingPlan plan = indexingPlansPerId.get( identifier ); + if ( plan == null ) { + plan = new IndexedEntityIndexingPlan( identifier ); + indexingPlansPerId.put( identifier, plan ); } - return work; + return plan; } private IndexWorkPlan getDelegate() { return delegate; } - private void sendWorksToDelegate() { + private void sendCommandsToDelegate() { try { - workPlansPerId.values().forEach( IndexedEntityWorkPlan::sendWorkToDelegate ); + indexingPlansPerId.values().forEach( IndexedEntityIndexingPlan::sendCommandsToDelegate ); } finally { - workPlansPerId.clear(); + indexingPlansPerId.clear(); } } - private class IndexedEntityWorkPlan { + private class IndexedEntityIndexingPlan { private final I identifier; private Supplier entitySupplier; @@ -145,7 +145,7 @@ private class IndexedEntityWorkPlan { private boolean updatedBecauseOfContained; private Set dirtyPaths; - private IndexedEntityWorkPlan(I identifier) { + private IndexedEntityIndexingPlan(I identifier) { this.identifier = identifier; } @@ -223,7 +223,7 @@ void resolveDirty(PojoReindexingCollector containingEntityCollector) { } } - void sendWorkToDelegate() { + void sendCommandsToDelegate() { DocumentReferenceProvider referenceProvider = typeContext.toDocumentReferenceProvider( sessionContext, identifier, entitySupplier ); if ( add ) { diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkPlanImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java similarity index 72% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkPlanImpl.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java index dddc2fc5cbf..9296655bc3c 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkPlanImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java @@ -18,13 +18,13 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.mapper.pojo.logging.impl.Log; -import org.hibernate.search.mapper.pojo.work.spi.PojoWorkPlan; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; import org.hibernate.search.mapper.pojo.model.spi.PojoRuntimeIntrospector; import org.hibernate.search.util.common.AssertionFailure; import org.hibernate.search.util.common.logging.impl.LoggerFactory; -public class PojoWorkPlanImpl implements PojoWorkPlan { +public class PojoIndexingPlanImpl implements PojoIndexingPlan { private static final Log log = LoggerFactory.make( Log.class, MethodHandles.lookup() ); @@ -36,12 +36,12 @@ public class PojoWorkPlanImpl implements PojoWorkPlan { private final DocumentRefreshStrategy refreshStrategy; // Use a LinkedHashMap for deterministic iteration - private final Map, PojoIndexedTypeWorkPlan> indexedTypeDelegates = new LinkedHashMap<>(); - private final Map, PojoContainedTypeWorkPlan> containedTypeDelegates = new HashMap<>(); + private final Map, PojoIndexedTypeIndexingPlan> indexedTypeDelegates = new LinkedHashMap<>(); + private final Map, PojoContainedTypeIndexingPlan> containedTypeDelegates = new HashMap<>(); private boolean isPreparing = false; - public PojoWorkPlanImpl(PojoWorkIndexedTypeContextProvider indexedTypeContextProvider, + public PojoIndexingPlanImpl(PojoWorkIndexedTypeContextProvider indexedTypeContextProvider, PojoWorkContainedTypeContextProvider containedTypeContextProvider, AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, @@ -62,7 +62,7 @@ public void add(Object entity) { @Override public void add(Object providedId, Object entity) { Class clazz = introspector.getClass( entity ); - AbstractPojoTypeWorkPlan delegate = getDelegate( clazz ); + AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.add( providedId, entity ); } @@ -74,7 +74,7 @@ public void update(Object entity) { @Override public void update(Object providedId, Object entity) { Class clazz = introspector.getClass( entity ); - AbstractPojoTypeWorkPlan delegate = getDelegate( clazz ); + AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.update( providedId, entity ); } @@ -86,7 +86,7 @@ public void update(Object entity, String... dirtyPaths) { @Override public void update(Object providedId, Object entity, String... dirtyPaths) { Class clazz = getIntrospector().getClass( entity ); - AbstractPojoTypeWorkPlan delegate = getDelegate( clazz ); + AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.update( providedId, entity, dirtyPaths ); } @@ -98,31 +98,31 @@ public void delete(Object entity) { @Override public void delete(Object providedId, Object entity) { Class clazz = introspector.getClass( entity ); - AbstractPojoTypeWorkPlan delegate = getDelegate( clazz ); + AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.delete( providedId, entity ); } @Override public void purge(Class clazz, Object providedId) { - AbstractPojoTypeWorkPlan delegate = getDelegate( clazz ); + AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.purge( providedId ); } @Override public void prepare() { if ( isPreparing ) { - throw log.recursiveWorkPlanPrepare(); + throw log.recursiveIndexingPlanPrepare(); } isPreparing = true; try { - for ( PojoContainedTypeWorkPlan delegate : containedTypeDelegates.values() ) { + for ( PojoContainedTypeIndexingPlan delegate : containedTypeDelegates.values() ) { delegate.resolveDirty( this::updateBecauseOfContained ); } - for ( PojoIndexedTypeWorkPlan delegate : indexedTypeDelegates.values() ) { + for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { delegate.resolveDirty( this::updateBecauseOfContained ); } - for ( PojoIndexedTypeWorkPlan delegate : indexedTypeDelegates.values() ) { + for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { delegate.prepare(); } } @@ -136,7 +136,7 @@ public CompletableFuture execute() { try { prepare(); List> futures = new ArrayList<>(); - for ( PojoIndexedTypeWorkPlan delegate : indexedTypeDelegates.values() ) { + for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { futures.add( delegate.execute() ); } return CompletableFuture.allOf( futures.toArray( new CompletableFuture[0] ) ); @@ -149,7 +149,7 @@ public CompletableFuture execute() { @Override public void discard() { try { - for ( PojoIndexedTypeWorkPlan delegate : indexedTypeDelegates.values() ) { + for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { delegate.discard(); } } @@ -160,7 +160,7 @@ public void discard() { @Override public void clearNotPrepared() { - for ( PojoIndexedTypeWorkPlan delegate : indexedTypeDelegates.values() ) { + for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { delegate.clearNotPrepared(); } } @@ -169,8 +169,8 @@ private PojoRuntimeIntrospector getIntrospector() { return introspector; } - private AbstractPojoTypeWorkPlan getDelegate(Class clazz) { - AbstractPojoTypeWorkPlan delegate = indexedTypeDelegates.get( clazz ); + private AbstractPojoTypeIndexingPlan getDelegate(Class clazz) { + AbstractPojoTypeIndexingPlan delegate = indexedTypeDelegates.get( clazz ); if ( delegate == null ) { delegate = containedTypeDelegates.get( clazz ); if ( delegate == null ) { @@ -180,12 +180,12 @@ private AbstractPojoTypeWorkPlan getDelegate(Class clazz) { return delegate; } - private AbstractPojoTypeWorkPlan createDelegate(Class clazz) { + private AbstractPojoTypeIndexingPlan createDelegate(Class clazz) { Optional> indexedTypeContextOptional = indexedTypeContextProvider.getByExactClass( clazz ); if ( indexedTypeContextOptional.isPresent() ) { - PojoIndexedTypeWorkPlan delegate = indexedTypeContextOptional.get() - .createWorkPlan( sessionContext, commitStrategy, refreshStrategy ); + PojoIndexedTypeIndexingPlan delegate = indexedTypeContextOptional.get() + .createIndexingPlan( sessionContext, commitStrategy, refreshStrategy ); indexedTypeDelegates.put( clazz, delegate ); return delegate; } @@ -193,8 +193,8 @@ private AbstractPojoTypeWorkPlan createDelegate(Class clazz) { Optional> containedTypeContextOptional = containedTypeContextProvider.getByExactClass( clazz ); if ( containedTypeContextOptional.isPresent() ) { - PojoContainedTypeWorkPlan delegate = containedTypeContextOptional.get() - .createWorkPlan( sessionContext ); + PojoContainedTypeIndexingPlan delegate = containedTypeContextOptional.get() + .createIndexingPlan( sessionContext ); containedTypeDelegates.put( clazz, delegate ); return delegate; } @@ -202,8 +202,8 @@ private AbstractPojoTypeWorkPlan createDelegate(Class clazz) { throw log.notIndexedTypeNorAsDelegate( clazz ); } - private PojoIndexedTypeWorkPlan getOrCreateIndexedDelegateForContainedUpdate(Class clazz) { - PojoIndexedTypeWorkPlan delegate = indexedTypeDelegates.get( clazz ); + private PojoIndexedTypeIndexingPlan getOrCreateIndexedDelegateForContainedUpdate(Class clazz) { + PojoIndexedTypeIndexingPlan delegate = indexedTypeDelegates.get( clazz ); if ( delegate != null ) { return delegate; } @@ -212,7 +212,7 @@ private AbstractPojoTypeWorkPlan createDelegate(Class clazz) { indexedTypeContextProvider.getByExactClass( clazz ); if ( indexedTypeManagerOptional.isPresent() ) { delegate = indexedTypeManagerOptional.get() - .createWorkPlan( sessionContext, commitStrategy, refreshStrategy ); + .createIndexingPlan( sessionContext, commitStrategy, refreshStrategy ); indexedTypeDelegates.put( clazz, delegate ); return delegate; } @@ -227,7 +227,7 @@ private AbstractPojoTypeWorkPlan createDelegate(Class clazz) { private void updateBecauseOfContained(Object containingEntity) { // TODO ignore the event when containingEntity has provided IDs Class clazz = getIntrospector().getClass( containingEntity ); - PojoIndexedTypeWorkPlan delegate = getOrCreateIndexedDelegateForContainedUpdate( clazz ); + PojoIndexedTypeIndexingPlan delegate = getOrCreateIndexedDelegateForContainedUpdate( clazz ); delegate.updateBecauseOfContained( containingEntity ); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkContainedTypeContext.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkContainedTypeContext.java index 79b6840b977..7c6d5b9c222 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkContainedTypeContext.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkContainedTypeContext.java @@ -25,6 +25,6 @@ public interface PojoWorkContainedTypeContext { void resolveEntitiesToReindex(PojoReindexingCollector collector, PojoRuntimeIntrospector runtimeIntrospector, Supplier entitySupplier, Set dirtyPaths); - PojoContainedTypeWorkPlan createWorkPlan(AbstractPojoBackendSessionContext sessionContext); + PojoContainedTypeIndexingPlan createIndexingPlan(AbstractPojoBackendSessionContext sessionContext); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java index 8f93fedd30d..23da597c6e7 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java @@ -44,7 +44,7 @@ PojoDocumentContributor toDocumentContributor(Supplier entitySupplier, void resolveEntitiesToReindex(PojoReindexingCollector collector, PojoRuntimeIntrospector runtimeIntrospector, Supplier entitySupplier, Set dirtyPaths); - PojoIndexedTypeWorkPlan createWorkPlan(AbstractPojoBackendSessionContext sessionContext, + PojoIndexedTypeIndexingPlan createIndexingPlan(AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); PojoTypeDocumentWorkExecutor createDocumentWorkExecutor( diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoWorkPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java similarity index 87% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoWorkPlan.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java index a4a2048b9d7..cbab8a22975 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoWorkPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java @@ -9,17 +9,23 @@ import java.util.concurrent.CompletableFuture; /** - * A set of works to be executed on POJO-mapped indexes. + * An interface for indexing entities in the context of a session in a POJO mapper. *

- * Works are accumulated when methods such as {@link #add(Object)} or {@link #update(Object, Object)} are called, - * and executed only when {@link #execute()} is called. + * This class is stateful: it queues operations internally to apply them at a later time. *

- * Relative ordering of works within a work plan will be preserved. + * When {@link #prepare()} is called, + * the entities will be processed and index documents will be built + * and stored in an internal buffer. + *

+ * When {@link #execute()} is called, + * the operations will be actually sent to the index. + *

+ * Note that {@link #execute()} will implicitly trigger processing of documents that weren't processed yet, + * if any, so calling {@link #prepare()} is not necessary if you call {@link #execute()} just next. *

* Implementations may not be thread-safe. - * */ -public interface PojoWorkPlan { +public interface PojoIndexingPlan { /** * Add an entity to the index, assuming that the entity is absent from the index. @@ -127,7 +133,7 @@ public interface PojoWorkPlan { void purge(Class clazz, Object providedId); /** - * Prepare the work plan execution, i.e. execute as much as possible without writing to the index. + * Prepare the execution of the indexing plan, i.e. execute as much as possible without writing to the index. *

* In particular, ensure that all data is extracted from the POJOs * and converted to the backend-specific format. From df2effde3cb0cb83217ef5baa40ba4d768740e21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 14:16:01 +0200 Subject: [PATCH 05/11] HSEARCH-3606 Improve the consistency of PojoIndexingPlan methods Both consistency with the SearchIndexingPlan and internal consistency. --- .../SearchSessionFlushIT.java | 2 +- .../work/impl/SearchWorkPlanImpl.java | 10 +++--- .../impl/HibernateSearchEventListener.java | 16 ++++----- ...stTransactionWorkQueueSynchronization.java | 2 +- .../orm/work/impl/SearchIndexingPlanImpl.java | 4 +-- .../search/mapper/pojo/logging/impl/Log.java | 2 +- .../impl/PojoIndexedTypeIndexingPlan.java | 4 +-- .../pojo/work/impl/PojoIndexingPlanImpl.java | 32 ++++++++--------- .../pojo/work/spi/PojoIndexingPlan.java | 36 ++++++++++--------- 9 files changed, 56 insertions(+), 52 deletions(-) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java index 617344c5030..b65c1b9ffd6 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java @@ -29,7 +29,7 @@ /** * Tests the behaviour of different kinds of {@link Session#flush()}. - * Each of ones has to trigger a {@link PojoIndexingPlan#prepare()} exactly when the flush is expected. + * Each of ones has to trigger a {@link PojoIndexingPlan#process()} exactly when the flush is expected. */ @TestForIssue( jiraKey = "HSEARCH-3360" ) public class SearchSessionFlushIT { diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java index 71f37c87f77..307cd09593a 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java @@ -31,22 +31,22 @@ public void add(Object providedId, Object entity) { @Override public void update(Object entity) { - delegate.update( entity ); + delegate.addOrUpdate( entity ); } @Override public void update(Object providedId, Object entity) { - delegate.update( providedId, entity ); + delegate.addOrUpdate( providedId, entity ); } @Override public void update(Object entity, String... dirtyPaths) { - delegate.update( entity, dirtyPaths ); + delegate.addOrUpdate( entity, dirtyPaths ); } @Override public void update(Object providedId, Object entity, String... dirtyPaths) { - delegate.update( providedId, entity, dirtyPaths ); + delegate.addOrUpdate( providedId, entity, dirtyPaths ); } @Override @@ -60,7 +60,7 @@ public void delete(Object providedId, Object entity) { } public void prepare() { - delegate.prepare(); + delegate.process(); } public CompletableFuture execute() { diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java index 3d079964acc..08e8b8993cf 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/event/impl/HibernateSearchEventListener.java @@ -104,10 +104,10 @@ public void onPostUpdate(PostUpdateEvent event) { PojoIndexingPlan plan = getCurrentIndexingPlan( contextProvider, event.getSession() ); Object providedId = typeContext.toIndexingPlanProvidedId( event.getId() ); if ( dirtyCheckingEnabled ) { - plan.update( providedId, entity, getDirtyPropertyNames( event ) ); + plan.addOrUpdate( providedId, entity, getDirtyPropertyNames( event ) ); } else { - plan.update( providedId, entity ); + plan.addOrUpdate( providedId, entity ); } } } @@ -136,7 +136,7 @@ public void onFlush(FlushEvent event) { HibernateOrmListenerContextProvider contextProvider = state.getContextProvider(); EventSource session = event.getSession(); PojoIndexingPlan plan = getCurrentIndexingPlan( contextProvider, session ); - plan.prepare(); + plan.process(); // flush within a transaction should trigger only the prepare phase, // since the execute phase is supposed to be triggered by the transaction commit @@ -159,7 +159,7 @@ public void onAutoFlush(AutoFlushEvent event) throws HibernateException { // */ // return; // } - getCurrentIndexingPlan( state.getContextProvider(), event.getSession() ).prepare(); + getCurrentIndexingPlan( state.getContextProvider(), event.getSession() ).process(); } @Override @@ -169,7 +169,7 @@ public void onClear(ClearEvent event) { // skip the clearNotPrepared operation in case there has been no one to clear if ( plan != null ) { - plan.clearNotPrepared(); + plan.discardNotProcessed(); } } @@ -224,18 +224,18 @@ private void processCollectionEvent(AbstractCollectionEvent event) { * which can then decide whether to reindex based on whether the collection * has any impact on indexing. */ - plan.update( providedId, entity, collectionRole ); + plan.addOrUpdate( providedId, entity, collectionRole ); } else { /* * We don't know which collection is being changed, * so we have to default to reindexing, just in case. */ - plan.update( providedId, entity ); + plan.addOrUpdate( providedId, entity ); } } else { - plan.update( providedId, entity ); + plan.addOrUpdate( providedId, entity ); } } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java index b4dba77b75c..6759a677ca9 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/PostTransactionWorkQueueSynchronization.java @@ -43,7 +43,7 @@ public PostTransactionWorkQueueSynchronization(PojoIndexingPlan indexingPlan, @Override public void beforeCompletion() { log.tracef( "Processing Transaction's beforeCompletion() phase: %s", this ); - indexingPlan.prepare(); + indexingPlan.process(); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java index 53b6ebfff0a..bbbfb3bb5ce 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchIndexingPlanImpl.java @@ -19,7 +19,7 @@ public SearchIndexingPlanImpl(SearchIndexingPlanContext context) { @Override public void addOrUpdate(Object entity) { - context.getCurrentIndexingPlan( true ).update( entity ); + context.getCurrentIndexingPlan( true ).addOrUpdate( entity ); } @Override @@ -38,7 +38,7 @@ public void process() { if ( plan == null ) { return; } - plan.prepare(); + plan.process(); } @Override diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java index 2ab87e3ac00..5e414b3bc6a 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/logging/impl/Log.java @@ -409,7 +409,7 @@ SearchException cannotPurgeNonIndexedContainedType( + " Make sure you do not change entities within an entity getter or a custom bridge used for indexing," + " and avoid any event that could trigger entity processing." + " Hibernate ORM flushes, in particular, must be avoided in entity getters and bridges.") - SearchException recursiveIndexingPlanPrepare(); + SearchException recursiveIndexingPlanProcess(); @Message(id = ID_OFFSET_2 + 61, value = "Type '%1$s' cannot be indexed-embedded, because no index mapping (@GenericField, @FullTextField, ...) is defined for that type.") SearchException invalidIndexedEmbedded(@FormatWith(PojoTypeModelFormatter.class) PojoTypeModel typeModel); diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java index da6a92a8082..7e3276b50c3 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java @@ -89,7 +89,7 @@ void resolveDirty(PojoReindexingCollector containingEntityCollector) { } } - void prepare() { + void process() { sendCommandsToDelegate(); getDelegate().prepare(); } @@ -107,7 +107,7 @@ void discard() { delegate.discard(); } - void clearNotPrepared() { + void discardNotProcessed() { this.indexingPlansPerId.clear(); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java index 9296655bc3c..21d0a180758 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexingPlanImpl.java @@ -39,7 +39,7 @@ public class PojoIndexingPlanImpl implements PojoIndexingPlan { private final Map, PojoIndexedTypeIndexingPlan> indexedTypeDelegates = new LinkedHashMap<>(); private final Map, PojoContainedTypeIndexingPlan> containedTypeDelegates = new HashMap<>(); - private boolean isPreparing = false; + private boolean isProcessing = false; public PojoIndexingPlanImpl(PojoWorkIndexedTypeContextProvider indexedTypeContextProvider, PojoWorkContainedTypeContextProvider containedTypeContextProvider, @@ -67,24 +67,24 @@ public void add(Object providedId, Object entity) { } @Override - public void update(Object entity) { - update( null, entity ); + public void addOrUpdate(Object entity) { + addOrUpdate( null, entity ); } @Override - public void update(Object providedId, Object entity) { + public void addOrUpdate(Object providedId, Object entity) { Class clazz = introspector.getClass( entity ); AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.update( providedId, entity ); } @Override - public void update(Object entity, String... dirtyPaths) { - update( null, entity, dirtyPaths ); + public void addOrUpdate(Object entity, String... dirtyPaths) { + addOrUpdate( null, entity, dirtyPaths ); } @Override - public void update(Object providedId, Object entity, String... dirtyPaths) { + public void addOrUpdate(Object providedId, Object entity, String... dirtyPaths) { Class clazz = getIntrospector().getClass( entity ); AbstractPojoTypeIndexingPlan delegate = getDelegate( clazz ); delegate.update( providedId, entity, dirtyPaths ); @@ -109,12 +109,12 @@ public void purge(Class clazz, Object providedId) { } @Override - public void prepare() { - if ( isPreparing ) { - throw log.recursiveIndexingPlanPrepare(); + public void process() { + if ( isProcessing ) { + throw log.recursiveIndexingPlanProcess(); } - isPreparing = true; + isProcessing = true; try { for ( PojoContainedTypeIndexingPlan delegate : containedTypeDelegates.values() ) { delegate.resolveDirty( this::updateBecauseOfContained ); @@ -123,18 +123,18 @@ public void prepare() { delegate.resolveDirty( this::updateBecauseOfContained ); } for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { - delegate.prepare(); + delegate.process(); } } finally { - isPreparing = false; + isProcessing = false; } } @Override public CompletableFuture execute() { try { - prepare(); + process(); List> futures = new ArrayList<>(); for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { futures.add( delegate.execute() ); @@ -159,9 +159,9 @@ public void discard() { } @Override - public void clearNotPrepared() { + public void discardNotProcessed() { for ( PojoIndexedTypeIndexingPlan delegate : indexedTypeDelegates.values() ) { - delegate.clearNotPrepared(); + delegate.discardNotProcessed(); } } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java index cbab8a22975..6dca45ddf59 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexingPlan.java @@ -13,7 +13,7 @@ *

* This class is stateful: it queues operations internally to apply them at a later time. *

- * When {@link #prepare()} is called, + * When {@link #process()} is called, * the entities will be processed and index documents will be built * and stored in an internal buffer. *

@@ -21,7 +21,7 @@ * the operations will be actually sent to the index. *

* Note that {@link #execute()} will implicitly trigger processing of documents that weren't processed yet, - * if any, so calling {@link #prepare()} is not necessary if you call {@link #execute()} just next. + * if any, so calling {@link #process()} is not necessary if you call {@link #execute()} just next. *

* Implementations may not be thread-safe. */ @@ -41,7 +41,7 @@ public interface PojoIndexingPlan { *

* Note: depending on the backend, this may lead to errors or duplicate entries in the index * if the entity was actually already present in the index before this call. - * When in doubt, you should rather use {@link #update(Object, Object)} or {@link #update(Object)}. + * When in doubt, you should rather use {@link #addOrUpdate(Object, Object)} or {@link #addOrUpdate(Object)}. * * @param providedId A value to extract the document ID from. * Generally the expected value is the entity ID, but a different value may be expected depending on the mapping. @@ -53,11 +53,11 @@ public interface PojoIndexingPlan { /** * Update an entity in the index, or add it if it's absent from the index. *

- * Shorthand for {@code update(null, entity)}; see {@link #update(Object, Object)}. + * Shorthand for {@code update(null, entity)}; see {@link #addOrUpdate(Object, Object)}. * * @param entity The entity to update in the index. */ - void update(Object entity); + void addOrUpdate(Object entity); /** * Update an entity in the index, or add it if it's absent from the index. @@ -67,7 +67,7 @@ public interface PojoIndexingPlan { * If {@code null}, Hibernate Search will attempt to extract the ID from the entity. * @param entity The entity to update in the index. */ - void update(Object providedId, Object entity); + void addOrUpdate(Object providedId, Object entity); /** * Update an entity in the index, or add it if it's absent from the index, @@ -76,13 +76,13 @@ public interface PojoIndexingPlan { *

* Assumes that the entity may already be present in the index. *

- * Shorthand for {@code update(null, entity, dirtyPaths)}; see {@link #update(Object, Object)}. + * Shorthand for {@code update(null, entity, dirtyPaths)}; see {@link #addOrUpdate(Object, Object)}. * * @param entity The entity to update in the index. * @param dirtyPaths The paths to consider dirty, formatted using the dot-notation * ("directEntityProperty.nestedPropery"). */ - void update(Object entity, String... dirtyPaths); + void addOrUpdate(Object entity, String... dirtyPaths); /** * Update an entity in the index, or add it if it's absent from the index, @@ -96,7 +96,7 @@ public interface PojoIndexingPlan { * @param dirtyPaths The paths to consider dirty, formatted using the dot-notation * ("directEntityProperty.nestedPropery"). */ - void update(Object providedId, Object entity, String... dirtyPaths); + void addOrUpdate(Object providedId, Object entity, String... dirtyPaths); /** * Delete an entity from the index. @@ -133,31 +133,35 @@ public interface PojoIndexingPlan { void purge(Class clazz, Object providedId); /** - * Prepare the execution of the indexing plan, i.e. execute as much as possible without writing to the index. + * Extract all data from objects passed to the indexing plan so far, + * create documents to be indexed and put them into an internal buffer, + * without writing them to the indexes. *

* In particular, ensure that all data is extracted from the POJOs * and converted to the backend-specific format. *

* Calling this method is optional: the {@link #execute()} method - * will perform the preparation if necessary. + * will perform the processing if necessary. */ - void prepare(); + void process(); /** - * Start executing all the works in this plan, and clear the plan so that it can be re-used. + * Write all pending changes to the index now, + * without waiting for a Hibernate ORM flush event or transaction commit, + * and clear the plan so that it can be re-used. * * @return A {@link CompletableFuture} that will be completed when all the works are complete. */ CompletableFuture execute(); /** - * Discard all works that are prepared but not yet executed. + * Discard all plans of indexing. */ void discard(); /** - * Discard all works that are not prepared yet. + * Discard all plans of indexing, except for parts that were already {@link #process() processed}. */ - void clearNotPrepared(); + void discardNotProcessed(); } From 9c9e93c733f7da4a5c90fbcbbe739dbe8129f4a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 14:25:18 +0200 Subject: [PATCH 06/11] HSEARCH-3606 Rename SearchWorkPlan in the JavaBean mapper to SearchIndexingPlan For consistency with the ORM SearchIndexingPlan, and also because this class will indeed always be about indexing and nothing else. --- .../AbstractFieldContainerExtractorIT.java | 4 ++-- .../definition/DocumentIdDefaultBridgeIT.java | 2 +- .../pojo/mapping/definition/FieldBaseIT.java | 2 +- .../FieldContainerExtractorBaseIT.java | 2 +- .../definition/FieldDefaultBridgeIT.java | 2 +- .../mapping/definition/FullTextFieldIT.java | 2 +- .../definition/IndexedEmbeddedBaseIT.java | 2 +- .../mapping/definition/KeywordFieldIT.java | 2 +- .../definition/PropertyBridgeBaseIT.java | 18 +++++++++--------- .../mapping/definition/TypeBridgeBaseIT.java | 18 +++++++++--------- .../mapper/pojo/model/GenericPropertyIT.java | 2 +- .../pojo/model/ImplementedInterfaceIT.java | 2 +- .../pojo/model/PropertyInheritanceIT.java | 2 +- .../IndexNullAsOnNumericContainerIT.java | 2 +- .../mapper/pojo/providedid/ProvidedIdIT.java | 4 ++-- .../routing/AnnotationMappingRoutingIT.java | 4 ++-- .../routing/ProgrammaticMappingRoutingIT.java | 4 ++-- .../pojo/smoke/AnnotationMappingSmokeIT.java | 14 +++++++------- .../pojo/smoke/ProgrammaticMappingSmokeIT.java | 14 +++++++------- .../AnnotationMappingGeoPointBindingIT.java | 6 +++--- .../ProgrammaticMappingGeoPointBindingIT.java | 6 +++--- .../mapper/javabean/mapping/SearchMapping.java | 2 +- .../javabean/mapping/SearchMappingBuilder.java | 4 ++-- .../mapper/javabean/session/SearchSession.java | 8 ++++---- .../javabean/session/SearchSessionBuilder.java | 4 ++-- .../session/impl/JavaBeanSearchSession.java | 18 +++++++++--------- ...chWorkPlan.java => SearchIndexingPlan.java} | 9 +++------ ...anImpl.java => SearchIndexingPlanImpl.java} | 6 +++--- 28 files changed, 81 insertions(+), 84 deletions(-) rename mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/{SearchWorkPlan.java => SearchIndexingPlan.java} (92%) rename mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/{SearchWorkPlanImpl.java => SearchIndexingPlanImpl.java} (88%) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java index 701935e2c23..b1e6d8b21fa 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java @@ -304,7 +304,7 @@ final void doTest(TestModel testModel, Class indexedFieldType try ( SearchSession session = mapping.createSession() ) { E entity1 = testModel.newEntity( 1, propertyValue ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b @@ -339,7 +339,7 @@ final void doTestExpectMissing(TestModel testModel, try ( SearchSession session = mapping.createSession() ) { E entity1 = testModel.newEntity( 1, propertyValue ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> { } ) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java index d3d6a94e68c..de934b1a7ad 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java @@ -98,7 +98,7 @@ public void indexing() { try ( SearchSession session = mapping.createSession() ) { for ( I entityIdentifierValue : expectations.getEntityIdentifierValues() ) { Object entity = expectations.instantiateTypeWithIdentifierBridge1( entityIdentifierValue ); - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); } BackendMock.DocumentWorkCallListContext expectationSetter = backendMock.expectWorks( diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java index 182eb598e91..a971c5c5c89 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java @@ -299,7 +299,7 @@ public Integer getId() { try ( SearchSession session = mapping.createSession() ) { IndexedEntity entity = new IndexedEntity(); entity.id = 1; - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) // Stub backend is not supposed to use 'indexNullAs' option diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java index 8f4c30fd803..174add296f7 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java @@ -79,7 +79,7 @@ public MyContainer getText() { IndexedEntity entity = new IndexedEntity(); entity.id = 1; entity.text = new MyContainer<>( "value1", "value2" ); - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) // Stub backend is not supposed to use 'indexNullAs' option diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java index c1f7562f8e1..f5aae17b26c 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java @@ -115,7 +115,7 @@ public void indexing() { int id = 0; for ( V propertyValue : getPropertyValues() ) { Object entity = expectations.instantiateTypeWithValueBridge1( id, propertyValue ); - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); ++id; } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java index bcf47fd8ae5..00aaf7c1f6d 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java @@ -401,7 +401,7 @@ private void doTestValidMapping(Class entityType, try ( SearchSession session = mapping.createSession() ) { E entity1 = newEntityFunction.apply( 1, propertyValue ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java index 0511e688a31..b033995ca1d 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java @@ -728,7 +728,7 @@ private void doTestEmbeddedRuntime(SearchMapping mapping, try ( SearchSession session = mapping.createSession() ) { E entity1 = newEntityFunction.apply( 1 ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( INDEX_NAME ) .add( "1", expectedDocumentContributor ) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java index 3f652bcb876..26e85e68c50 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java @@ -420,7 +420,7 @@ private void doTestValidMapping(Class entityType, try ( SearchSession session = mapping.createSession() ) { E entity1 = newEntityFunction.apply( 1, propertyValue ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java index 2ef8f37fca5..127ef59bf43 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java @@ -115,7 +115,7 @@ public String getStringProperty() { entity.stringProperty = "some string"; try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -125,7 +125,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty = "some string 2"; - session.getMainWorkPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().update( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -196,7 +196,7 @@ public Contained getContained() { contained.stringProperty = "some string"; try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", contained.stringProperty ) ) @@ -206,7 +206,7 @@ public Contained getContained() { try ( SearchSession session = mapping.createSession() ) { contained.stringProperty = "some string 2"; - session.getMainWorkPlan().update( entity, new String[] { "contained.stringProperty" } ); + session.indexingPlan().update( entity, new String[] { "contained.stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", contained.stringProperty ) ) @@ -373,8 +373,8 @@ public void explicitReindexing() { containedLevel2Entity.stringProperty = "some string"; try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); - session.getMainWorkPlan().add( containedLevel2Entity ); + session.indexingPlan().add( entity ); + session.indexingPlan().add( containedLevel2Entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", "constant" ) ) @@ -384,7 +384,7 @@ public void explicitReindexing() { try ( SearchSession session = mapping.createSession() ) { containedLevel2Entity.stringProperty = "some string"; - session.getMainWorkPlan().update( containedLevel2Entity, new String[] { "stringProperty" } ); + session.indexingPlan().update( containedLevel2Entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "constant" ) ) @@ -800,7 +800,7 @@ public List getStringProperty() { entity.stringProperty.add( "value1" ); try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", "value1" ) ) @@ -810,7 +810,7 @@ public List getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty.add( "value2" ); - session.getMainWorkPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().update( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "value1", "value2" ) ) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java index 99384c2e8ea..ad7660100ab 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java @@ -109,7 +109,7 @@ public String getStringProperty() { entity.stringProperty = "some string"; try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -119,7 +119,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty = "some string 2"; - session.getMainWorkPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().update( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -182,7 +182,7 @@ public String getStringProperty() { entity.stringProperty = "some string"; try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -192,7 +192,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty = "some string 2"; - session.getMainWorkPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().update( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -306,8 +306,8 @@ public String getStringProperty() { containedEntity.stringProperty = "some string"; try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); - session.getMainWorkPlan().add( containedEntity ); + session.indexingPlan().add( entity ); + session.indexingPlan().add( containedEntity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", "constant" ) ) @@ -318,7 +318,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { containedEntity.stringProperty = "some string"; - session.getMainWorkPlan().update( containedEntity, new String[] { "stringProperty" } ); + session.indexingPlan().update( containedEntity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "constant" ) ) @@ -698,7 +698,7 @@ public CustomEnum getEnumProperty() { try ( SearchSession session = mapping.createSession() ) { - session.getMainWorkPlan().add( entity ); + session.indexingPlan().add( entity ); backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b @@ -713,7 +713,7 @@ public CustomEnum getEnumProperty() { try ( SearchSession session = mapping.createSession() ) { entity.enumProperty = CustomEnum.VALUE2; - session.getMainWorkPlan().update( entity, new String[] { "enumProperty" } ); + session.indexingPlan().update( entity, new String[] { "enumProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java index 43db719122e..2ecea2de5e0 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java @@ -70,7 +70,7 @@ public void index() { entity1.setGenericProperty( genericEntity ); genericEntity.setParent( entity1 ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java index a1abf488330..8b4bf2226b3 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java @@ -46,7 +46,7 @@ public void setup() { public void index() { try ( SearchSession session = mapping.createSession() ) { IndexedPojo indexedPojo = new IndexedPojo( 1, "Using some other text here" ); - session.getMainWorkPlan().add( indexedPojo ); + session.indexingPlan().add( indexedPojo ); backendMock.expectWorks( IndexedPojo.class.getName() ).add( "1", b -> b .field( "text", "Using some other text here" ) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java index 7819e6d3fea..4f5595d9468 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java @@ -72,7 +72,7 @@ public void index() { entity1.setEmbedded( entity2 ); entity2.setEmbedding( entity1 ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java index 91d8effdbb5..bae06f5ac3a 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java @@ -56,7 +56,7 @@ public void test() { entity1.getIntegerList().add( null ); entity1.getIntegerList().add( 2 ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java index 70efa354c0f..8a88d373e18 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java @@ -52,7 +52,7 @@ class IndexedEntity { try ( SearchSession session = mapping.createSession() ) { IndexedEntity entity1 = new IndexedEntity(); - session.getMainWorkPlan().add( "42", entity1 ); + session.indexingPlan().add( "42", entity1 ); backendMock.expectWorks( INDEX_NAME ) .add( "42", b -> { } ) @@ -96,7 +96,7 @@ class IndexedEntity { IndexedEntity entity1 = new IndexedEntity(); SubTest.expectException( - () -> session.getMainWorkPlan().add( entity1 ) + () -> session.indexingPlan().add( entity1 ) ) .assertThrown() .isInstanceOf( SearchException.class ) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java index 4510a54b5fc..260719fe80b 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java @@ -67,7 +67,7 @@ public void index() { entity1.setCategory( EntityCategory.CATEGORY_2 ); entity1.setValue( "val1" ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( b -> b @@ -92,7 +92,7 @@ public void index_multiTenancy() { entity1.setCategory( EntityCategory.CATEGORY_2 ); entity1.setValue( "val1" ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java index 207f8b9af1b..bbf4c6aca8a 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java @@ -72,7 +72,7 @@ public void index() { entity1.setCategory( EntityCategory.CATEGORY_2 ); entity1.setValue( "val1" ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( b -> b @@ -97,7 +97,7 @@ public void index_multiTenancy() { entity1.setCategory( EntityCategory.CATEGORY_2 ); entity1.setValue( "val1" ); - session.getMainWorkPlan().add( entity1 ); + session.indexingPlan().add( entity1 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java index fab5453f415..bc6c29d439c 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java @@ -216,13 +216,13 @@ public void index() { entity2.getEmbeddingAsMap().add( entity5 ); entity3.getEmbeddingAsMap().add( entity5 ); - session.getMainWorkPlan().add( entity1 ); - session.getMainWorkPlan().add( entity2 ); - session.getMainWorkPlan().add( entity4 ); - session.getMainWorkPlan().delete( entity1 ); - session.getMainWorkPlan().add( entity3 ); - session.getMainWorkPlan().add( entity5 ); - session.getMainWorkPlan().add( entity6 ); + session.indexingPlan().add( entity1 ); + session.indexingPlan().add( entity2 ); + session.indexingPlan().add( entity4 ); + session.indexingPlan().delete( entity1 ); + session.indexingPlan().add( entity3 ); + session.indexingPlan().add( entity5 ); + session.indexingPlan().add( entity6 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( "2", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java index 76ced1190cf..c0633940754 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java @@ -266,13 +266,13 @@ public void index() { entity2.getEmbeddingAsMap().add( entity5 ); entity3.getEmbeddingAsMap().add( entity5 ); - session.getMainWorkPlan().add( entity1 ); - session.getMainWorkPlan().add( entity2 ); - session.getMainWorkPlan().add( entity4 ); - session.getMainWorkPlan().delete( entity1 ); - session.getMainWorkPlan().add( entity3 ); - session.getMainWorkPlan().add( entity5 ); - session.getMainWorkPlan().add( entity6 ); + session.indexingPlan().add( entity1 ); + session.indexingPlan().add( entity2 ); + session.indexingPlan().add( entity4 ); + session.indexingPlan().delete( entity1 ); + session.indexingPlan().add( entity3 ); + session.indexingPlan().add( entity5 ); + session.indexingPlan().add( entity6 ); backendMock.expectWorks( IndexedEntity.INDEX ) .add( "2", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java index 5f970096e6f..4e4ba80dd05 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java @@ -91,9 +91,9 @@ public double getLongitude() { entity3.setId( 3 ); entity3.setCoord( new CustomCoordinates( 3.1d, 3.2d ) ); - session.getMainWorkPlan().add( entity1 ); - session.getMainWorkPlan().add( entity2 ); - session.getMainWorkPlan().add( entity3 ); + session.indexingPlan().add( entity1 ); + session.indexingPlan().add( entity2 ); + session.indexingPlan().add( entity3 ); backendMock.expectWorks( GeoPointOnTypeEntity.INDEX ) .add( "1", b -> b diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java index c13a8be2c73..fa7e8f0fcc6 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java @@ -138,9 +138,9 @@ public double getLongitude() { entity3.setId( 3 ); entity3.setCoord( new CustomCoordinates( 3.1d, 3.2d ) ); - session.getMainWorkPlan().add( entity1 ); - session.getMainWorkPlan().add( entity2 ); - session.getMainWorkPlan().add( entity3 ); + session.indexingPlan().add( entity1 ); + session.indexingPlan().add( entity2 ); + session.indexingPlan().add( entity3 ); backendMock.expectWorks( GeoPointOnTypeEntity.INDEX ) .add( "1", b -> b diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMapping.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMapping.java index 9ac1ec771e0..3b323ea3c4e 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMapping.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMapping.java @@ -37,7 +37,7 @@ default SearchScope scope(Class type) { SearchScope scope(Collection> types); /** - * @return A new session allowing to {@link SearchSession#getMainWorkPlan() index} or + * @return A new session allowing to {@link SearchSession#indexingPlan() index} or * {@link SearchSession#search(Class) search for} entities. * @see #createSessionWithOptions() */ diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMappingBuilder.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMappingBuilder.java index a405a122f7a..43ca1b1842f 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMappingBuilder.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/mapping/SearchMappingBuilder.java @@ -67,7 +67,7 @@ public ContainerExtractorConfigurationContext containerExtractors() { /** * @param type The type to be considered as an entity type, i.e. a type that may be indexed - * and whose instances be added/updated/deleted through the {@link SearchSession#getMainWorkPlan() work plan}. + * and whose instances be added/updated/deleted through the {@link SearchSession#indexingPlan() indexing plan}. * @return {@code this}, for call chaining. */ public SearchMappingBuilder addEntityType(Class type) { @@ -77,7 +77,7 @@ public SearchMappingBuilder addEntityType(Class type) { /** * @param types The types to be considered as entity types, i.e. types that may be indexed - * and whose instances be added/updated/deleted through the {@link SearchSession#getMainWorkPlan() work plan}. + * and whose instances be added/updated/deleted through the {@link SearchSession#indexingPlan() indexing plan}. * @return {@code this}, for call chaining. */ public SearchMappingBuilder addEntityTypes(Set> types) { diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSession.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSession.java index d96565bb42c..e0ea9c70eb1 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSession.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSession.java @@ -12,12 +12,12 @@ import org.hibernate.search.engine.search.query.dsl.SearchQueryHitTypeStep; import org.hibernate.search.mapper.javabean.common.EntityReference; import org.hibernate.search.mapper.javabean.scope.SearchScope; -import org.hibernate.search.mapper.javabean.work.SearchWorkPlan; +import org.hibernate.search.mapper.javabean.work.SearchIndexingPlan; public interface SearchSession extends AutoCloseable { /** - * Execute any pending work in the {@link #getMainWorkPlan() main work plan} + * Execute any pending work in the {@link #indexingPlan() indexing plan} * and release any resource held by this session. */ @Override @@ -79,8 +79,8 @@ default SearchScope scope(Class type) { SearchScope scope(Collection> types); /** - * @return The main work plan for this session. It will be executed upon closing this session. + * @return The indexing plan for this session. It will be executed upon closing this session. */ - SearchWorkPlan getMainWorkPlan(); + SearchIndexingPlan indexingPlan(); } diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSessionBuilder.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSessionBuilder.java index f4f3f41b255..b88e7039e99 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSessionBuilder.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/SearchSessionBuilder.java @@ -19,13 +19,13 @@ public interface SearchSessionBuilder { SearchSessionBuilder tenantId(String tenantId); /** - * @param commitStrategy The commit strategy for indexing works added to the {@link SearchSession#getMainWorkPlan() main work plan}. + * @param commitStrategy The commit strategy for indexing works added to the {@link SearchSession#indexingPlan() indexing plan}. * @return {@code this} for method chaining. */ SearchSessionBuilder commitStrategy(DocumentCommitStrategy commitStrategy); /** - * @param refreshStrategy The refresh strategy for indexing works added to the {@link SearchSession#getMainWorkPlan() main work plan}. + * @param refreshStrategy The refresh strategy for indexing works added to the {@link SearchSession#indexingPlan() indexing plan}. * @return {@code this} for method chaining. */ SearchSessionBuilder refreshStrategy(DocumentRefreshStrategy refreshStrategy); diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java index 643fee34d08..72f1e14fb59 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/session/impl/JavaBeanSearchSession.java @@ -20,8 +20,8 @@ import org.hibernate.search.mapper.javabean.session.SearchSession; import org.hibernate.search.mapper.javabean.session.SearchSessionBuilder; import org.hibernate.search.mapper.javabean.session.context.impl.JavaBeanBackendSessionContext; -import org.hibernate.search.mapper.javabean.work.SearchWorkPlan; -import org.hibernate.search.mapper.javabean.work.impl.SearchWorkPlanImpl; +import org.hibernate.search.mapper.javabean.work.SearchIndexingPlan; +import org.hibernate.search.mapper.javabean.work.impl.SearchIndexingPlanImpl; import org.hibernate.search.mapper.javabean.common.impl.EntityReferenceImpl; import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.model.spi.PojoRuntimeIntrospector; @@ -37,7 +37,7 @@ public class JavaBeanSearchSession extends AbstractPojoSearchSession private final DocumentCommitStrategy commitStrategy; private final DocumentRefreshStrategy refreshStrategy; - private SearchWorkPlanImpl workPlan; + private SearchIndexingPlanImpl indexingPlan; private JavaBeanSearchSession(JavaBeanSearchSessionBuilder builder) { super( builder, builder.buildSessionContext() ); @@ -49,8 +49,8 @@ private JavaBeanSearchSession(JavaBeanSearchSessionBuilder builder) { @Override public void close() { - if ( workPlan != null ) { - CompletableFuture future = workPlan.execute(); + if ( indexingPlan != null ) { + CompletableFuture future = indexingPlan.execute(); future.join(); } } @@ -71,11 +71,11 @@ public SearchScopeImpl scope(Collection> types) { } @Override - public SearchWorkPlan getMainWorkPlan() { - if ( workPlan == null ) { - workPlan = new SearchWorkPlanImpl( getDelegate().createIndexingPlan( commitStrategy, refreshStrategy ) ); + public SearchIndexingPlan indexingPlan() { + if ( indexingPlan == null ) { + indexingPlan = new SearchIndexingPlanImpl( getDelegate().createIndexingPlan( commitStrategy, refreshStrategy ) ); } - return workPlan; + return indexingPlan; } @Override diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchWorkPlan.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java similarity index 92% rename from mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchWorkPlan.java rename to mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java index 66e8dd849b8..b7c3168f1ad 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchWorkPlan.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java @@ -7,16 +7,13 @@ package org.hibernate.search.mapper.javabean.work; /** - * A set of works to be executed on mapped indexes. + * An interface for indexing entities in the context of a session. *

- * Works are accumulated when methods such as {@link #add(Object)} or {@link #update(Object, Object)} are called, - * and executed only when the search manager is closed. - *

- * Relative ordering of works within a work plan will be preserved. + * This class is stateful: it queues operations internally to apply them when the session is closed. *

* This contract is not thread-safe. */ -public interface SearchWorkPlan { +public interface SearchIndexingPlan { /** * Add an entity to the index, assuming that the entity is absent from the index. diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java similarity index 88% rename from mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java rename to mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java index 307cd09593a..dcf1a4c23bd 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchWorkPlanImpl.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java @@ -8,14 +8,14 @@ import java.util.concurrent.CompletableFuture; -import org.hibernate.search.mapper.javabean.work.SearchWorkPlan; +import org.hibernate.search.mapper.javabean.work.SearchIndexingPlan; import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; -public class SearchWorkPlanImpl implements SearchWorkPlan { +public class SearchIndexingPlanImpl implements SearchIndexingPlan { private final PojoIndexingPlan delegate; - public SearchWorkPlanImpl(PojoIndexingPlan delegate) { + public SearchIndexingPlanImpl(PojoIndexingPlan delegate) { this.delegate = delegate; } From fb87ecafdea9ff69abe0d78bc107e60992bec85e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Fri, 13 Sep 2019 14:27:12 +0200 Subject: [PATCH 07/11] HSEARCH-3606 Improve the consistency of SearchIndexingPlan methods in the JavaBean mapper --- .../mapping/definition/PropertyBridgeBaseIT.java | 8 ++++---- .../pojo/mapping/definition/TypeBridgeBaseIT.java | 8 ++++---- .../mapper/javabean/work/SearchIndexingPlan.java | 14 +++++++------- .../javabean/work/impl/SearchIndexingPlanImpl.java | 12 ++++-------- 4 files changed, 19 insertions(+), 23 deletions(-) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java index 127ef59bf43..da4f4124538 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java @@ -125,7 +125,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty = "some string 2"; - session.indexingPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().addOrUpdate( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -206,7 +206,7 @@ public Contained getContained() { try ( SearchSession session = mapping.createSession() ) { contained.stringProperty = "some string 2"; - session.indexingPlan().update( entity, new String[] { "contained.stringProperty" } ); + session.indexingPlan().addOrUpdate( entity, new String[] { "contained.stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", contained.stringProperty ) ) @@ -384,7 +384,7 @@ public void explicitReindexing() { try ( SearchSession session = mapping.createSession() ) { containedLevel2Entity.stringProperty = "some string"; - session.indexingPlan().update( containedLevel2Entity, new String[] { "stringProperty" } ); + session.indexingPlan().addOrUpdate( containedLevel2Entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "constant" ) ) @@ -810,7 +810,7 @@ public List getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty.add( "value2" ); - session.indexingPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().addOrUpdate( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "value1", "value2" ) ) diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java index ad7660100ab..2c072d9b8f1 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java @@ -119,7 +119,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty = "some string 2"; - session.indexingPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().addOrUpdate( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -192,7 +192,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { entity.stringProperty = "some string 2"; - session.indexingPlan().update( entity, new String[] { "stringProperty" } ); + session.indexingPlan().addOrUpdate( entity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) @@ -318,7 +318,7 @@ public String getStringProperty() { try ( SearchSession session = mapping.createSession() ) { containedEntity.stringProperty = "some string"; - session.indexingPlan().update( containedEntity, new String[] { "stringProperty" } ); + session.indexingPlan().addOrUpdate( containedEntity, new String[] { "stringProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "constant" ) ) @@ -713,7 +713,7 @@ public CustomEnum getEnumProperty() { try ( SearchSession session = mapping.createSession() ) { entity.enumProperty = CustomEnum.VALUE2; - session.indexingPlan().update( entity, new String[] { "enumProperty" } ); + session.indexingPlan().addOrUpdate( entity, new String[] { "enumProperty" } ); backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java index b7c3168f1ad..85ef8723912 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/SearchIndexingPlan.java @@ -29,7 +29,7 @@ public interface SearchIndexingPlan { *

* Note: depending on the backend, this may lead to errors or duplicate entries in the index * if the entity was actually already present in the index before this call. - * When in doubt, you should rather use {@link #update(Object, Object)} or {@link #update(Object)}. + * When in doubt, you should rather use {@link #addOrUpdate(Object, Object)} or {@link #addOrUpdate(Object)}. * * @param providedId A value to extract the document ID from. * Generally the expected value is the entity ID, but a different value may be expected depending on the mapping. @@ -41,11 +41,11 @@ public interface SearchIndexingPlan { /** * Update an entity in the index, or add it if it's absent from the index. *

- * Shorthand for {@code update(null, entity)}; see {@link #update(Object, Object)}. + * Shorthand for {@code update(null, entity)}; see {@link #addOrUpdate(Object, Object)}. * * @param entity The entity to update in the index. */ - void update(Object entity); + void addOrUpdate(Object entity); /** * Update an entity in the index, or add it if it's absent from the index. @@ -55,7 +55,7 @@ public interface SearchIndexingPlan { * If {@code null}, Hibernate Search will attempt to extract the ID from the entity. * @param entity The entity to update in the index. */ - void update(Object providedId, Object entity); + void addOrUpdate(Object providedId, Object entity); /** * Update an entity in the index, or add it if it's absent from the index, @@ -64,13 +64,13 @@ public interface SearchIndexingPlan { *

* Assumes that the entity may already be present in the index. *

- * Shorthand for {@code update(null, entity, dirtyPaths)}; see {@link #update(Object, Object)}. + * Shorthand for {@code update(null, entity, dirtyPaths)}; see {@link #addOrUpdate(Object, Object)}. * * @param entity The entity to update in the index. * @param dirtyPaths The paths to consider dirty, formatted using the dot-notation * ("directEntityProperty.nestedPropery"). */ - void update(Object entity, String... dirtyPaths); + void addOrUpdate(Object entity, String... dirtyPaths); /** * Update an entity in the index, or add it if it's absent from the index, @@ -84,7 +84,7 @@ public interface SearchIndexingPlan { * @param dirtyPaths The paths to consider dirty, formatted using the dot-notation * ("directEntityProperty.nestedPropery"). */ - void update(Object providedId, Object entity, String... dirtyPaths); + void addOrUpdate(Object providedId, Object entity, String... dirtyPaths); /** * Delete an entity from the index. diff --git a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java index dcf1a4c23bd..56ecd45b1d2 100644 --- a/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java +++ b/mapper/javabean/src/main/java/org/hibernate/search/mapper/javabean/work/impl/SearchIndexingPlanImpl.java @@ -30,22 +30,22 @@ public void add(Object providedId, Object entity) { } @Override - public void update(Object entity) { + public void addOrUpdate(Object entity) { delegate.addOrUpdate( entity ); } @Override - public void update(Object providedId, Object entity) { + public void addOrUpdate(Object providedId, Object entity) { delegate.addOrUpdate( providedId, entity ); } @Override - public void update(Object entity, String... dirtyPaths) { + public void addOrUpdate(Object entity, String... dirtyPaths) { delegate.addOrUpdate( entity, dirtyPaths ); } @Override - public void update(Object providedId, Object entity, String... dirtyPaths) { + public void addOrUpdate(Object providedId, Object entity, String... dirtyPaths) { delegate.addOrUpdate( providedId, entity, dirtyPaths ); } @@ -59,10 +59,6 @@ public void delete(Object providedId, Object entity) { delegate.delete( providedId, entity ); } - public void prepare() { - delegate.process(); - } - public CompletableFuture execute() { return delegate.execute(); } From eb4baaefbb09cff85974a6c2a89b1ebf960778c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Tue, 17 Sep 2019 10:38:29 +0200 Subject: [PATCH 08/11] HSEARCH-3606 Rename IndexWorkPlan.prepare to process For consistency with APIs. --- .../impl/ElasticsearchIndexWorkPlan.java | 2 +- .../execution/impl/LuceneIndexWorkPlan.java | 2 +- .../work/execution/spi/IndexWorkPlan.java | 6 +- .../mapper/orm/envers/EnversIT.java | 8 +- ...bstractAutomaticIndexingAssociationIT.java | 40 ++++----- .../AbstractAutomaticIndexingBridgeIT.java | 40 ++++----- ...ctAutomaticIndexingMultiAssociationIT.java | 54 ++++++------ .../AutomaticIndexingBasicIT.java | 40 ++++----- ...gBridgeExplicitReindexingFunctionalIT.java | 8 +- .../AutomaticIndexingEmbeddableIT.java | 86 +++++++++---------- .../AutomaticIndexingEmbeddedBridgeIT.java | 4 +- ...dexingGenericPolymorphicAssociationIT.java | 4 +- .../AutomaticIndexingMappedSuperclassIT.java | 4 +- ...omaticIndexingNonEntityIdDocumentIdIT.java | 16 ++-- .../AutomaticIndexingOutOfTransactionIT.java | 4 +- .../AutomaticIndexingOverReindexingIT.java | 8 +- ...ngPolymorphicInverseSideAssociationIT.java | 8 +- ...gPolymorphicOriginalSideAssociationIT.java | 4 +- .../AutomaticIndexingSingleAssociationIT.java | 32 +++---- ...aticIndexingSynchronizationStrategyIT.java | 2 +- .../SearchSessionFlushIT.java | 4 +- .../HibernateOrmIntegrationBooterIT.java | 2 +- .../hibernateormapis/ToHibernateOrmIT.java | 2 +- .../mapper/orm/hibernateormapis/ToJpaIT.java | 2 +- .../orm/massindexing/MassIndexingBaseIT.java | 4 +- .../MassIndexingEmbeddedIdIT.java | 2 +- .../MassIndexingNonEntityIdDocumentIdIT.java | 2 +- .../model/AnnotationMappingAccessTypeIT.java | 2 +- .../BindingUsingPropertyMarkerAccessIT.java | 2 +- .../orm/model/BytecodeEnhancementIT.java | 4 +- .../mapper/orm/model/GenericPropertyIT.java | 2 +- .../ProgrammaticMappingAccessTypeIT.java | 2 +- .../orm/model/PropertyInheritanceIT.java | 2 +- .../mapper/orm/model/ProxyIT.java | 4 +- ...edInThroughNonContainingIndexedTypeIT.java | 6 +- ...UnnecessaryCollectionInitializationIT.java | 6 +- .../FlushClearEvictAllIT.java | 4 +- ...ingProcessorProxiedAssociatedEntityIT.java | 8 +- ...xingResolverProxiedAssociatedEntityIT.java | 8 +- .../MassIndexingPrimitiveIdIT.java | 2 +- .../mapper/orm/search/SearchQueryBaseIT.java | 2 +- .../orm/session/SearchIndexingPlanBaseIT.java | 16 ++-- ...chIndexingPlanNonEntityIdDocumentIdIT.java | 2 +- ...rchIndexingPlanPersistBatchIndexingIT.java | 8 +- .../orm/smoke/AnnotationMappingSmokeIT.java | 6 +- .../orm/smoke/ProgrammaticMappingSmokeIT.java | 6 +- .../AbstractFieldContainerExtractorIT.java | 4 +- .../definition/DocumentIdDefaultBridgeIT.java | 2 +- .../pojo/mapping/definition/FieldBaseIT.java | 2 +- .../FieldContainerExtractorBaseIT.java | 2 +- .../definition/FieldDefaultBridgeIT.java | 2 +- .../mapping/definition/FullTextFieldIT.java | 2 +- .../definition/IndexedEmbeddedBaseIT.java | 2 +- .../mapping/definition/KeywordFieldIT.java | 2 +- .../definition/PropertyBridgeBaseIT.java | 16 ++-- .../mapping/definition/TypeBridgeBaseIT.java | 16 ++-- .../mapper/pojo/model/GenericPropertyIT.java | 2 +- .../pojo/model/ImplementedInterfaceIT.java | 2 +- .../pojo/model/PropertyInheritanceIT.java | 2 +- .../IndexNullAsOnNumericContainerIT.java | 2 +- .../mapper/pojo/providedid/ProvidedIdIT.java | 2 +- .../routing/AnnotationMappingRoutingIT.java | 4 +- .../routing/ProgrammaticMappingRoutingIT.java | 4 +- .../pojo/smoke/AnnotationMappingSmokeIT.java | 6 +- .../smoke/ProgrammaticMappingSmokeIT.java | 6 +- .../AnnotationMappingGeoPointBindingIT.java | 6 +- .../ProgrammaticMappingGeoPointBindingIT.java | 6 +- .../impl/PojoIndexedTypeIndexingPlan.java | 2 +- .../common/rule/BackendMock.java | 12 +-- .../common/rule/DocumentWorkCall.java | 10 ++- .../rule/VerifyingStubBackendBehavior.java | 8 +- .../stub/backend/StubBackendBehavior.java | 8 +- .../backend/index/impl/StubIndexManager.java | 6 +- .../backend/index/impl/StubIndexWorkPlan.java | 6 +- 74 files changed, 314 insertions(+), 312 deletions(-) diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java index 042cf6c12c7..d8e882ef73c 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java @@ -78,7 +78,7 @@ public void delete(DocumentReferenceProvider referenceProvider) { } @Override - public void prepare() { + public void process() { /* * Nothing to do: we can't execute anything more * without sending a request to the cluster. diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java index bec94358666..8d619f558ef 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java @@ -80,7 +80,7 @@ public void delete(DocumentReferenceProvider referenceProvider) { } @Override - public void prepare() { + public void process() { // Nothing to do: we only have to send the works to the orchestrator } diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java index 014e23ffe69..1db853aee75 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java @@ -46,12 +46,12 @@ public interface IndexWorkPlan { void delete(DocumentReferenceProvider documentReferenceProvider); /** - * Prepare the work plan execution, i.e. execute as much as possible without writing to the index. + * Process works before their execution, i.e. do as much as possible without writing to the index. *

* Calling this method is optional: the {@link #execute()} method - * will perform the preparation if necessary. + * will perform the processing if necessary. */ - void prepare(); + void process(); /** * Start executing all the works in this plan, and clear the plan so that it can be re-used. diff --git a/integrationtest/mapper/orm-envers/src/test/java/org/hibernate/search/integrationtest/mapper/orm/envers/EnversIT.java b/integrationtest/mapper/orm-envers/src/test/java/org/hibernate/search/integrationtest/mapper/orm/envers/EnversIT.java index 0e1696158f4..4f23d4e9be1 100644 --- a/integrationtest/mapper/orm-envers/src/test/java/org/hibernate/search/integrationtest/mapper/orm/envers/EnversIT.java +++ b/integrationtest/mapper/orm-envers/src/test/java/org/hibernate/search/integrationtest/mapper/orm/envers/EnversIT.java @@ -93,7 +93,7 @@ public void test() { .field( "text", "initial" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); checkEnversAuditedCorrectly( IndexedEntity.class, @@ -114,7 +114,7 @@ public void test() { .field( "text", "initial" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); checkEnversAuditedCorrectly( IndexedEntity.class, @@ -135,7 +135,7 @@ public void test() { .field( "text", "updated" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); checkEnversAuditedCorrectly( IndexedEntity.class, @@ -151,7 +151,7 @@ public void test() { backendMock.expectWorks( IndexedEntity.INDEX ) .delete( "1" ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); checkEnversAuditedCorrectly( IndexedEntity.class, diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingAssociationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingAssociationIT.java index 45138b8d20b..c81569f35b6 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingAssociationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingAssociationIT.java @@ -189,7 +189,7 @@ public void indirectValueUpdate_indexedEmbedded_singleValue_indexed() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -206,7 +206,7 @@ public void indirectValueUpdate_indexedEmbedded_singleValue_indexed() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -252,7 +252,7 @@ public void indirectValueUpdate_indexedEmbedded_singleValue_nonIndexed() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -307,7 +307,7 @@ public void indirectValueUpdate_indexedEmbedded_elementCollectionValue_indexed() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -328,7 +328,7 @@ public void indirectValueUpdate_indexedEmbedded_elementCollectionValue_indexed() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -349,7 +349,7 @@ public void indirectValueUpdate_indexedEmbedded_elementCollectionValue_indexed() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -413,7 +413,7 @@ public void indirectValueReplace_indexedEmbedded_elementCollectionValue_indexed( ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -436,7 +436,7 @@ public void indirectValueReplace_indexedEmbedded_elementCollectionValue_indexed( ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -484,7 +484,7 @@ public void indirectValueUpdate_indexedEmbedded_elementCollectionValue_nonIndexe ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -542,7 +542,7 @@ public void indirectValueReplace_indexedEmbedded_elementCollectionValue_nonIndex ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -562,7 +562,7 @@ public void indirectValueReplace_indexedEmbedded_elementCollectionValue_nonIndex ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -599,7 +599,7 @@ public void indirectValueUpdate_indexedEmbedded_containedDerivedValue_indexed() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -620,7 +620,7 @@ public void indirectValueUpdate_indexedEmbedded_containedDerivedValue_indexed() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -641,7 +641,7 @@ public void indirectValueUpdate_indexedEmbedded_containedDerivedValue_indexed() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -679,7 +679,7 @@ public void indirectValueUpdate_usedInCrossEntityDerivedProperty_crossEntityDeri ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -697,7 +697,7 @@ public void indirectValueUpdate_usedInCrossEntityDerivedProperty_crossEntityDeri ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -715,7 +715,7 @@ public void indirectValueUpdate_usedInCrossEntityDerivedProperty_crossEntityDeri ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -747,7 +747,7 @@ public void indirectValueUpdate_indexedEmbeddedNoReindexOnUpdate_singleValue_ind ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -798,7 +798,7 @@ public void indirectValueUpdate_indexedEmbeddedNoReindexOnUpdate_elementCollecti ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -861,7 +861,7 @@ public void indirectValueReplace_indexedEmbeddedNoReindexOnUpdate_elementCollect ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingBridgeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingBridgeIT.java index 6e3f8183716..feb21362ed2 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingBridgeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingBridgeIT.java @@ -66,7 +66,7 @@ public void directPersistUpdateDelete() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -83,7 +83,7 @@ public void directPersistUpdateDelete() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -94,7 +94,7 @@ public void directPersistUpdateDelete() { backendMock.expectWorks( IndexedEntity.INDEX ) .delete( "1" ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -130,7 +130,7 @@ public void indirectAssociationUpdate_typeBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -155,7 +155,7 @@ public void indirectAssociationUpdate_typeBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -181,7 +181,7 @@ public void indirectAssociationUpdate_typeBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -216,7 +216,7 @@ public void indirectAssociationUpdate_typeBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -266,7 +266,7 @@ public void indirectValueUpdate_typeBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -284,7 +284,7 @@ public void indirectValueUpdate_typeBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -335,7 +335,7 @@ public void indirectAssociationUpdate_singleValuedPropertyBridge() { .field( "includedInSingleValuedPropertyBridge", null ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -357,7 +357,7 @@ public void indirectAssociationUpdate_singleValuedPropertyBridge() { .field( "includedInSingleValuedPropertyBridge", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -380,7 +380,7 @@ public void indirectAssociationUpdate_singleValuedPropertyBridge() { .field( "includedInSingleValuedPropertyBridge", "updatedValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -412,7 +412,7 @@ public void indirectAssociationUpdate_singleValuedPropertyBridge() { .field( "includedInSingleValuedPropertyBridge", null ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -460,7 +460,7 @@ public void indirectValueUpdate_singleValuedPropertyBridge() { .field( "includedInSingleValuedPropertyBridge", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -475,7 +475,7 @@ public void indirectValueUpdate_singleValuedPropertyBridge() { .field( "includedInSingleValuedPropertyBridge", "updatedValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -515,7 +515,7 @@ public void directAssociationUpdate_multiValuedPropertyBridge() { .field( "includedInMultiValuedPropertyBridge", null ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -543,7 +543,7 @@ public void directAssociationUpdate_multiValuedPropertyBridge() { .field( "includedInMultiValuedPropertyBridge", "value1" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -571,7 +571,7 @@ public void directAssociationUpdate_multiValuedPropertyBridge() { .field( "includedInMultiValuedPropertyBridge", "value1 value2" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -603,7 +603,7 @@ public void directAssociationUpdate_multiValuedPropertyBridge() { .field( "includedInMultiValuedPropertyBridge", "updatedValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -621,7 +621,7 @@ public void directAssociationUpdate_multiValuedPropertyBridge() { .field( "includedInMultiValuedPropertyBridge", null ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingMultiAssociationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingMultiAssociationIT.java index 34683ec8a07..4c47fe9067d 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingMultiAssociationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AbstractAutomaticIndexingMultiAssociationIT.java @@ -51,7 +51,7 @@ public void directAssociationUpdate_indexedEmbedded() { backendMock.expectWorks( primitives.getIndexName() ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -73,7 +73,7 @@ public void directAssociationUpdate_indexedEmbedded() { .field( "indexedField", VALUE_1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -98,7 +98,7 @@ public void directAssociationUpdate_indexedEmbedded() { .field( "indexedField", VALUE_2 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -117,7 +117,7 @@ public void directAssociationUpdate_indexedEmbedded() { .field( "indexedField", VALUE_2 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -150,7 +150,7 @@ public void directAssociationReplace_indexedEmbedded() { .field( "indexedField", VALUE_1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -178,7 +178,7 @@ public void directAssociationReplace_indexedEmbedded() { .field( "indexedField", VALUE_2 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -198,7 +198,7 @@ public void directAssociationUpdate_nonIndexedEmbedded() { backendMock.expectWorks( primitives.getIndexName() ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -273,7 +273,7 @@ public void directAssociationReplace_nonIndexedEmbedded() { backendMock.expectWorks( primitives.getIndexName() ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -295,7 +295,7 @@ public void directAssociationReplace_nonIndexedEmbedded() { // TODO HSEARCH-3204: remove the statement below to not expect any work backendMock.expectWorks( primitives.getIndexName() ) .update( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -315,7 +315,7 @@ public void directAssociationUpdate_indexedEmbeddedNoReindexOnUpdate() { backendMock.expectWorks( primitives.getIndexName() ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -394,7 +394,7 @@ public void directAssociationReplace_indexedEmbeddedNoReindexOnUpdate() { .field( "indexedField", VALUE_1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -423,7 +423,7 @@ public void directAssociationReplace_indexedEmbeddedNoReindexOnUpdate() { .field( "indexedField", VALUE_2 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -449,7 +449,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -473,7 +473,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -500,7 +500,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -537,7 +537,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -577,7 +577,7 @@ public void indirectAssociationReplace_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -607,7 +607,7 @@ public void indirectAssociationReplace_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -634,7 +634,7 @@ public void indirectAssociationUpdate_nonIndexedEmbedded() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -715,7 +715,7 @@ public void indirectAssociationReplace_nonIndexedEmbedded() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -739,7 +739,7 @@ public void indirectAssociationReplace_nonIndexedEmbedded() { .update( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -767,7 +767,7 @@ public void indirectAssociationUpdate_indexedEmbeddedNoReindexOnUpdate() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -853,7 +853,7 @@ public void indirectAssociationReplace_indexedEmbeddedNoReindexOnUpdate() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -884,7 +884,7 @@ public void indirectAssociationReplace_indexedEmbeddedNoReindexOnUpdate() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -926,7 +926,7 @@ public void indirectValueUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -943,7 +943,7 @@ public void indirectValueUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -984,7 +984,7 @@ public void indirectValueUpdate_indexedEmbeddedNoReindexOnUpdate() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java index 4fa9aa6cb7d..56a7937fa40 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBasicIT.java @@ -84,7 +84,7 @@ public void directPersistUpdateDelete() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -101,7 +101,7 @@ public void directPersistUpdateDelete() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -112,7 +112,7 @@ public void directPersistUpdateDelete() { backendMock.expectWorks( IndexedEntity.INDEX ) .delete( "1" ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -137,7 +137,7 @@ public void rollback_discardPreparedWorks() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .prepared(); + .processed(); session.flush(); backendMock.verifyExpectationsMet(); @@ -176,7 +176,7 @@ public void directValueUpdate_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -195,7 +195,7 @@ public void directValueUpdate_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -213,7 +213,7 @@ public void directValueUpdate_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -244,7 +244,7 @@ public void directValueReplace_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -264,7 +264,7 @@ public void directValueReplace_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -288,7 +288,7 @@ public void directValueUpdate_nonIndexedField() { .field( "indexedField", entity1.getIndexedField() ) .field( "noReindexOnUpdateField", null ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -328,7 +328,7 @@ public void directValueUpdate_nonIndexedElementCollectionField() { .field( "indexedField", null ) .field( "noReindexOnUpdateField", null ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -373,7 +373,7 @@ public void directValueReplace_nonIndexedElementCollectionField() { .field( "indexedField", null ) .field( "noReindexOnUpdateField", null ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -389,7 +389,7 @@ public void directValueReplace_nonIndexedElementCollectionField() { .field( "indexedField", null ) .field( "noReindexOnUpdateField", null ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -413,7 +413,7 @@ public void directValueUpdate_noReindexOnUpdateField() { .field( "indexedField", null ) .field( "noReindexOnUpdateField", entity1.getNoReindexOnUpdateField() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -454,7 +454,7 @@ public void directValueUpdate_noReindexOnUpdateElementCollectionField() { .field( "noReindexOnUpdateField", null ) .field( "noReindexOnUpdateElementCollectionField", "firstValue" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -500,7 +500,7 @@ public void directValueReplace_noReindexOnUpdateElementCollectionField() { .field( "noReindexOnUpdateField", null ) .field( "noReindexOnUpdateElementCollectionField", "firstValue" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -520,7 +520,7 @@ public void directValueReplace_noReindexOnUpdateElementCollectionField() { "newFirstValue", "newSecondValue" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -540,7 +540,7 @@ public void sessionClear() { backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", expectedValue( "number1" ) ) .add( "2", expectedValue( "number2" ) ) - .prepared(); + .processed(); session.flush(); @@ -557,7 +557,7 @@ public void sessionClear() { backendMock.expectWorks( IndexedEntity.INDEX ) .add( "3", expectedValue( "number3" ) ) .add( "4", expectedValue( "number4" ) ) - .prepared(); + .processed(); backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", expectedValue( "number1" ) ) @@ -580,7 +580,7 @@ public void sessionClear() { backendMock.expectWorks( IndexedEntity.INDEX ) .add( "5", expectedValue( "number5" ) ) .add( "6", expectedValue( "number6" ) ) - .prepared(); + .processed(); session.flush(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBridgeExplicitReindexingFunctionalIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBridgeExplicitReindexingFunctionalIT.java index 3d360b20299..ae8eea1c7a0 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBridgeExplicitReindexingFunctionalIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingBridgeExplicitReindexingFunctionalIT.java @@ -95,7 +95,7 @@ public void test() { .add( "1", b -> b .objectField( "typeBridge", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -113,7 +113,7 @@ public void test() { .field( "includedInTypeBridge", "value1" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -136,7 +136,7 @@ public void test() { .field( "includedInTypeBridge", "value1" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -154,7 +154,7 @@ public void test() { .field( "includedInTypeBridge", "value1", "value2" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddableIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddableIT.java index 1f280e4016a..ec89ef5c28c 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddableIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddableIT.java @@ -116,7 +116,7 @@ public void indirectEmbeddedUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -144,7 +144,7 @@ public void indirectEmbeddedUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -173,7 +173,7 @@ public void indirectEmbeddedUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -190,7 +190,7 @@ public void indirectEmbeddedUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -228,7 +228,7 @@ public void indirectAssociationUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -257,7 +257,7 @@ public void indirectAssociationUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -275,7 +275,7 @@ public void indirectAssociationUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -313,7 +313,7 @@ public void indirectValueUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -334,7 +334,7 @@ public void indirectValueUpdate_embeddedSingle() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -370,7 +370,7 @@ public void indirectEmbeddedUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -398,7 +398,7 @@ public void indirectEmbeddedUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -427,7 +427,7 @@ public void indirectEmbeddedUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -444,7 +444,7 @@ public void indirectEmbeddedUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -471,7 +471,7 @@ public void indirectAssociationUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -499,7 +499,7 @@ public void indirectAssociationUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -530,7 +530,7 @@ public void indirectAssociationUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -553,7 +553,7 @@ public void indirectAssociationUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -591,7 +591,7 @@ public void indirectValueUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -612,7 +612,7 @@ public void indirectValueUpdate_embeddedList() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -648,7 +648,7 @@ public void indirectEmbeddedUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -677,7 +677,7 @@ public void indirectEmbeddedUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -711,7 +711,7 @@ public void indirectEmbeddedUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -735,7 +735,7 @@ public void indirectEmbeddedUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -770,7 +770,7 @@ public void indirectAssociationUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -799,7 +799,7 @@ public void indirectAssociationUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -830,7 +830,7 @@ public void indirectAssociationUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -850,7 +850,7 @@ public void indirectAssociationUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -889,7 +889,7 @@ public void indirectValueUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -911,7 +911,7 @@ public void indirectValueUpdate_elementCollection() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -957,7 +957,7 @@ public void indirectAssociationUpdate_inverseSideEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -986,7 +986,7 @@ public void indirectAssociationUpdate_inverseSideEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1005,7 +1005,7 @@ public void indirectAssociationUpdate_inverseSideEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -1042,7 +1042,7 @@ public void indirectValueUpdate_inverseSideEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1062,7 +1062,7 @@ public void indirectValueUpdate_inverseSideEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1098,7 +1098,7 @@ public void indirectEmbeddedUpdate_bidirectionalEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1126,7 +1126,7 @@ public void indirectEmbeddedUpdate_bidirectionalEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1156,7 +1156,7 @@ public void indirectEmbeddedUpdate_bidirectionalEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1174,7 +1174,7 @@ public void indirectEmbeddedUpdate_bidirectionalEmbedded() { .objectField( "containedEmbeddedList", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -1212,7 +1212,7 @@ public void indirectAssociationUpdate_bidirectionalEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1242,7 +1242,7 @@ public void indirectAssociationUpdate_bidirectionalEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1261,7 +1261,7 @@ public void indirectAssociationUpdate_bidirectionalEmbedded() { .objectField( "containedBidirectionalEmbedded", b3 -> { } ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -1299,7 +1299,7 @@ public void indirectValueUpdate_bidirectionalEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -1320,7 +1320,7 @@ public void indirectValueUpdate_bidirectionalEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddedBridgeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddedBridgeIT.java index 1ddf4c27a09..a0009409842 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddedBridgeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingEmbeddedBridgeIT.java @@ -113,7 +113,7 @@ public void indirectValueUpdate_embeddedBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -130,7 +130,7 @@ public void indirectValueUpdate_embeddedBridge() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingGenericPolymorphicAssociationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingGenericPolymorphicAssociationIT.java index 30dbd6b8826..a45ed4ddee5 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingGenericPolymorphicAssociationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingGenericPolymorphicAssociationIT.java @@ -98,7 +98,7 @@ public void inversePathHandlesGenericTypes() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -116,7 +116,7 @@ public void inversePathHandlesGenericTypes() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingMappedSuperclassIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingMappedSuperclassIT.java index 69cf19bc7d9..6a625b4bf03 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingMappedSuperclassIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingMappedSuperclassIT.java @@ -87,7 +87,7 @@ public void inversePathHandlesMappedSuperclassDefinedAssociations() { .field( "includedInSingle", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -102,7 +102,7 @@ public void inversePathHandlesMappedSuperclassDefinedAssociations() { .field( "includedInSingle", "updatedValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingNonEntityIdDocumentIdIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingNonEntityIdDocumentIdIT.java index 6d97abf6fe7..a046bb3c227 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingNonEntityIdDocumentIdIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingNonEntityIdDocumentIdIT.java @@ -74,7 +74,7 @@ public void directPersistUpdateDelete() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -90,7 +90,7 @@ public void directPersistUpdateDelete() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -101,7 +101,7 @@ public void directPersistUpdateDelete() { backendMock.expectWorks( IndexedEntity.INDEX ) .delete( "42" ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -125,7 +125,7 @@ public void directValueUpdate_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -143,7 +143,7 @@ public void directValueUpdate_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -160,7 +160,7 @@ public void directValueUpdate_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -191,7 +191,7 @@ public void directValueReplace_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -210,7 +210,7 @@ public void directValueReplace_indexedElementCollectionField() { entity1.getIndexedElementCollectionField().get( 1 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java index 72b6a4ddeb6..8936a653c40 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOutOfTransactionIT.java @@ -54,7 +54,7 @@ public void add() { backendMock.expectWorks( IndexedEntity.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // Flush without a transaction acts as a commit. // So all the involved works here are supposed to be both prepared and executed, @@ -82,7 +82,7 @@ public void clear() { // only entity 2 is supposed to be flushed here backendMock.expectWorks( IndexedEntity.INDEX_NAME ) .update( "2", b -> b.field( "text", "number2" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); session.flush(); } ); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOverReindexingIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOverReindexingIT.java index b7a7eadaf17..10bcceca4e2 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOverReindexingIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingOverReindexingIT.java @@ -135,7 +135,7 @@ public void test() { .add( "1", b -> b .field( "property1FromBridge", "initialValue" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( Level2Entity.INDEX ) .add( "2", b -> b @@ -143,7 +143,7 @@ public void test() { .field( "property2", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -158,7 +158,7 @@ public void test() { .field( "property2", "updatedValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -172,7 +172,7 @@ public void test() { .update( "1", b -> b .field( "property1FromBridge", "updatedValue" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicInverseSideAssociationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicInverseSideAssociationIT.java index 9e92a9b5283..bcb45303ea2 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicInverseSideAssociationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicInverseSideAssociationIT.java @@ -112,7 +112,7 @@ public void inversePathIgnoresUnrelatedTypes() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -129,7 +129,7 @@ public void inversePathIgnoresUnrelatedTypes() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -197,7 +197,7 @@ public void inversePathDependsOnConcreteType() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -221,7 +221,7 @@ public void inversePathDependsOnConcreteType() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicOriginalSideAssociationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicOriginalSideAssociationIT.java index 92155cb9f17..350611d6289 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicOriginalSideAssociationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingPolymorphicOriginalSideAssociationIT.java @@ -131,7 +131,7 @@ public void inversePathDependsOnConcreteType() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -155,7 +155,7 @@ public void inversePathDependsOnConcreteType() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSingleAssociationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSingleAssociationIT.java index 6b68a9b1ebd..f81250d148c 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSingleAssociationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSingleAssociationIT.java @@ -55,7 +55,7 @@ public void directAssociationUpdate_indexedEmbedded() { backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -78,7 +78,7 @@ public void directAssociationUpdate_indexedEmbedded() { .field( "indexedField", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -102,7 +102,7 @@ public void directAssociationUpdate_indexedEmbedded() { .field( "indexedField", "updatedValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -115,7 +115,7 @@ public void directAssociationUpdate_indexedEmbedded() { backendMock.expectWorks( IndexedEntity.INDEX ) .update( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -136,7 +136,7 @@ public void directAssociationUpdate_nonIndexedEmbedded() { backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -203,7 +203,7 @@ public void directAssociationUpdate_indexedEmbeddedNoReindexOnUpdate() { backendMock.expectWorks( IndexedEntity.INDEX ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -278,7 +278,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -303,7 +303,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -329,7 +329,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -361,7 +361,7 @@ public void indirectAssociationUpdate_indexedEmbedded() { .update( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -390,7 +390,7 @@ public void indirectAssociationUpdate_nonIndexedEmbedded() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -466,7 +466,7 @@ public void indirectAssociationUpdate_indexedEmbeddedNoReindexOnUpdate() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -546,7 +546,7 @@ public void indirectAssociationUpdate_usedInCrossEntityDerivedProperty() { .add( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -573,7 +573,7 @@ public void indirectAssociationUpdate_usedInCrossEntityDerivedProperty() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -601,7 +601,7 @@ public void indirectAssociationUpdate_usedInCrossEntityDerivedProperty() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -634,7 +634,7 @@ public void indirectAssociationUpdate_usedInCrossEntityDerivedProperty() { .update( "1", b -> b .objectField( "child", b2 -> { } ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSynchronizationStrategyIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSynchronizationStrategyIT.java index 132d422cff6..185e22923ff 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSynchronizationStrategyIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/AutomaticIndexingSynchronizationStrategyIT.java @@ -233,7 +233,7 @@ private CompletableFuture runTransactionInDifferentThread(SessionFactory sess .add( "1", b -> b .field( "indexedField", entity1.getIndexedField() ) ) - .preparedThenExecuted( workFuture ); + .processedThenExecuted( workFuture ); justBeforeTransactionCommitFuture.complete( null ); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java index b65c1b9ffd6..a8d96dac053 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/automaticindexing/SearchSessionFlushIT.java @@ -58,7 +58,7 @@ public void onExplicitFlush() { backendMock.expectWorks( IndexedEntity.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) - .prepared(); + .processed(); session.flush(); backendMock.verifyExpectationsMet(); @@ -79,7 +79,7 @@ public void onAutoFlush() { backendMock.expectWorks( IndexedEntity.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) - .prepared(); + .processed(); // An auto flush is performed on query invocation List resultList = session.createQuery( "select i from IndexedEntity i" ) diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/bootstrap/HibernateOrmIntegrationBooterIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/bootstrap/HibernateOrmIntegrationBooterIT.java index 290b9605fef..52f8e869736 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/bootstrap/HibernateOrmIntegrationBooterIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/bootstrap/HibernateOrmIntegrationBooterIT.java @@ -97,7 +97,7 @@ public void configure(HibernateOrmMappingConfigurationContext context) { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); // If the entity was indexed, it means Hibernate Search booted correctly backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToHibernateOrmIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToHibernateOrmIT.java index c0e14a6acb7..3caa6d09cff 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToHibernateOrmIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToHibernateOrmIT.java @@ -74,7 +74,7 @@ public void setup() { .add( "2", b -> b .field( "text", entity2.getText() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToJpaIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToJpaIT.java index 68c9cde80d6..2532c258a93 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToJpaIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/hibernateormapis/ToJpaIT.java @@ -78,7 +78,7 @@ public void setup() { .add( "2", b -> b .field( "text", entity2.getText() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingBaseIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingBaseIT.java index ab53311d7eb..f0202c87f68 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingBaseIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingBaseIT.java @@ -90,7 +90,7 @@ public void defaultMassIndexerStartAndWait() throws Exception { .field( "title", TITLE_3 ) .field( "author", AUTHOR_3 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // purgeAtStart, optimizeAfterPurge and purgeAtStart flags are active by default, // so we expect 1 purge, 2 optimize and 1 flush calls in this order: @@ -134,7 +134,7 @@ public void fromMappingWithoutSession() throws Exception { .field( "title", TITLE_3 ) .field( "author", AUTHOR_3 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // purgeAtStart, optimizeAfterPurge and purgeAtStart flags are active by default, // so we expect 1 purge, 2 optimize and 1 flush calls in this order: diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingEmbeddedIdIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingEmbeddedIdIT.java index 73c901b6420..8248033fdb8 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingEmbeddedIdIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingEmbeddedIdIT.java @@ -97,7 +97,7 @@ public void defaultMassIndexerStartAndWait() { .field( "title", TITLE_3 ) .field( "author", AUTHOR_3 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // purgeAtStart, optimizeAfterPurge and purgeAtStart flags are active by default, // so we expect 1 purge, 2 optimize and 1 flush calls in this order: diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingNonEntityIdDocumentIdIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingNonEntityIdDocumentIdIT.java index fbe64b934ed..545a56d744a 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingNonEntityIdDocumentIdIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/massindexing/MassIndexingNonEntityIdDocumentIdIT.java @@ -89,7 +89,7 @@ public void defaultMassIndexerStartAndWait() { .field( "title", TITLE_3 ) .field( "author", AUTHOR_3 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // purgeAtStart, optimizeAfterPurge and purgeAtStart flags are active by default, // so we expect 1 purge, 2 optimize and 1 flush calls in this order: diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/AnnotationMappingAccessTypeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/AnnotationMappingAccessTypeIT.java index 3bc52a87220..cd0b8475964 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/AnnotationMappingAccessTypeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/AnnotationMappingAccessTypeIT.java @@ -125,7 +125,7 @@ public void index() { .field( "field", nonManaged.getField() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BindingUsingPropertyMarkerAccessIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BindingUsingPropertyMarkerAccessIT.java index e33628cf0dc..0523e3313c1 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BindingUsingPropertyMarkerAccessIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BindingUsingPropertyMarkerAccessIT.java @@ -97,7 +97,7 @@ public void indexing() { .add( "1", b -> b .field( "location", GeoPoint.of( 42.0, 42.0 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BytecodeEnhancementIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BytecodeEnhancementIT.java index d1e0802ac26..92bff9c1c73 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BytecodeEnhancementIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/BytecodeEnhancementIT.java @@ -164,7 +164,7 @@ public void test() { .field( "primitiveDouble", 42.0d ) .field( "transientText", "initialValue" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); AtomicReference entityFromTransaction = new AtomicReference<>(); @@ -212,7 +212,7 @@ public void test() { .field( "primitiveDouble", 42.0d ) .field( "transientText", null ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); assertPropertiesAreNotLoaded( entityFromTransaction.get(), "notIndexedText" ); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/GenericPropertyIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/GenericPropertyIT.java index 4c567c15786..62c31490687 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/GenericPropertyIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/GenericPropertyIT.java @@ -88,7 +88,7 @@ public void index() { .field( "arrayContent", genericEntity.getArrayContent()[1] ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProgrammaticMappingAccessTypeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProgrammaticMappingAccessTypeIT.java index 5edda32538e..943ee344c9b 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProgrammaticMappingAccessTypeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProgrammaticMappingAccessTypeIT.java @@ -127,7 +127,7 @@ public void index() { .field( "field", nonManaged.getField() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/PropertyInheritanceIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/PropertyInheritanceIT.java index defa9177fe7..3072fe5cb9d 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/PropertyInheritanceIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/PropertyInheritanceIT.java @@ -90,7 +90,7 @@ public void index() { .field( "childDeclaredProperty", entity2.getChildDeclaredProperty() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProxyIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProxyIT.java index 12e38fbedd9..adeb32eea88 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProxyIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/model/ProxyIT.java @@ -71,7 +71,7 @@ public void proxyAccess() { .add( "1", b -> b .field( "text", entity1.text ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); OrmUtils.withinTransaction( sessionFactory, session -> { @@ -91,7 +91,7 @@ public void proxyAccess() { .update( "1", b -> b .field( "text", proxy.getText() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInThroughNonContainingIndexedTypeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInThroughNonContainingIndexedTypeIT.java index 71dd62c742a..14e5b1bbd58 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInThroughNonContainingIndexedTypeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInThroughNonContainingIndexedTypeIT.java @@ -83,13 +83,13 @@ public void test() { .add( "1", b -> b .field( "indexedInContaining", 0 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( Contained.INDEX ) .add( "2", b -> b .field( "indexedInContained", 0 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -107,7 +107,7 @@ public void test() { .update( "1", b -> b .field( "indexedInContaining", 42 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // No work is expected on the index for the Contained entity } ); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInTriggerUnnecessaryCollectionInitializationIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInTriggerUnnecessaryCollectionInitializationIT.java index 299512ef16d..96b496d8c1a 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInTriggerUnnecessaryCollectionInitializationIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ContainedInTriggerUnnecessaryCollectionInitializationIT.java @@ -79,7 +79,7 @@ public void test() { .field( "someField", "initialValue" ) .field( "someInteger", 42 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( Post.INDEX ) .add( "2", b -> b @@ -87,7 +87,7 @@ public void test() { .field( "someInteger", 42 ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -111,7 +111,7 @@ public void test() { .field( "someField", "updatedValue" ) .field( "someInteger", 42 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); // Do not expect any work on the Post index } ); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/FlushClearEvictAllIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/FlushClearEvictAllIT.java index 625d883552f..c337ae4097f 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/FlushClearEvictAllIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/FlushClearEvictAllIT.java @@ -70,7 +70,7 @@ public void test() { backendMock.expectWorks( Post.NAME ) .add( post.getId().toString(), b -> b.field( "name", "This is a post" ) ) - .prepared(); + .processed(); entityManager.flush(); backendMock.verifyExpectationsMet(); @@ -94,7 +94,7 @@ public void test() { backendMock.expectWorks( Comment.NAME ) .add( "2", b -> b.field( "name", "This is a comment" ) ) - .prepared(); + .processed(); entityManager.flush(); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/IndexingProcessorProxiedAssociatedEntityIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/IndexingProcessorProxiedAssociatedEntityIT.java index 75146de78de..7e0770a8187 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/IndexingProcessorProxiedAssociatedEntityIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/IndexingProcessorProxiedAssociatedEntityIT.java @@ -80,7 +80,7 @@ public void toOne() { .field( "text", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -99,7 +99,7 @@ public void toOne() { .field( "text", "initialValue" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -123,7 +123,7 @@ public void toMany() { .field( "text", "initialValue1" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -147,7 +147,7 @@ public void toMany() { .field( "text", "initialValue1" ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ReindexingResolverProxiedAssociatedEntityIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ReindexingResolverProxiedAssociatedEntityIT.java index bb5c2534209..db78c93ca32 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ReindexingResolverProxiedAssociatedEntityIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/automaticindexing/ReindexingResolverProxiedAssociatedEntityIT.java @@ -87,7 +87,7 @@ public void toOne() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -107,7 +107,7 @@ public void toOne() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } @@ -141,7 +141,7 @@ public void toMany() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); @@ -166,7 +166,7 @@ public void toMany() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/massindexing/MassIndexingPrimitiveIdIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/massindexing/MassIndexingPrimitiveIdIT.java index fb5e7325abf..0e683b426ae 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/massindexing/MassIndexingPrimitiveIdIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/nonregression/massindexing/MassIndexingPrimitiveIdIT.java @@ -68,7 +68,7 @@ public void entityWithPrimitiveId() { .add( "1", b -> { } ) .add( "2", b -> { } ) .add( "3", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); // purgeAtStart, optimizeAfterPurge and purgeAtStart flags are active by default, // so we expect 1 purge, 2 optimize and 1 flush calls in this order: diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/search/SearchQueryBaseIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/search/SearchQueryBaseIT.java index 092057cda19..e48467c04d3 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/search/SearchQueryBaseIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/search/SearchQueryBaseIT.java @@ -390,7 +390,7 @@ private void initData() { .field( "title", TITLE_AVENUE_OF_MYSTERIES ) .field( "author", AUTHOR_AVENUE_OF_MYSTERIES ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java index 3301d2ec3cb..32f9f39406d 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanBaseIT.java @@ -71,7 +71,7 @@ public void simple() { .update( "2", b -> b.field( "text", "number2" ) ) .delete( "3" ) .delete( "42" ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backend1Mock.verifyExpectationsMet(); } @@ -147,7 +147,7 @@ public void mergedEvents() { .delete( "7" ) // purge then addOrUpdate => update .update( "8", b -> b.field( "text", "number8" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backend1Mock.verifyExpectationsMet(); } @@ -183,7 +183,7 @@ public void earlyProcess() { backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) .add( "2", b -> b.field( "text", "number2" ) ) - .prepared(); + .processed(); session.flush(); @@ -224,7 +224,7 @@ public void earlyExecute() { backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) .add( "2", b -> b.field( "text", "number2" ) ) - .prepared(); + .processed(); session.flush(); backend1Mock.verifyExpectationsMet(); @@ -259,7 +259,7 @@ public void mixedExplicitAndAutomaticIndexing() { backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .add( "1", b -> b.field( "text", "number1" ) ) .add( "2", b -> b.field( "text", "number2" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backend1Mock.verifyExpectationsMet(); @@ -280,7 +280,7 @@ public void mixedExplicitAndAutomaticIndexing() { .delete( "2" ) // Automatic on persist .add( "3", b -> b.field( "text", "number3" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backend1Mock.verifyExpectationsMet(); } @@ -306,10 +306,10 @@ public void multiIndexMultiBackend() { backend1Mock.expectWorks( IndexedEntity1.INDEX_NAME ) .update( "1", b -> b.field( "text", "number1" ) ) .delete( "3" ) - .preparedThenExecuted(); + .processedThenExecuted(); backend2Mock.expectWorks( IndexedEntity2.INDEX_NAME ) .update( "2", b -> b.field( "text", "number2" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backend1Mock.verifyExpectationsMet(); backend2Mock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java index ce2fa555dda..386db646ff6 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanNonEntityIdDocumentIdIT.java @@ -64,7 +64,7 @@ public void simple() { .update( "42", b -> b.field( "text", "number2" ) ) .delete( "43" ) .delete( "47" ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java index 2288e207627..b2f789b6013 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/session/SearchIndexingPlanPersistBatchIndexingIT.java @@ -63,7 +63,7 @@ public void processPerBatch() { for ( int i = 0; i < ENTITY_COUNT; i++ ) { if ( i > 0 && i % BATCH_SIZE == 0 ) { // For test only: register expectations regarding processing - expectAddWorks( firstIdOfThisBatch, i ).prepared(); + expectAddWorks( firstIdOfThisBatch, i ).processed(); firstIdOfThisBatch = i; session.flush(); @@ -80,7 +80,7 @@ public void processPerBatch() { // For test only: check on-commit processing/execution of works // If the last batch was smaller, there is still some preparing that will occur on commit - expectAddWorks( firstIdOfThisBatch, ENTITY_COUNT ).prepared(); + expectAddWorks( firstIdOfThisBatch, ENTITY_COUNT ).processed(); // Finally, the works will be executed on commit expectAddWorks( 0, ENTITY_COUNT ).executed(); } ); @@ -105,7 +105,7 @@ public void executePerBatch() { for ( int i = 0; i < ENTITY_COUNT; i++ ) { if ( i > 0 && i % BATCH_SIZE == 0 ) { - expectAddWorks( firstIdOfThisBatch, i ).prepared(); + expectAddWorks( firstIdOfThisBatch, i ).processed(); session.flush(); backendMock.verifyExpectationsMet(); @@ -127,7 +127,7 @@ public void executePerBatch() { // For test only: check on-commit processing/execution of works // If the last batch was smaller, there is still some indexing that will occur on commit - expectAddWorks( firstIdOfThisBatch, ENTITY_COUNT ).preparedThenExecuted(); + expectAddWorks( firstIdOfThisBatch, ENTITY_COUNT ).processedThenExecuted(); } ); // This is for test only and wouldn't be present in real code backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/AnnotationMappingSmokeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/AnnotationMappingSmokeIT.java index dee78726d4b..cf557a8a76d 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/AnnotationMappingSmokeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/AnnotationMappingSmokeIT.java @@ -252,13 +252,13 @@ public void index() { .field( "date", entity6.getLocalDate() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( OtherIndexedEntity.INDEX ) .add( "4", b -> b .field( "numeric", entity4.getNumeric() ) .field( "numericAsString", String.valueOf( entity4.getNumeric() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( YetAnotherIndexedEntity.INDEX ) .add( "5", b -> b .field( "myLocalDateField", entity5.getLocalDate() ) @@ -290,7 +290,7 @@ public void index() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/ProgrammaticMappingSmokeIT.java b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/ProgrammaticMappingSmokeIT.java index 5902562f634..96e4b724439 100644 --- a/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/ProgrammaticMappingSmokeIT.java +++ b/integrationtest/mapper/orm/src/test/java/org/hibernate/search/integrationtest/mapper/orm/smoke/ProgrammaticMappingSmokeIT.java @@ -250,13 +250,13 @@ public void index() { .field( "date", entity6.getLocalDate() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( OtherIndexedEntity.INDEX ) .add( "4", b -> b .field( "numeric", entity4.getNumeric() ) .field( "numericAsString", String.valueOf( entity4.getNumeric() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( YetAnotherIndexedEntity.INDEX ) .add( "5", b -> b .field( "myLocalDateField", entity5.getLocalDate() ) @@ -288,7 +288,7 @@ public void index() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } ); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java index b1e6d8b21fa..9cb25594037 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/AbstractFieldContainerExtractorIT.java @@ -313,7 +313,7 @@ final void doTest(TestModel testModel, Class indexedFieldType firstIndexedFieldValues, (Object[]) otherIndexedFieldValues ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -343,7 +343,7 @@ final void doTestExpectMissing(TestModel testModel, backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java index de934b1a7ad..299d8a824f9 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/DocumentIdDefaultBridgeIT.java @@ -110,7 +110,7 @@ public void indexing() { b -> { } ); } - expectationSetter.preparedThenExecuted(); + expectationSetter.processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java index a971c5c5c89..c24550780b4 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldBaseIT.java @@ -304,7 +304,7 @@ public Integer getId() { backendMock.expectWorks( INDEX_NAME ) // Stub backend is not supposed to use 'indexNullAs' option .add( "1", b -> b.field( "integer", null ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java index 174add296f7..31587a4346c 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldContainerExtractorBaseIT.java @@ -84,7 +84,7 @@ public MyContainer getText() { backendMock.expectWorks( INDEX_NAME ) // Stub backend is not supposed to use 'indexNullAs' option .add( "1", b -> b.field( "text", "value1", "value2" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java index f5aae17b26c..c71a8c5b5eb 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FieldDefaultBridgeIT.java @@ -134,7 +134,7 @@ public void indexing() { } ); ++id; } - expectationSetter.preparedThenExecuted(); + expectationSetter.processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java index 00aaf7c1f6d..cedacad8a58 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/FullTextFieldIT.java @@ -407,7 +407,7 @@ private void doTestValidMapping(Class entityType, .add( "1", b -> b .field( "myProperty", indexedFieldValue ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java index b033995ca1d..3198764476f 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/IndexedEmbeddedBaseIT.java @@ -732,7 +732,7 @@ private void doTestEmbeddedRuntime(SearchMapping mapping, backendMock.expectWorks( INDEX_NAME ) .add( "1", expectedDocumentContributor ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java index 26e85e68c50..c5557b5c66a 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/KeywordFieldIT.java @@ -426,7 +426,7 @@ private void doTestValidMapping(Class entityType, .add( "1", b -> b .field( "myProperty", indexedFieldValue ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java index da4f4124538..99aeff925be 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/PropertyBridgeBaseIT.java @@ -119,7 +119,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", entity.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -129,7 +129,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } @@ -200,7 +200,7 @@ public Contained getContained() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", contained.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -210,7 +210,7 @@ public Contained getContained() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", contained.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } @@ -378,7 +378,7 @@ public void explicitReindexing() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", "constant" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -388,7 +388,7 @@ public void explicitReindexing() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "constant" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } @@ -804,7 +804,7 @@ public List getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", "value1" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -814,7 +814,7 @@ public List getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "value1", "value2" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java index 2c072d9b8f1..d27838f5ca0 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/mapping/definition/TypeBridgeBaseIT.java @@ -113,7 +113,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", entity.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -123,7 +123,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } @@ -186,7 +186,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", entity.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -196,7 +196,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", entity.stringProperty ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } @@ -311,7 +311,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .add( "1", b -> b.field( "someField", "constant" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -322,7 +322,7 @@ public String getStringProperty() { backendMock.expectWorks( INDEX_NAME ) .update( "1", b -> b.field( "someField", "constant" ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } @@ -706,7 +706,7 @@ public CustomEnum getEnumProperty() { .field( "someField", entity.enumProperty.stringProperty ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); @@ -721,7 +721,7 @@ public CustomEnum getEnumProperty() { .field( "someField", entity.enumProperty.stringProperty ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java index 2ecea2de5e0..664c3cca63d 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/GenericPropertyIT.java @@ -80,7 +80,7 @@ public void index() { .field( "arrayContent", genericEntity.getArrayContent()[1] ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java index 8b4bf2226b3..5ea4a5f109f 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/ImplementedInterfaceIT.java @@ -50,7 +50,7 @@ public void index() { backendMock.expectWorks( IndexedPojo.class.getName() ).add( "1", b -> b .field( "text", "Using some other text here" ) - ).preparedThenExecuted(); + ).processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java index 4f5595d9468..aa59d77c5f4 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/model/PropertyInheritanceIT.java @@ -83,7 +83,7 @@ public void index() { .field( "childDeclaredProperty", entity2.getChildDeclaredProperty() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java index bae06f5ac3a..0c666b43463 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/nonregression/mapping/definition/IndexNullAsOnNumericContainerIT.java @@ -63,7 +63,7 @@ public void test() { // Check that null values are forwarded as null to the backend (not as a String) .field( "integerList", 1, null, 2 ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java index 8a88d373e18..5e59c418aa1 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/providedid/ProvidedIdIT.java @@ -56,7 +56,7 @@ class IndexedEntity { backendMock.expectWorks( INDEX_NAME ) .add( "42", b -> { } ) - .preparedThenExecuted(); + .processedThenExecuted(); } backendMock.verifyExpectationsMet(); diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java index 260719fe80b..7e1da5b6327 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/AnnotationMappingRoutingIT.java @@ -78,7 +78,7 @@ public void index() { .build() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } @@ -104,7 +104,7 @@ public void index_multiTenancy() { .build() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java index bbf4c6aca8a..6465a3c0ebb 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/routing/ProgrammaticMappingRoutingIT.java @@ -83,7 +83,7 @@ public void index() { .build() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } @@ -109,7 +109,7 @@ public void index_multiTenancy() { .build() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java index bc6c29d439c..0998445da8e 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/AnnotationMappingSmokeIT.java @@ -291,13 +291,13 @@ public void index() { .field( "date", entity6.getLocalDate() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( OtherIndexedEntity.INDEX ) .add( "4", b -> b .field( "numeric", entity4.getNumeric() ) .field( "numericAsString", String.valueOf( entity4.getNumeric() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( YetAnotherIndexedEntity.INDEX ) .add( "5", b -> b .field( "myLocalDateField", entity5.getLocalDate() ) @@ -358,7 +358,7 @@ public void index() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java index c0633940754..9d8971379e0 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/smoke/ProgrammaticMappingSmokeIT.java @@ -341,13 +341,13 @@ public void index() { .field( "date", entity6.getLocalDate() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( OtherIndexedEntity.INDEX ) .add( "4", b -> b .field( "numeric", entity4.getNumeric() ) .field( "numericAsString", String.valueOf( entity4.getNumeric() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( YetAnotherIndexedEntity.INDEX ) .add( "5", b -> b .field( "myLocalDateField", entity5.getLocalDate() ) @@ -408,7 +408,7 @@ public void index() { ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java index 4e4ba80dd05..54e168ae739 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/AnnotationMappingGeoPointBindingIT.java @@ -104,13 +104,13 @@ public double getLongitude() { entity1.getWorkLatitude(), entity1.getWorkLongitude() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( GeoPointOnCoordinatesPropertyEntity.INDEX ) .add( "2", b -> b .field( "coord", entity2.getCoord() ) .field( "location", entity2.getCoord() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( GeoPointOnCustomCoordinatesPropertyEntity.INDEX ) .add( "3", b -> b .field( "coord", GeoPoint.of( @@ -120,7 +120,7 @@ public double getLongitude() { entity3.getCoord().getLat(), entity3.getCoord().getLon() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java index fa7e8f0fcc6..8483c1b677b 100644 --- a/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java +++ b/integrationtest/mapper/pojo/src/test/java/org/hibernate/search/integrationtest/mapper/pojo/spatial/ProgrammaticMappingGeoPointBindingIT.java @@ -151,13 +151,13 @@ public double getLongitude() { entity1.getWorkLatitude(), entity1.getWorkLongitude() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( GeoPointOnCoordinatesPropertyEntity.INDEX ) .add( "2", b -> b .field( "coord", entity2.getCoord() ) .field( "location", entity2.getCoord() ) ) - .preparedThenExecuted(); + .processedThenExecuted(); backendMock.expectWorks( GeoPointOnCustomCoordinatesPropertyEntity.INDEX ) .add( "3", b -> b .field( "coord", GeoPoint.of( @@ -167,7 +167,7 @@ public double getLongitude() { entity3.getCoord().getLat(), entity3.getCoord().getLon() ) ) ) - .preparedThenExecuted(); + .processedThenExecuted(); } } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java index 7e3276b50c3..5bb4bcf642c 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java @@ -91,7 +91,7 @@ void resolveDirty(PojoReindexingCollector containingEntityCollector) { void process() { sendCommandsToDelegate(); - getDelegate().prepare(); + getDelegate().process(); } CompletableFuture execute() { diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/BackendMock.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/BackendMock.java index 65f9c159bc6..237c21b8447 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/BackendMock.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/BackendMock.java @@ -264,11 +264,11 @@ public DocumentWorkCallListContext work(StubDocumentWork work) { return this; } - public BackendMock preparedThenExecuted(CompletableFuture future) { + public BackendMock processedThenExecuted(CompletableFuture future) { log.debugf( "Expecting %d works to be prepared, then executed", works.size() ); // First expect all works to be prepared, then expect all works to be executed works.stream() - .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PREPARE, work ) ) + .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PROCESS, work ) ) .forEach( expectationConsumer ); works.stream() .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.EXECUTE, work, future ) ) @@ -276,8 +276,8 @@ public BackendMock preparedThenExecuted(CompletableFuture future) { return BackendMock.this; } - public BackendMock preparedThenExecuted() { - return preparedThenExecuted( CompletableFuture.completedFuture( null ) ); + public BackendMock processedThenExecuted() { + return processedThenExecuted( CompletableFuture.completedFuture( null ) ); } public BackendMock executed(CompletableFuture future) { @@ -292,10 +292,10 @@ public BackendMock executed() { return executed( CompletableFuture.completedFuture( null ) ); } - public BackendMock prepared() { + public BackendMock processed() { log.debugf( "Expecting %d works to be prepared", works.size() ); works.stream() - .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PREPARE, work ) ) + .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PROCESS, work ) ) .forEach( expectationConsumer ); return BackendMock.this; } diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/DocumentWorkCall.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/DocumentWorkCall.java index 4b2cbd214e9..021f4ad15dd 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/DocumentWorkCall.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/DocumentWorkCall.java @@ -18,17 +18,19 @@ class DocumentWorkCall extends Call { enum WorkPhase { /** - * The initial state for a work. + * Processing of the work, in preparation for its execution. */ - PREPARE, + PROCESS, /** - * Works that are prepared and never discarded, may be executed. + * Actual execution of the work. + * Happens after processing, unless the work was discarded. */ EXECUTE, /** - * Works that are prepared and not yet executed, may be discarded from executions. + * Discarding of the work. + * Happens after processing, if the mapper decides to cancel some changes. */ DISCARD } diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/VerifyingStubBackendBehavior.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/VerifyingStubBackendBehavior.java index 550cc10b5dd..daae8f3ffe4 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/VerifyingStubBackendBehavior.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/rule/VerifyingStubBackendBehavior.java @@ -105,10 +105,10 @@ public void pushSchema(String indexName, StubIndexSchemaNode rootSchemaNode) { } @Override - public void prepareDocumentWorks(String indexName, List works) { + public void processDocumentWorks(String indexName, List works) { CallQueue callQueue = getDocumentWorkCalls( indexName ); works.stream() - .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PREPARE, work ) ) + .map( work -> new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PROCESS, work ) ) .forEach( call -> callQueue.verify( call, DocumentWorkCall::verify, @@ -143,10 +143,10 @@ public CompletableFuture executeDocumentWorks(String indexName, List prepareAndExecuteDocumentWork(String indexName, StubDocumentWork work) { + public CompletableFuture processAndExecuteDocumentWork(String indexName, StubDocumentWork work) { CallQueue callQueue = getDocumentWorkCalls( indexName ); callQueue.verify( - new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PREPARE, work ), + new DocumentWorkCall( indexName, DocumentWorkCall.WorkPhase.PROCESS, work ), DocumentWorkCall::verify, noExpectationsBehavior( () -> CompletableFuture.completedFuture( null ) ) ); diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/StubBackendBehavior.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/StubBackendBehavior.java index 9fa5e0398ba..6200c98a61a 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/StubBackendBehavior.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/StubBackendBehavior.java @@ -37,7 +37,7 @@ public void pushSchema(String indexName, StubIndexSchemaNode rootSchemaNode) { } @Override - public void prepareDocumentWorks(String indexName, List works) { + public void processDocumentWorks(String indexName, List works) { throw new IllegalStateException( "The stub backend behavior was not set when works were prepared for index '" + indexName + "': " + works ); } @@ -55,7 +55,7 @@ public CompletableFuture executeDocumentWorks(String indexName, List prepareAndExecuteDocumentWork(String indexName, StubDocumentWork work) { + public CompletableFuture processAndExecuteDocumentWork(String indexName, StubDocumentWork work) { throw new IllegalStateException( "The stub backend behavior was not set when work were prepared and executed for index '" + indexName + "': " + work ); } @@ -102,13 +102,13 @@ protected StubBackendBehavior() { public abstract void pushSchema(String indexName, StubIndexSchemaNode rootSchemaNode); - public abstract void prepareDocumentWorks(String indexName, List works); + public abstract void processDocumentWorks(String indexName, List works); public abstract void discardDocumentWorks(String indexName, List works); public abstract CompletableFuture executeDocumentWorks(String indexName, List works); - public abstract CompletableFuture prepareAndExecuteDocumentWork(String indexName, StubDocumentWork work); + public abstract CompletableFuture processAndExecuteDocumentWork(String indexName, StubDocumentWork work); public abstract SearchResult executeSearchWork(Set indexNames, StubSearchWork work, StubSearchProjectionContext projectionContext, diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java index bc7db9efd8b..11a4ba66194 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java @@ -111,8 +111,8 @@ public T unwrap(Class clazz) { throw new SearchException( "Cannot unwrap " + this + " to " + clazz ); } - void prepare(List works) { - backend.getBehavior().prepareDocumentWorks( name, works ); + void process(List works) { + backend.getBehavior().processDocumentWorks( name, works ); } CompletableFuture execute(List works) { @@ -120,7 +120,7 @@ CompletableFuture execute(List works) { } CompletableFuture prepareAndExecuteWork(StubDocumentWork work) { - return backend.getBehavior().prepareAndExecuteDocumentWork( name, work ); + return backend.getBehavior().processAndExecuteDocumentWork( name, work ); } public void discard(List works) { diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java index 7c204304aed..3a506ffc429 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java @@ -76,14 +76,14 @@ public void delete(DocumentReferenceProvider documentReferenceProvider) { } @Override - public void prepare() { - indexManager.prepare( works.subList( preparedIndex, works.size() ) ); + public void process() { + indexManager.process( works.subList( preparedIndex, works.size() ) ); preparedIndex = works.size(); } @Override public CompletableFuture execute() { - prepare(); + process(); CompletableFuture future = indexManager.execute( works ); works.clear(); preparedIndex = 0; From d2984a0650d4c889983ceb9d24f6d15c34c88a71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Tue, 17 Sep 2019 11:09:53 +0200 Subject: [PATCH 09/11] HSEARCH-3606 Rename IndexWorkPlan to IndexIndexingPlan For consistency with PojoIndexingPlan and APIs, and also because these classes will only ever be about indexing. --- .../impl/ElasticsearchIndexManagerImpl.java | 6 +- .../impl/IndexManagerBackendContext.java | 8 +- ...va => ElasticsearchIndexIndexingPlan.java} | 6 +- .../impl/WorkExecutionBackendContext.java | 4 +- .../impl/IndexManagerBackendContext.java | 8 +- .../index/impl/LuceneIndexManagerImpl.java | 6 +- ...Plan.java => LuceneIndexIndexingPlan.java} | 6 +- .../impl/WorkExecutionBackendContext.java | 4 +- .../src/main/asciidoc/internals.asciidoc | 10 +- .../index/spi/IndexManagerImplementor.java | 4 +- .../spi/DetachedBackendSessionContext.java | 2 +- ...exWorkPlan.java => IndexIndexingPlan.java} | 7 +- .../common/impl/MappedIndexManagerImpl.java | 6 +- .../mapping/spi/MappedIndexManager.java | 4 +- .../ElasticsearchExtensionIT.java | 18 +- .../ElasticsearchMatchSearchPredicateIT.java | 8 +- .../work/ElasticsearchIndexingIT.java | 16 +- .../backend/lucene/LuceneExtensionIT.java | 20 +- .../directory/AbstractDirectoryIT.java | 12 +- .../mapping/LuceneFieldAttributesIT.java | 8 +- .../lucene/mapping/LuceneFieldTypesIT.java | 10 +- .../LuceneFloatingPointInfinitySearchIT.java | 12 +- .../search/LuceneMatchSearchPredicateIT.java | 8 +- .../LuceneNormalizeWildcardExpressionsIT.java | 14 +- .../search/LuceneSearchMultiIndexIT.java | 16 +- .../lucene/search/LuceneSearchSortIT.java | 14 +- .../backend/tck/ObjectFieldStorageIT.java | 32 +-- .../integrationtest/backend/tck/SmokeIT.java | 16 +- .../tck/analysis/AnalysisCustomIT.java | 8 +- .../tck/decimalscale/DecimalScaleIT.java | 194 +++++++++--------- .../tck/document/DocumentElementBaseIT.java | 8 +- .../DocumentElementMultiValuedIT.java | 8 +- .../tck/indexnull/IndexNullAsValueIT.java | 12 +- .../tck/multitenancy/MultiTenancyBaseIT.java | 48 ++--- .../multitenancy/MultiTenancyMismatchIT.java | 20 +- .../tck/search/SearchMultiIndexIT.java | 24 +-- .../search/aggregation/AggregationBaseIT.java | 14 +- .../RangeAggregationSpecificsIT.java | 10 +- .../SingleFieldAggregationBaseIT.java | 36 ++-- .../TermsAggregationSpecificsIT.java | 10 +- .../bool/BooleanSortAndRangePredicateIT.java | 16 +- .../predicate/BoolSearchPredicateIT.java | 12 +- .../predicate/ExistsSearchPredicateIT.java | 26 +-- .../predicate/MatchAllSearchPredicateIT.java | 12 +- .../predicate/MatchIdSearchPredicateIT.java | 12 +- ...MatchIdWithConverterSearchPredicateIT.java | 12 +- .../predicate/MatchSearchPredicateIT.java | 38 ++-- .../predicate/NestedSearchPredicateIT.java | 14 +- .../predicate/PhraseSearchPredicateIT.java | 36 ++-- .../predicate/RangeSearchPredicateIT.java | 32 +-- .../search/predicate/SearchPredicateIT.java | 12 +- .../SimpleQueryStringSearchPredicateIT.java | 36 ++-- .../predicate/WildcardSearchPredicateIT.java | 30 +-- .../CompositeSearchProjectionIT.java | 12 +- .../projection/FieldSearchProjectionIT.java | 26 +-- .../search/projection/SearchProjectionIT.java | 14 +- ...rchQueryResultLoadingOrTransformingIT.java | 10 +- .../search/sort/CompositeSearchSortIT.java | 12 +- .../tck/search/sort/FieldSearchSortIT.java | 50 ++--- .../backend/tck/search/sort/SearchSortIT.java | 14 +- ...bstractSpatialWithinSearchPredicateIT.java | 14 +- .../DistanceSearchSearchableSortableIT.java | 12 +- .../NestedDocumentDistanceProjectionIT.java | 12 +- ...ialWithinBoundingBoxSearchPredicateIT.java | 10 +- ...rkPlanIT.java => IndexIndexingPlanIT.java} | 14 +- .../backend/tck/work/IndexingIT.java | 8 +- .../mapping/impl/PojoIndexedTypeManager.java | 2 +- .../impl/PojoIndexedTypeIndexingPlan.java | 8 +- ...rkPlan.java => StubIndexIndexingPlan.java} | 6 +- .../backend/index/impl/StubIndexManager.java | 6 +- .../stub/mapper/StubMappingIndexManager.java | 14 +- 71 files changed, 604 insertions(+), 605 deletions(-) rename backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/{ElasticsearchIndexWorkPlan.java => ElasticsearchIndexIndexingPlan.java} (95%) rename backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/{LuceneIndexWorkPlan.java => LuceneIndexIndexingPlan.java} (96%) rename engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/{IndexWorkPlan.java => IndexIndexingPlan.java} (93%) rename integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/{IndexWorkPlanIT.java => IndexIndexingPlanIT.java} (83%) rename util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/{StubIndexWorkPlan.java => StubIndexIndexingPlan.java} (95%) diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java index 187d4d2b0cb..df472e3d962 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java @@ -29,7 +29,7 @@ import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.cfg.spi.ConfigurationPropertySource; import org.hibernate.search.engine.cfg.spi.ConfigurationProperty; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -141,10 +141,10 @@ public ElasticsearchIndexModel getModel() { } @Override - public IndexWorkPlan createWorkPlan(BackendSessionContext sessionContext, + public IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { // The commit strategy is ignored, because Elasticsearch always commits changes to its transaction log. - return backendContext.createWorkPlan( + return backendContext.createIndexingPlan( serialOrchestrator, elasticsearchIndexName, refreshStrategy, diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java index 7cda7a4a275..c3651d5a9ed 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java @@ -27,12 +27,12 @@ import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestratorProvider; import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexDocumentWorkExecutor; import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexWorkExecutor; -import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexWorkPlan; +import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexIndexingPlan; import org.hibernate.search.backend.elasticsearch.work.execution.impl.WorkExecutionBackendContext; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -79,14 +79,14 @@ public String toString() { } @Override - public IndexWorkPlan createWorkPlan( + public IndexIndexingPlan createIndexingPlan( ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, DocumentRefreshStrategy refreshStrategy, BackendSessionContext sessionContext) { multiTenancyStrategy.checkTenantId( sessionContext.getTenantIdentifier(), eventContext ); - return new ElasticsearchIndexWorkPlan( + return new ElasticsearchIndexIndexingPlan( link.getWorkBuilderFactory(), multiTenancyStrategy, orchestrator, indexName, refreshStrategy, diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexIndexingPlan.java similarity index 95% rename from backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java rename to backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexIndexingPlan.java index d8e882ef73c..ed6218f66c8 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkPlan.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexIndexingPlan.java @@ -17,7 +17,7 @@ import org.hibernate.search.backend.elasticsearch.work.builder.factory.impl.ElasticsearchWorkBuilderFactory; import org.hibernate.search.backend.elasticsearch.work.impl.ElasticsearchWork; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.work.execution.spi.DocumentContributor; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -26,7 +26,7 @@ -public class ElasticsearchIndexWorkPlan implements IndexWorkPlan { +public class ElasticsearchIndexIndexingPlan implements IndexIndexingPlan { private final ElasticsearchWorkBuilderFactory builderFactory; private final MultiTenancyStrategy multiTenancyStrategy; @@ -37,7 +37,7 @@ public class ElasticsearchIndexWorkPlan implements IndexWorkPlan> works = new ArrayList<>(); - public ElasticsearchIndexWorkPlan(ElasticsearchWorkBuilderFactory builderFactory, + public ElasticsearchIndexIndexingPlan(ElasticsearchWorkBuilderFactory builderFactory, MultiTenancyStrategy multiTenancyStrategy, ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java index 142137f7d39..71043589167 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -29,7 +29,7 @@ */ public interface WorkExecutionBackendContext { - IndexWorkPlan createWorkPlan( + IndexIndexingPlan createIndexingPlan( ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, DocumentRefreshStrategy refreshStrategy, diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java index 642cc3a8445..3eec3f58eac 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java @@ -31,14 +31,14 @@ import org.hibernate.search.backend.lucene.search.query.impl.SearchBackendContext; import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexDocumentWorkExecutor; import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexWorkExecutor; -import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexWorkPlan; +import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexIndexingPlan; import org.hibernate.search.backend.lucene.work.execution.impl.WorkExecutionBackendContext; import org.hibernate.search.backend.lucene.work.execution.impl.WorkExecutionIndexManagerContext; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.backend.lucene.document.impl.LuceneRootDocumentBuilder; import org.hibernate.search.backend.lucene.multitenancy.impl.MultiTenancyStrategy; import org.hibernate.search.backend.lucene.work.impl.LuceneWorkFactory; @@ -90,14 +90,14 @@ public String toString() { } @Override - public IndexWorkPlan createWorkPlan( + public IndexIndexingPlan createIndexingPlan( WorkExecutionIndexManagerContext indexManagerContext, LuceneIndexEntryFactory indexEntryFactory, BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { multiTenancyStrategy.checkTenantId( sessionContext.getTenantIdentifier(), eventContext ); - return new LuceneIndexWorkPlan( + return new LuceneIndexIndexingPlan( workFactory, indexManagerContext, indexEntryFactory, diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java index 4bd971c4211..b49eff576ab 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java @@ -23,7 +23,7 @@ import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.backend.lucene.document.impl.LuceneRootDocumentBuilder; import org.hibernate.search.backend.lucene.document.model.impl.LuceneIndexModel; import org.hibernate.search.backend.lucene.logging.impl.Log; @@ -87,9 +87,9 @@ public void close() { } @Override - public IndexWorkPlan createWorkPlan(BackendSessionContext sessionContext, + public IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return backendContext.createWorkPlan( + return backendContext.createIndexingPlan( shardHolder, indexEntryFactory, sessionContext, commitStrategy, refreshStrategy ); diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexIndexingPlan.java similarity index 96% rename from backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java rename to backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexIndexingPlan.java index 8d619f558ef..9d94031c416 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkPlan.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexIndexingPlan.java @@ -15,7 +15,7 @@ import org.hibernate.search.backend.lucene.document.impl.LuceneIndexEntryFactory; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.work.execution.spi.DocumentContributor; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; import org.hibernate.search.backend.lucene.document.impl.LuceneIndexEntry; @@ -25,7 +25,7 @@ import org.hibernate.search.backend.lucene.work.impl.LuceneWorkFactory; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; -public class LuceneIndexWorkPlan implements IndexWorkPlan { +public class LuceneIndexIndexingPlan implements IndexIndexingPlan { private final LuceneWorkFactory factory; private final LuceneIndexEntryFactory indexEntryFactory; @@ -36,7 +36,7 @@ public class LuceneIndexWorkPlan implements IndexWorkPlan>> worksByOrchestrator = new HashMap<>(); - public LuceneIndexWorkPlan(LuceneWorkFactory factory, + public LuceneIndexIndexingPlan(LuceneWorkFactory factory, WorkExecutionIndexManagerContext indexManagerContext, LuceneIndexEntryFactory indexEntryFactory, BackendSessionContext sessionContext, diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java index 9f1029892df..8f0ba27ccda 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java @@ -16,7 +16,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -32,7 +32,7 @@ * we would end up with methods with many parameters. */ public interface WorkExecutionBackendContext { - IndexWorkPlan createWorkPlan( + IndexIndexingPlan createIndexingPlan( WorkExecutionIndexManagerContext indexManagerContext, LuceneIndexEntryFactory indexEntryFactory, BackendSessionContext sessionContext, diff --git a/documentation/src/main/asciidoc/internals.asciidoc b/documentation/src/main/asciidoc/internals.asciidoc index e8336f89d9a..9f7230ba12f 100644 --- a/documentation/src/main/asciidoc/internals.asciidoc +++ b/documentation/src/main/asciidoc/internals.asciidoc @@ -146,14 +146,14 @@ so that the value is added to the field. The other part of indexing (or altering the index in any way) is to give an order to the index manager: "add this document", "delete this document", ... -This is done through the `IndexWorkPlan` class. -The mapper should create a work plan whenever it needs to execute a series of works. +This is done through the `IndexIndexingPlan` class. +The mapper should create an indexing plan whenever it needs to add, update or delete a document. -`IndexWorkPlan` carries *some* context usually associated to a "session" in the JPA world, +`IndexIndexingPlan` carries *some* context usually associated to a "session" in the JPA world, including the tenant identifier when using multi-tenancy, in particular. -Thus the mapper should instantiate a new work plan whenever this context changes. +Thus the mapper should instantiate a new indexing plan whenever this context changes. -NOTE: For now index-scoped operations such as flush, optimize, etc. are unavailable from work plans. +NOTE: For now index-scoped operations such as flush, optimize, etc. are unavailable from indexing plans. HSEARCH-3305 will introduce APIs and SPIs for these. === Searching diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java b/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java index 22561be96c1..230daf091e3 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.spi.BackendStartContext; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -42,7 +42,7 @@ public interface IndexManagerImplementor extends Auto */ IndexManager toAPI(); - IndexWorkPlan createWorkPlan(BackendSessionContext sessionContext, + IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); IndexDocumentWorkExecutor createDocumentWorkExecutor(BackendSessionContext sessionContext, diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java b/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java index 526693128d1..be158768a19 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java @@ -21,7 +21,7 @@ * The main downside is that this context cannot be used * everywhere {@link BackendSessionContext} can. * In particular, it cannot be used when creating document-related - * {@link org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor#createWorkPlan(BackendSessionContext, DocumentCommitStrategy, DocumentRefreshStrategy) work plans} + * {@link org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor#createIndexingPlan(BackendSessionContext, DocumentCommitStrategy, DocumentRefreshStrategy) indexing plans} * or {@link org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor#createDocumentWorkExecutor(BackendSessionContext, DocumentCommitStrategy) work executors} * because these may need access to the session. */ diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexIndexingPlan.java similarity index 93% rename from engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java rename to engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexIndexingPlan.java index 1db853aee75..af0111aaaaa 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkPlan.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexIndexingPlan.java @@ -9,18 +9,17 @@ import java.util.concurrent.CompletableFuture; /** - * A set of works to be executed on an index. + * A set of works to be executed on a single index. *

* Works are accumulated when methods such as {@link #add(DocumentReferenceProvider, DocumentContributor)} * or {@link #update(DocumentReferenceProvider, DocumentContributor)} are called, * and executed only when {@link #execute()} is called. *

- * Relative ordering of works within a work plan will be preserved. + * Relative ordering of works within a plan will be preserved. *

* Implementations may not be thread-safe. - * */ -public interface IndexWorkPlan { +public interface IndexIndexingPlan { /** * Add a document to the index, assuming that the document is absent from the index. diff --git a/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java b/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java index e67c7ddcbc2..1ec0f888853 100644 --- a/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java +++ b/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -34,9 +34,9 @@ public IndexManager toAPI() { } @Override - public IndexWorkPlan createWorkPlan(BackendSessionContext sessionContext, + public IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return implementor.createWorkPlan( sessionContext, commitStrategy, refreshStrategy ); + return implementor.createIndexingPlan( sessionContext, commitStrategy, refreshStrategy ); } @Override diff --git a/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java b/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java index 28b5dc456d3..42767b7d038 100644 --- a/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java +++ b/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -27,7 +27,7 @@ public interface MappedIndexManager { IndexManager toAPI(); - IndexWorkPlan createWorkPlan(BackendSessionContext sessionContext, + IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); IndexDocumentWorkExecutor createDocumentWorkExecutor(BackendSessionContext sessionContext, diff --git a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/ElasticsearchExtensionIT.java b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/ElasticsearchExtensionIT.java index 3ed4eec5699..4bd2d1e5722 100644 --- a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/ElasticsearchExtensionIT.java +++ b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/ElasticsearchExtensionIT.java @@ -27,7 +27,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.index.IndexManager; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.common.spi.SearchIntegration; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.predicate.SearchPredicate; @@ -579,8 +579,8 @@ public void indexManager_unwrap_error_unknownType() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( SECOND_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( SECOND_ID ), document -> { document.addValue( indexMapping.integer, "2" ); document.addValue( indexMapping.unsupportedType, "42" ); @@ -590,7 +590,7 @@ private void initData() { document.addValue( indexMapping.sort4, "z" ); document.addValue( indexMapping.sort5, "a" ); } ); - workPlan.add( referenceProvider( FIRST_ID ), document -> { + plan.add( referenceProvider( FIRST_ID ), document -> { document.addValue( indexMapping.string, "'text 1'" ); document.addValue( indexMapping.sort1, "a" ); @@ -599,7 +599,7 @@ private void initData() { document.addValue( indexMapping.sort4, "z" ); document.addValue( indexMapping.sort5, "a" ); } ); - workPlan.add( referenceProvider( THIRD_ID ), document -> { + plan.add( referenceProvider( THIRD_ID ), document -> { document.addValue( indexMapping.geoPoint, "{'lat': 40.12, 'lon': -71.34}" ); document.addValue( indexMapping.sort1, "z" ); @@ -608,7 +608,7 @@ private void initData() { document.addValue( indexMapping.sort4, "z" ); document.addValue( indexMapping.sort5, "a" ); } ); - workPlan.add( referenceProvider( FOURTH_ID ), document -> { + plan.add( referenceProvider( FOURTH_ID ), document -> { document.addValue( indexMapping.dateWithColons, "'2018:01:12'" ); document.addValue( indexMapping.sort1, "z" ); @@ -617,7 +617,7 @@ private void initData() { document.addValue( indexMapping.sort4, "a" ); document.addValue( indexMapping.sort5, "a" ); } ); - workPlan.add( referenceProvider( FIFTH_ID ), document -> { + plan.add( referenceProvider( FIFTH_ID ), document -> { // This document should not match any query document.addValue( indexMapping.string, "'text 2'" ); document.addValue( indexMapping.integer, "1" ); @@ -627,9 +627,9 @@ private void initData() { document.addValue( indexMapping.sort5, "z" ); } ); - workPlan.add( referenceProvider( EMPTY_ID ), document -> { } ); + plan.add( referenceProvider( EMPTY_ID ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/search/ElasticsearchMatchSearchPredicateIT.java b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/search/ElasticsearchMatchSearchPredicateIT.java index 01f32b3d6be..cd39b749777 100644 --- a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/search/ElasticsearchMatchSearchPredicateIT.java +++ b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/search/ElasticsearchMatchSearchPredicateIT.java @@ -11,7 +11,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.integrationtest.backend.tck.testsupport.configuration.DefaultAnalysisDefinitions; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; import org.hibernate.search.util.common.SearchException; @@ -64,9 +64,9 @@ public void match_skipAnalysis_normalizedStringField() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), document -> document.addValue( indexMapping.normalizedStringField, TEST_TERM ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), document -> document.addValue( indexMapping.normalizedStringField, TEST_TERM ) ); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/work/ElasticsearchIndexingIT.java b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/work/ElasticsearchIndexingIT.java index 48fb4c41366..628d30f0343 100644 --- a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/work/ElasticsearchIndexingIT.java +++ b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/work/ElasticsearchIndexingIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.integrationtest.backend.elasticsearch.testsupport.util.ElasticsearchClientSpy; import org.hibernate.search.integrationtest.backend.elasticsearch.testsupport.util.ElasticsearchRequestAssertionMode; import org.hibernate.search.util.impl.integrationtest.elasticsearch.dialect.ElasticsearchTestDialect; @@ -67,9 +67,9 @@ public void setup() { @Test public void addUpdateDelete_routing() { String routingKey = "someRoutingKey"; - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); - workPlan.add( referenceProvider( "1", routingKey ), document -> { + plan.add( referenceProvider( "1", routingKey ), document -> { document.addValue( indexMapping.string, "text1" ); } ); clientSpy.expectNext( @@ -82,10 +82,10 @@ public void addUpdateDelete_routing() { .build(), ElasticsearchRequestAssertionMode.EXTENSIBLE ); - workPlan.execute().join(); + plan.execute().join(); clientSpy.verifyExpectationsMet(); - workPlan.update( referenceProvider( "1", routingKey ), document -> { + plan.update( referenceProvider( "1", routingKey ), document -> { document.addValue( indexMapping.string, "text2" ); } ); clientSpy.expectNext( @@ -98,10 +98,10 @@ public void addUpdateDelete_routing() { .build(), ElasticsearchRequestAssertionMode.EXTENSIBLE ); - workPlan.execute().join(); + plan.execute().join(); clientSpy.verifyExpectationsMet(); - workPlan.delete( referenceProvider( "1", routingKey ) ); + plan.delete( referenceProvider( "1", routingKey ) ); clientSpy.expectNext( ElasticsearchRequest.delete() .pathComponent( URLEncodedString.fromString( INDEX_NAME ) ) @@ -111,7 +111,7 @@ public void addUpdateDelete_routing() { .build(), ElasticsearchRequestAssertionMode.EXTENSIBLE ); - workPlan.execute().join(); + plan.execute().join(); clientSpy.verifyExpectationsMet(); } diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/LuceneExtensionIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/LuceneExtensionIT.java index 362f18f8d8a..564cf683afa 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/LuceneExtensionIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/LuceneExtensionIT.java @@ -46,7 +46,7 @@ import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.index.IndexManager; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.common.spi.SearchIntegration; import org.hibernate.search.engine.search.projection.SearchProjection; import org.hibernate.search.engine.search.loading.context.spi.LoadingContext; @@ -631,11 +631,11 @@ public void projection_explanation() { @Test public void nativeField_invalidFieldPath() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); SubTest.expectException( "native field contributing field with invalid field path", - () -> workPlan.add( referenceProvider( FIRST_ID ), document -> { + () -> plan.add( referenceProvider( FIRST_ID ), document -> { document.addValue( indexMapping.nativeField_invalidFieldPath, 45 ); } ) ) .assertThrown() @@ -680,8 +680,8 @@ public void indexManager_unwrap_error_unknownType() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( FIRST_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( FIRST_ID ), document -> { document.addValue( indexMapping.string, "text 1" ); document.addValue( indexMapping.nativeField, 37 ); @@ -691,7 +691,7 @@ private void initData() { document.addValue( indexMapping.sort2, "z" ); document.addValue( indexMapping.sort3, "z" ); } ); - workPlan.add( referenceProvider( SECOND_ID ), document -> { + plan.add( referenceProvider( SECOND_ID ), document -> { document.addValue( indexMapping.integer, 2 ); document.addValue( indexMapping.nativeField, 78 ); @@ -701,7 +701,7 @@ private void initData() { document.addValue( indexMapping.sort2, "a" ); document.addValue( indexMapping.sort3, "z" ); } ); - workPlan.add( referenceProvider( THIRD_ID ), document -> { + plan.add( referenceProvider( THIRD_ID ), document -> { document.addValue( indexMapping.geoPoint, GeoPoint.of( 40.12, -71.34 ) ); document.addValue( indexMapping.nativeField, 13 ); @@ -711,7 +711,7 @@ private void initData() { document.addValue( indexMapping.sort2, "z" ); document.addValue( indexMapping.sort3, "a" ); } ); - workPlan.add( referenceProvider( FOURTH_ID ), document -> { + plan.add( referenceProvider( FOURTH_ID ), document -> { document.addValue( indexMapping.nativeField, 89 ); document.addValue( indexMapping.nativeField_unsupportedProjection, 89 ); @@ -719,7 +719,7 @@ private void initData() { document.addValue( indexMapping.sort2, "z" ); document.addValue( indexMapping.sort3, "z" ); } ); - workPlan.add( referenceProvider( FIFTH_ID ), document -> { + plan.add( referenceProvider( FIFTH_ID ), document -> { // This document should not match any query document.addValue( indexMapping.string, "text 2" ); document.addValue( indexMapping.integer, 1 ); @@ -730,7 +730,7 @@ private void initData() { document.addValue( indexMapping.sort3, "zz" ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/lowlevel/directory/AbstractDirectoryIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/lowlevel/directory/AbstractDirectoryIT.java index 0b4686a5539..9f59eda44cb 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/lowlevel/directory/AbstractDirectoryIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/lowlevel/directory/AbstractDirectoryIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.common.spi.SearchIntegration; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; @@ -47,17 +47,17 @@ public abstract class AbstractDirectoryIT { protected StubMappingIndexManager indexManager; protected final void checkIndexingAndQuerying() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.string, "text 1" ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.string, "text 2" ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.string, "text 3" ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldAttributesIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldAttributesIT.java index e42d4170a96..402e3016639 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldAttributesIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldAttributesIT.java @@ -17,7 +17,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.dsl.StringIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Norms; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.types.TermVector; @@ -123,8 +123,8 @@ private Document loadDocument() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "ID:1" ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "ID:1" ), document -> { document.addValue( indexMapping.string, "keyword" ); document.addValue( indexMapping.text, TEXT ); document.addValue( indexMapping.norms, TEXT ); @@ -133,7 +133,7 @@ private void initData() { document.addValue( indexMapping.moreOptions, "Search 6 groundwork - Add the missing common field type options compared to Search 5" ); } ); - workPlan.execute().join(); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldTypesIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldTypesIT.java index 0b04fd42881..42aed9730b4 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldTypesIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/mapping/LuceneFieldTypesIT.java @@ -16,7 +16,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.configuration.DefaultAnalysisDefinitions; @@ -90,16 +90,16 @@ public void verifyProjectionsOnDifferentTypes() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); - workPlan.add( referenceProvider( "ID:1" ), document -> { + plan.add( referenceProvider( "ID:1" ), document -> { document.addValue( indexMapping.string, "keyword" ); document.addValue( indexMapping.text, TEXT_1 ); document.addValue( indexMapping.integer, 739 ); document.addValue( indexMapping.longNumber, 739L ); document.addValue( indexMapping.bool, true ); } ); - workPlan.add( referenceProvider( "ID:2" ), document -> { + plan.add( referenceProvider( "ID:2" ), document -> { document.addValue( indexMapping.string, "anotherKeyword" ); document.addValue( indexMapping.text, TEXT_2 ); document.addValue( indexMapping.integer, 123 ); @@ -107,7 +107,7 @@ private void initData() { document.addValue( indexMapping.bool, false ); } ); - workPlan.execute().join(); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneFloatingPointInfinitySearchIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneFloatingPointInfinitySearchIT.java index 49f89fb0e91..7b413aa2e8f 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneFloatingPointInfinitySearchIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneFloatingPointInfinitySearchIT.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.types.Aggregable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.search.aggregation.AggregationKey; import org.hibernate.search.engine.search.query.dsl.SearchQueryOptionsStep; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.StandardFieldMapper; @@ -185,20 +185,20 @@ public void double_infinityExcluded() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "negative-infinity" ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "negative-infinity" ), document -> { document.addValue( indexMapping.floatFieldModel.reference, Float.NEGATIVE_INFINITY ); document.addValue( indexMapping.doubleFieldModel.reference, Double.NEGATIVE_INFINITY ); } ); - workPlan.add( referenceProvider( "zero" ), document -> { + plan.add( referenceProvider( "zero" ), document -> { document.addValue( indexMapping.floatFieldModel.reference, 0f ); document.addValue( indexMapping.doubleFieldModel.reference, 0d ); } ); - workPlan.add( referenceProvider( "positive-infinity" ), document -> { + plan.add( referenceProvider( "positive-infinity" ), document -> { document.addValue( indexMapping.floatFieldModel.reference, Float.POSITIVE_INFINITY ); document.addValue( indexMapping.doubleFieldModel.reference, Double.POSITIVE_INFINITY ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchResultAssert.assertThat( diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneMatchSearchPredicateIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneMatchSearchPredicateIT.java index 590a1e2f0ff..b71e350ec1f 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneMatchSearchPredicateIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneMatchSearchPredicateIT.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.configuration.DefaultAnalysisDefinitions; @@ -67,9 +67,9 @@ public void match_skipAnalysis_normalizedStringField() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), document -> document.addValue( indexMapping.normalizedStringField, TEST_TERM ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), document -> document.addValue( indexMapping.normalizedStringField, TEST_TERM ) ); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneNormalizeWildcardExpressionsIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneNormalizeWildcardExpressionsIT.java index 7e68d851744..70dae772835 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneNormalizeWildcardExpressionsIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneNormalizeWildcardExpressionsIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.configuration.DefaultAnalysisDefinitions; @@ -103,20 +103,20 @@ public void wildcard_tokenizeMatchingExpression() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.analyzed, TEXT_MATCHING_PATTERN_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.analyzed, TEXT_MATCHING_PATTERN_2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.analyzed, TEXT_MATCHING_PATTERN_3 ); } ); - workPlan.add( referenceProvider( DOCUMENT_4 ), document -> { + plan.add( referenceProvider( DOCUMENT_4 ), document -> { document.addValue( indexMapping.analyzed, TEXT_MATCHING_PATTERN_2_AND_3 ); } ); - workPlan.execute().join(); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchMultiIndexIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchMultiIndexIT.java index 45c82895830..43f55574b77 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchMultiIndexIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchMultiIndexIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.types.Projectable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.integrationtest.backend.tck.search.SearchMultiIndexIT; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; import org.hibernate.search.engine.backend.common.DocumentReference; @@ -109,18 +109,18 @@ public void field_in_one_index_only_is_supported_for_sorting() { private void initData() { // Backend 1 / Index 1 - IndexWorkPlan workPlan = indexManager_1_1.createWorkPlan(); + IndexIndexingPlan plan = indexManager_1_1.createIndexingPlan(); - workPlan.add( referenceProvider( DOCUMENT_1_1_1 ), document -> { + plan.add( referenceProvider( DOCUMENT_1_1_1 ), document -> { document.addValue( indexMapping_1_1.string, STRING_1 ); document.addValue( indexMapping_1_1.additionalField, ADDITIONAL_FIELD_1_1_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_1_1_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_1_1_2 ), document -> { document.addValue( indexMapping_1_1.string, STRING_2 ); document.addValue( indexMapping_1_1.additionalField, ADDITIONAL_FIELD_1_1_2 ); } ); - workPlan.execute().join(); + plan.execute().join(); StubMappingScope scope = indexManager_1_1.createScope(); SearchQuery query = scope.query() @@ -130,13 +130,13 @@ private void initData() { // Backend 1 / Index 2 - workPlan = indexManager_1_2.createWorkPlan(); + plan = indexManager_1_2.createIndexingPlan(); - workPlan.add( referenceProvider( DOCUMENT_1_2_1 ), document -> { + plan.add( referenceProvider( DOCUMENT_1_2_1 ), document -> { document.addValue( indexMapping_1_2.string, STRING_1 ); } ); - workPlan.execute().join(); + plan.execute().join(); scope = indexManager_1_2.createScope(); query = scope.query() diff --git a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchSortIT.java b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchSortIT.java index 39eb8bc5463..4a10ec798c1 100644 --- a/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchSortIT.java +++ b/integrationtest/backend/lucene/src/test/java/org/hibernate/search/integrationtest/backend/lucene/search/LuceneSearchSortIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Sortable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.search.sort.dsl.SortFinalStep; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; @@ -80,19 +80,19 @@ public void byDistanceDesc() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( FIRST_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( FIRST_ID ), document -> { document.addValue( indexMapping.geoPoint, GeoPoint.of( 45.7705687,4.835233 ) ); } ); - workPlan.add( referenceProvider( SECOND_ID ), document -> { + plan.add( referenceProvider( SECOND_ID ), document -> { document.addValue( indexMapping.geoPoint, GeoPoint.of( 45.7541719, 4.8386221 ) ); } ); - workPlan.add( referenceProvider( THIRD_ID ), document -> { + plan.add( referenceProvider( THIRD_ID ), document -> { document.addValue( indexMapping.geoPoint, GeoPoint.of( 45.7530374, 4.8510299 ) ); } ); - workPlan.add( referenceProvider( EMPTY_ID ), document -> { } ); + plan.add( referenceProvider( EMPTY_ID ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/ObjectFieldStorageIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/ObjectFieldStorageIT.java index 6e28f14eecc..bed08957d69 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/ObjectFieldStorageIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/ObjectFieldStorageIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; import org.hibernate.search.integrationtest.backend.tck.testsupport.configuration.DefaultAnalysisDefinitions; @@ -72,48 +72,48 @@ public void setup() { @Test public void index_error_invalidFieldForDocumentElement_root() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); thrown.expect( SearchException.class ); thrown.expectMessage( "Invalid field reference for this document element" ); thrown.expectMessage( "this document element has path 'null', but the referenced field has a parent with path 'flattenedObject'." ); - workPlan.add( referenceProvider( "willNotWork" ), document -> { + plan.add( referenceProvider( "willNotWork" ), document -> { DocumentElement flattenedObject = document.addObject( indexMapping.flattenedObject.self ); flattenedObject.addValue( indexMapping.string, "willNotWork" ); } ); - workPlan.execute().join(); + plan.execute().join(); } @Test public void index_error_invalidFieldForDocumentElement_flattened() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); thrown.expect( SearchException.class ); thrown.expectMessage( "Invalid field reference for this document element" ); thrown.expectMessage( "this document element has path 'flattenedObject', but the referenced field has a parent with path 'null'." ); - workPlan.add( referenceProvider( "willNotWork" ), document -> { + plan.add( referenceProvider( "willNotWork" ), document -> { document.addValue( indexMapping.flattenedObject.string, "willNotWork" ); } ); - workPlan.execute().join(); + plan.execute().join(); } @Test public void index_error_invalidFieldForDocumentElement_nested() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); thrown.expect( SearchException.class ); thrown.expectMessage( "Invalid field reference for this document element" ); thrown.expectMessage( "this document element has path 'nestedObject', but the referenced field has a parent with path 'null'." ); - workPlan.add( referenceProvider( "willNotWork" ), document -> { + plan.add( referenceProvider( "willNotWork" ), document -> { document.addValue( indexMapping.nestedObject.string, "willNotWork" ); } ); - workPlan.execute().join(); + plan.execute().join(); } @Test @@ -220,8 +220,8 @@ public void search_error_missingField() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( EXPECTED_NESTED_MATCH_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( EXPECTED_NESTED_MATCH_ID ), document -> { ObjectMapping objectMapping; DocumentElement object; @@ -251,7 +251,7 @@ private void initData() { object.addValue( objectMapping.localDate, NON_MATCHING_LOCAL_DATE ); } ); - workPlan.add( referenceProvider( EXPECTED_NON_NESTED_MATCH_ID ), document -> { + plan.add( referenceProvider( EXPECTED_NON_NESTED_MATCH_ID ), document -> { /* * Below, we use the same content for both the flattened object and the nested object. * This is to demonstrate the practical difference of object storage: @@ -283,7 +283,7 @@ private void initData() { } } ); - workPlan.add( referenceProvider( "neverMatching" ), document -> { + plan.add( referenceProvider( "neverMatching" ), document -> { /* * This should not match, be it on the nested or the flattened object. * For first-level nesting tests, it's because of the integer field. @@ -310,9 +310,9 @@ private void initData() { } } ); - workPlan.add( referenceProvider( "empty" ), document -> { } ); + plan.add( referenceProvider( "empty" ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/SmokeIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/SmokeIT.java index 85e6e5d62ec..4bdced6c95d 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/SmokeIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/SmokeIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; import org.hibernate.search.integrationtest.backend.tck.testsupport.configuration.DefaultAnalysisDefinitions; @@ -255,8 +255,8 @@ public void separatePredicate() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), document -> { document.addValue( indexMapping.string, "text 1" ); document.addValue( indexMapping.string_analyzed, "text 1" ); document.addValue( indexMapping.integer, 1 ); @@ -278,7 +278,7 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, 102 ); } ); - workPlan.add( referenceProvider( "2" ), document -> { + plan.add( referenceProvider( "2" ), document -> { document.addValue( indexMapping.string, "text 2" ); document.addValue( indexMapping.string_analyzed, "text 2" ); document.addValue( indexMapping.integer, 2 ); @@ -300,21 +300,21 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, 202 ); } ); - workPlan.add( referenceProvider( "3" ), document -> { + plan.add( referenceProvider( "3" ), document -> { document.addValue( indexMapping.string, "text 3" ); document.addValue( indexMapping.string_analyzed, "text 3" ); document.addValue( indexMapping.integer, 3 ); } ); - workPlan.add( referenceProvider( "neverMatching" ), document -> { + plan.add( referenceProvider( "neverMatching" ), document -> { document.addValue( indexMapping.string, "never matching" ); document.addValue( indexMapping.string_analyzed, "never matching" ); document.addValue( indexMapping.integer, 9484 ); } ); - workPlan.add( referenceProvider( "empty" ), document -> { } ); + plan.add( referenceProvider( "empty" ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/analysis/AnalysisCustomIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/analysis/AnalysisCustomIT.java index f968c422f31..08a78e3cadd 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/analysis/AnalysisCustomIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/analysis/AnalysisCustomIT.java @@ -21,7 +21,7 @@ import org.hibernate.search.integrationtest.backend.tck.testsupport.util.TckBackendHelper; import org.hibernate.search.util.impl.integrationtest.common.assertion.SearchResultAssert; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; @@ -276,19 +276,19 @@ private void setup(String fieldName, } private void initData(Consumer valueContributor) { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); List documentIds = new ArrayList<>(); valueContributor.accept( (String documentId, String ... fieldValues) -> { documentIds.add( documentId ); - workPlan.add( referenceProvider( documentId ), document -> { + plan.add( referenceProvider( documentId ), document -> { for ( String fieldValue : fieldValues ) { indexMapping.field.write( document, fieldValue ); } } ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/decimalscale/DecimalScaleIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/decimalscale/DecimalScaleIT.java index 6abe86d3f12..346565ffc82 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/decimalscale/DecimalScaleIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/decimalscale/DecimalScaleIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexFieldTypeDefaultsProvider; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexedEntityBindingContext; @@ -103,9 +103,9 @@ public void decimalScale_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); + plan.execute().join(); // decimal scale is 3, affecting the search precision // so the provided value 739.11111 will be treated as if it were 739.111 @@ -121,9 +121,9 @@ public void decimalScale_zeroScale_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); + plan.execute().join(); // decimal scale is 0, affecting the search precision // so the provided value 739.11111 will be treated as if it were 739 @@ -139,9 +139,9 @@ public void decimalScale_zeroScale_bigInteger() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "739" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "739" ) ) ); + plan.execute().join(); // decimal scale is 0, affecting the search precision // so the provided value 739 will be treated as if it were 739 @@ -157,9 +157,9 @@ public void decimalScale_negativeScale_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "11111.11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "11111.11111" ) ) ); + plan.execute().join(); // decimal scale is -3, affecting the search precision // so the provided value 11111.11111 will be treated as if it were 11000 @@ -175,9 +175,9 @@ public void decimalScale_negativeScale_bigInteger() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "11111" ) ) ); + plan.execute().join(); // decimal scale is -3, affecting the search precision // so the provided value 11111 will be treated as if it were 11000 @@ -217,9 +217,9 @@ public void decimalScale_largeScale_bigDecimal() { Assertions.assertThat( originalValue ) .isBetween( indexedValueLowerBound, indexedValueUpperBound ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, originalValue ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, originalValue ) ); + plan.execute().join(); matchAbove( indexedValueLowerBound ); doNotMatchAbove( indexedValueUpperBound ); @@ -257,9 +257,9 @@ public void decimalScale_negativeScale_largeScale_bigDecimal() { Assertions.assertThat( originalValue ) .isBetween( indexedValueLowerBound, indexedValueUpperBound ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, originalValue ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, originalValue ) ); + plan.execute().join(); matchAbove( indexedValueLowerBound ); doNotMatchAbove( indexedValueUpperBound ); @@ -297,9 +297,9 @@ public void decimalScale_negativeScale_largeScale_bigInteger() { Assertions.assertThat( originalValue ) .isBetween( indexedValueLowerBound, indexedValueUpperBound ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, originalValue ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, originalValue ) ); + plan.execute().join(); matchAbove( indexedValueLowerBound ); doNotMatchAbove( indexedValueUpperBound ); @@ -313,12 +313,12 @@ public void decimalScale_rounding_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.114999" ) ) ); - workPlan.add( referenceProvider( "2" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.115" ) ) ); - workPlan.add( referenceProvider( "3" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11" ) ) ); - workPlan.add( referenceProvider( "4" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.12" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.114999" ) ) ); + plan.add( referenceProvider( "2" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.115" ) ) ); + plan.add( referenceProvider( "3" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11" ) ) ); + plan.add( referenceProvider( "4" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.12" ) ) ); + plan.execute().join(); // RoundingMode.HALF_UP expected on both values: match( new BigDecimal( "739.11" ), "1", "3" ); @@ -337,12 +337,12 @@ public void decimalScale_rounding_bigInteger() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7394999" ) ) ); - workPlan.add( referenceProvider( "2" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7395000" ) ) ); - workPlan.add( referenceProvider( "3" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7390000" ) ) ); - workPlan.add( referenceProvider( "4" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7400000" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7394999" ) ) ); + plan.add( referenceProvider( "2" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7395000" ) ) ); + plan.add( referenceProvider( "3" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7390000" ) ) ); + plan.add( referenceProvider( "4" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "7400000" ) ) ); + plan.execute().join(); // RoundingMode.HALF_UP expected on both values: match( new BigInteger( "7390000" ), "1", "3" ); @@ -365,9 +365,9 @@ public void decimalScale_largeDecimal_bigDecimal() { // If the exponent were 54, the test would fail for Elasticsearch, whereas it would work for Lucene backend. BigDecimal largeDecimal = new BigDecimal( "2" ).pow( 53 ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, largeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, largeDecimal ) ); + plan.execute().join(); // the precision is supposed to be preserved matchAbove( largeDecimal.subtract( BigDecimal.ONE ) ); @@ -386,9 +386,9 @@ public void decimalScale_largeDecimal_bigInteger() { // If the exponent were 54, the test would fail for Elasticsearch, whereas it would work for Lucene backend. BigInteger largeInteger = new BigInteger( "2" ).pow( 53 ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, largeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, largeInteger ) ); + plan.execute().join(); // the precision is supposed to be preserved matchAbove( largeInteger.subtract( BigInteger.ONE ) ); @@ -407,9 +407,9 @@ public void decimalScale_tooLargeDecimal_scale0_bigDecimal() { BigDecimal tooLargeDecimal = BigDecimal.valueOf( Long.MAX_VALUE ).multiply( BigDecimal.TEN ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -428,9 +428,9 @@ public void decimalScale_tooLargeDecimal_scale0_bigDecimal_queryPredicateBuildTi // Provide a value that cannot be represented as a long BigDecimal tooLargeDecimal = veryLargeDecimal.multiply( BigDecimal.TEN ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, veryLargeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, veryLargeDecimal ) ); + plan.execute().join(); SubTest.expectException( () -> { indexManager.createScope() @@ -454,9 +454,9 @@ public void decimalScale_tooLargeDecimal_scale0_bigDecimal_lowerBound() { BigDecimal tooLargeDecimal = BigDecimal.valueOf( Long.MIN_VALUE ).multiply( BigDecimal.TEN ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -475,9 +475,9 @@ public void decimalScale_tooLargeDecimal_scale0_bigInteger() { BigInteger tooLargeInteger = BigInteger.valueOf( Long.MAX_VALUE ).multiply( BigInteger.TEN ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -496,9 +496,9 @@ public void decimalScale_tooLargeDecimal_scale0_bigInteger_lowerBound() { BigInteger tooLargeInteger = BigInteger.valueOf( Long.MIN_VALUE ).multiply( BigInteger.TEN ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -517,9 +517,9 @@ public void decimalScale_tooLargeDecimal_scale0_bigInteger_lowerBound_queryPredi // Provide a value that cannot be represented as a long BigInteger tooLargeInteger = veryLargeNegativeInteger.multiply( BigInteger.TEN ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, veryLargeNegativeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, veryLargeNegativeInteger ) ); + plan.execute().join(); SubTest.expectException( () -> { indexManager.createScope() @@ -543,9 +543,9 @@ public void decimalScale_tooLargeDecimal_scale2_bigDecimal() { BigDecimal tooLargeDecimal = BigDecimal.valueOf( Long.MAX_VALUE ).divide( BigDecimal.TEN ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -564,9 +564,9 @@ public void decimalScale_tooLargeDecimal_scale2_bigDecimal_lowerBound() { BigDecimal tooLargeDecimal = BigDecimal.valueOf( Long.MIN_VALUE ).divide( BigDecimal.TEN ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, tooLargeDecimal ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -585,9 +585,9 @@ public void decimalScale_tooLargeDecimal_scale2_bigDecimal_lowerBound_queryPredi BigDecimal tooLargeDecimal = BigDecimal.valueOf( Long.MIN_VALUE ).divide( BigDecimal.TEN ); BigDecimal veryLargeDecimal = tooLargeDecimal.divide( BigDecimal.TEN ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, veryLargeDecimal ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, veryLargeDecimal ) ); + plan.execute().join(); SubTest.expectException( () -> { indexManager.createScope() @@ -611,9 +611,9 @@ public void decimalScale_tooLargeDecimal_scaleMinus2_bigInteger() { BigInteger tooLargeInteger = BigInteger.valueOf( Long.MAX_VALUE ).multiply( new BigInteger( "1000" ) ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -632,9 +632,9 @@ public void decimalScale_tooLargeDecimal_scaleMinus2_bigInteger_queryPredicateBu // Provide a value that if it were multiplied by 100, could not be represented as a long, because the scale of -2 BigInteger tooLargeInteger = veryLargeInteger.multiply( new BigInteger( "1000" ) ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, veryLargeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, veryLargeInteger ) ); + plan.execute().join(); SubTest.expectException( () -> { indexManager.createScope() @@ -658,9 +658,9 @@ public void decimalScale_tooLargeDecimal_scaleMinus2_bigInteger_lowerBound() { BigInteger tooLargeInteger = BigInteger.valueOf( Long.MIN_VALUE ).multiply( new BigInteger( "1000" ) ); SubTest.expectException( () -> { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, tooLargeInteger ) ); + plan.execute().join(); } ) .assertThrown() .isInstanceOf( SearchException.class ) @@ -675,9 +675,9 @@ public void defaultDecimalScale_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( defaultDecimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( defaultDecimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); + plan.execute().join(); // default decimal scale is 2, affecting the search precision // so the provided value 739.11111 will be treated as if it were 739.11 @@ -693,9 +693,9 @@ public void defaultDecimalScale_bigInteger() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( defaultIntegerScaleIndexMapping.scaled, new BigInteger( "7391111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( defaultIntegerScaleIndexMapping.scaled, new BigInteger( "7391111" ) ) ); + plan.execute().join(); // default decimal scale is -2, affecting the search precision // so the provided value 7391111 will be treated as if it were 7391100 @@ -711,9 +711,9 @@ public void decimalScale_andDefaultDecimalScale_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( bothDecimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( bothDecimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); + plan.execute().join(); // default decimal scale is 2 // decimal scale has been set to 3, overriding the default and affecting the search precision @@ -730,9 +730,9 @@ public void decimalScale_andDefaultDecimalScale_bigInteger() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( bothIntegerScaleIndexMapping.scaled, new BigInteger( "7391111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( bothIntegerScaleIndexMapping.scaled, new BigInteger( "7391111" ) ) ); + plan.execute().join(); // default decimal scale is -2, // decimal scale has been set to -3, overriding the default and affecting the search precision @@ -749,9 +749,9 @@ public void decimalScale_doesNotAffectProjections_bigDecimal() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( decimalScaleIndexMapping.scaled, new BigDecimal( "739.11111" ) ) ); + plan.execute().join(); // even though decimal scale is 3, projected values wont be affected to projection( new BigDecimal( "739.11111" ) ); @@ -765,9 +765,9 @@ public void decimalScale_doesNotAffectProjections_bigInteger() { indexManager -> this.indexManager = indexManager ) .setup(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "73911111" ) ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( "1" ), doc -> doc.addValue( integerScaleIndexMapping.scaled, new BigInteger( "73911111" ) ) ); + plan.execute().join(); // even though decimal scale is -7, projected values wont be affected to projection( new BigInteger( "73911111" ) ); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementBaseIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementBaseIT.java index 4a973c71e04..d4604513e49 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementBaseIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementBaseIT.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexedEmbeddedBindingContext; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexBindingContext; @@ -230,9 +230,9 @@ private void setNullValues(AllTypesMapping mapping, DocumentElement document) { } private void executeAdd(String id, Consumer documentContributor) { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( id ), documentContributor::accept ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( id ), documentContributor::accept ); + plan.execute().join(); } /** diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementMultiValuedIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementMultiValuedIT.java index 53308d94b2e..f54f6d32b78 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementMultiValuedIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/document/DocumentElementMultiValuedIT.java @@ -16,7 +16,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexBindingContext; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; import org.hibernate.search.util.common.SearchException; @@ -291,9 +291,9 @@ private void expectSingleValuedException(String id, String absoluteFieldPath, Co } private void executeAdd(String id, Consumer documentContributor) { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( id ), documentContributor::accept ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( id ), documentContributor::accept ); + plan.execute().join(); } private abstract static class AbstractObjectMapping { diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/indexnull/IndexNullAsValueIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/indexnull/IndexNullAsValueIT.java index 418ab227bd1..bb510ec107b 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/indexnull/IndexNullAsValueIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/indexnull/IndexNullAsValueIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.engine.spatial.GeoPoint; @@ -113,8 +113,8 @@ private void setUp() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_WITH_INDEX_NULL_AS_VALUES ), document -> { indexMapping.matchFieldModels.forEach( f -> f.indexNullAsValue.write( document ) ); @@ -123,7 +123,7 @@ private void initData() { } } ); - workPlan.add( + plan.add( referenceProvider( DOCUMENT_WITH_DIFFERENT_VALUES ), document -> { indexMapping.matchFieldModels.forEach( f -> f.differentValue.write( document ) ); @@ -132,7 +132,7 @@ private void initData() { } } ); - workPlan.add( + plan.add( referenceProvider( DOCUMENT_WITH_NULL_VALUES ), document -> { indexMapping.matchFieldModels.forEach( f -> f.nullValue.write( document ) ); @@ -141,7 +141,7 @@ private void initData() { } } ); - workPlan.execute().join(); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyBaseIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyBaseIT.java index 7c4e63c817f..2222447c0fd 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyBaseIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyBaseIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.TckBackendHelper; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; @@ -175,7 +175,7 @@ public void search_on_nested_object_only_returns_elements_of_the_tenant() { @Test public void delete_only_deletes_elements_of_the_tenant() { - IndexWorkPlan workPlan = indexManager.createWorkPlan( tenant2SessionContext ); + IndexIndexingPlan plan = indexManager.createIndexingPlan( tenant2SessionContext ); StubMappingScope scope = indexManager.createScope(); SearchQuery query = scope.query( tenant2SessionContext ) @@ -198,9 +198,9 @@ public void delete_only_deletes_elements_of_the_tenant() { b.list( STRING_VALUE_2, INTEGER_VALUE_4 ); } ); - workPlan.delete( referenceProvider( DOCUMENT_ID_1 ) ); + plan.delete( referenceProvider( DOCUMENT_ID_1 ) ); - workPlan.execute().join(); + plan.execute().join(); assertThat( query ) .hasDocRefHitsAnyOrder( INDEX_NAME, DOCUMENT_ID_2 ); @@ -226,7 +226,7 @@ public void delete_only_deletes_elements_of_the_tenant() { @Test public void update_only_updates_elements_of_the_tenant() { - IndexWorkPlan workPlan = indexManager.createWorkPlan( tenant2SessionContext ); + IndexIndexingPlan plan = indexManager.createIndexingPlan( tenant2SessionContext ); StubMappingScope scope = indexManager.createScope(); SearchQuery checkQuery = scope.query( tenant2SessionContext ) @@ -235,7 +235,7 @@ public void update_only_updates_elements_of_the_tenant() { assertThat( checkQuery ) .hasDocRefHitsAnyOrder( INDEX_NAME, DOCUMENT_ID_1, DOCUMENT_ID_2 ); - workPlan.update( referenceProvider( DOCUMENT_ID_2 ), document -> { + plan.update( referenceProvider( DOCUMENT_ID_2 ), document -> { document.addValue( indexMapping.string, UPDATED_STRING ); document.addValue( indexMapping.integer, INTEGER_VALUE_4 ); @@ -244,7 +244,7 @@ public void update_only_updates_elements_of_the_tenant() { nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_4 ); } ); - workPlan.execute().join(); + plan.execute().join(); // The tenant 2 has been updated properly. @@ -347,9 +347,9 @@ public void not_using_multi_tenancy_for_add_while_enabled_throws_exception() { thrown.expectMessage( "Backend" ); thrown.expectMessage( "has multi-tenancy enabled, but no tenant identifier is provided." ); - IndexWorkPlan workPlan = indexManager.createWorkPlan( new StubBackendSessionContext() ); + IndexIndexingPlan plan = indexManager.createIndexingPlan( new StubBackendSessionContext() ); - workPlan.add( referenceProvider( DOCUMENT_ID_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_ID_3 ), document -> { document.addValue( indexMapping.string, STRING_VALUE_3 ); document.addValue( indexMapping.integer, INTEGER_VALUE_5 ); @@ -358,7 +358,7 @@ public void not_using_multi_tenancy_for_add_while_enabled_throws_exception() { nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_5 ); } ); - workPlan.execute().join(); + plan.execute().join(); } @Test @@ -367,9 +367,9 @@ public void not_using_multi_tenancy_for_update_while_enabled_throws_exception() thrown.expectMessage( "Backend" ); thrown.expectMessage( "has multi-tenancy enabled, but no tenant identifier is provided." ); - IndexWorkPlan workPlan = indexManager.createWorkPlan( new StubBackendSessionContext() ); + IndexIndexingPlan plan = indexManager.createIndexingPlan( new StubBackendSessionContext() ); - workPlan.update( referenceProvider( DOCUMENT_ID_2 ), document -> { + plan.update( referenceProvider( DOCUMENT_ID_2 ), document -> { document.addValue( indexMapping.string, UPDATED_STRING ); document.addValue( indexMapping.integer, INTEGER_VALUE_4 ); @@ -378,7 +378,7 @@ public void not_using_multi_tenancy_for_update_while_enabled_throws_exception() nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_4 ); } ); - workPlan.execute().join(); + plan.execute().join(); } @Test @@ -387,14 +387,14 @@ public void not_using_multi_tenancy_for_delete_while_enabled_throws_exception() thrown.expectMessage( "Backend" ); thrown.expectMessage( "has multi-tenancy enabled, but no tenant identifier is provided." ); - IndexWorkPlan workPlan = indexManager.createWorkPlan( new StubBackendSessionContext() ); - workPlan.delete( referenceProvider( DOCUMENT_ID_1 ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan( new StubBackendSessionContext() ); + plan.delete( referenceProvider( DOCUMENT_ID_1 ) ); + plan.execute().join(); } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan( tenant1SessionContext ); - workPlan.add( referenceProvider( DOCUMENT_ID_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan( tenant1SessionContext ); + plan.add( referenceProvider( DOCUMENT_ID_1 ), document -> { document.addValue( indexMapping.string, STRING_VALUE_1 ); document.addValue( indexMapping.integer, INTEGER_VALUE_1 ); @@ -403,7 +403,7 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_ID_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_ID_2 ), document -> { document.addValue( indexMapping.string, STRING_VALUE_2 ); document.addValue( indexMapping.integer, INTEGER_VALUE_2 ); @@ -412,10 +412,10 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_2 ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = indexManager.createWorkPlan( tenant2SessionContext ); - workPlan.add( referenceProvider( DOCUMENT_ID_1 ), document -> { + plan = indexManager.createIndexingPlan( tenant2SessionContext ); + plan.add( referenceProvider( DOCUMENT_ID_1 ), document -> { document.addValue( indexMapping.string, STRING_VALUE_1 ); document.addValue( indexMapping.integer, INTEGER_VALUE_3 ); @@ -424,7 +424,7 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_3 ); } ); - workPlan.add( referenceProvider( DOCUMENT_ID_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_ID_2 ), document -> { document.addValue( indexMapping.string, STRING_VALUE_2 ); document.addValue( indexMapping.integer, INTEGER_VALUE_4 ); @@ -433,7 +433,7 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, INTEGER_VALUE_4 ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyMismatchIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyMismatchIT.java index c71831bfb6e..b36bb806521 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyMismatchIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/multitenancy/MultiTenancyMismatchIT.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Projectable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; import org.hibernate.search.util.common.SearchException; import org.hibernate.search.util.impl.integrationtest.common.stub.StubBackendSessionContext; @@ -94,9 +94,9 @@ public void using_multi_tenancy_for_add_while_disabled_throws_exception() { thrown.expectMessage( "Tenant identifier" ); thrown.expectMessage( "is provided, but multi-tenancy is disabled for this backend" ); - IndexWorkPlan workPlan = indexManager.createWorkPlan( tenant1SessionContext ); - workPlan.update( referenceProvider( "1" ), document -> { } ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan( tenant1SessionContext ); + plan.update( referenceProvider( "1" ), document -> { } ); + plan.execute().join(); } @Test @@ -113,9 +113,9 @@ public void using_multi_tenancy_for_update_while_disabled_throws_exception() { thrown.expectMessage( "Tenant identifier" ); thrown.expectMessage( "is provided, but multi-tenancy is disabled for this backend" ); - IndexWorkPlan workPlan = indexManager.createWorkPlan( tenant1SessionContext ); - workPlan.update( referenceProvider( "1" ), document -> { } ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan( tenant1SessionContext ); + plan.update( referenceProvider( "1" ), document -> { } ); + plan.execute().join(); } @Test @@ -132,9 +132,9 @@ public void using_multi_tenancy_for_delete_while_disabled_throws_exception() { thrown.expectMessage( "Tenant identifier" ); thrown.expectMessage( "is provided, but multi-tenancy is disabled for this backend" ); - IndexWorkPlan workPlan = indexManager.createWorkPlan( tenant1SessionContext ); - workPlan.delete( referenceProvider( "1" ) ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan( tenant1SessionContext ); + plan.delete( referenceProvider( "1" ) ); + plan.execute().join(); } private static class IndexMapping { diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/SearchMultiIndexIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/SearchMultiIndexIT.java index c2b47e0a40c..9978ba07cf0 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/SearchMultiIndexIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/SearchMultiIndexIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.types.Projectable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; import org.hibernate.search.engine.reporting.spi.EventContexts; import org.hibernate.search.engine.backend.common.DocumentReference; @@ -297,22 +297,22 @@ public void search_across_backends_throws_exception() { private void initData() { // Backend 1 / Index 1 - IndexWorkPlan workPlan = indexManager_1_1.createWorkPlan(); + IndexIndexingPlan plan = indexManager_1_1.createIndexingPlan(); - workPlan.add( referenceProvider( DOCUMENT_1_1_1 ), document -> { + plan.add( referenceProvider( DOCUMENT_1_1_1 ), document -> { document.addValue( indexMapping_1_1.string, STRING_1 ); document.addValue( indexMapping_1_1.additionalField, ADDITIONAL_FIELD_1_1_1 ); document.addValue( indexMapping_1_1.differentTypesField, DIFFERENT_TYPES_FIELD_1_1_1 ); document.addValue( indexMapping_1_1.sortField, SORT_FIELD_1_1_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_1_1_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_1_1_2 ), document -> { document.addValue( indexMapping_1_1.string, STRING_2 ); document.addValue( indexMapping_1_1.additionalField, ADDITIONAL_FIELD_1_1_2 ); document.addValue( indexMapping_1_1.differentTypesField, DIFFERENT_TYPES_FIELD_1_1_2 ); document.addValue( indexMapping_1_1.sortField, SORT_FIELD_1_1_2 ); } ); - workPlan.execute().join(); + plan.execute().join(); StubMappingScope scope = indexManager_1_1.createScope(); SearchQuery query = scope.query() @@ -322,15 +322,15 @@ private void initData() { // Backend 1 / Index 2 - workPlan = indexManager_1_2.createWorkPlan(); + plan = indexManager_1_2.createIndexingPlan(); - workPlan.add( referenceProvider( DOCUMENT_1_2_1 ), document -> { + plan.add( referenceProvider( DOCUMENT_1_2_1 ), document -> { document.addValue( indexMapping_1_2.string, STRING_1 ); document.addValue( indexMapping_1_2.differentTypesField, DIFFERENT_TYPES_FIELD_1_2_1 ); document.addValue( indexMapping_1_2.sortField, SORT_FIELD_1_2_1 ); } ); - workPlan.execute().join(); + plan.execute().join(); scope = indexManager_1_2.createScope(); query = scope.query() @@ -340,16 +340,16 @@ private void initData() { // Backend 2 / Index 1 - workPlan = indexManager_2_1.createWorkPlan(); + plan = indexManager_2_1.createIndexingPlan(); - workPlan.add( referenceProvider( DOCUMENT_2_1_1 ), document -> { + plan.add( referenceProvider( DOCUMENT_2_1_1 ), document -> { document.addValue( indexMapping_2_1.string, STRING_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2_1_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2_1_2 ), document -> { document.addValue( indexMapping_2_1.string, STRING_2 ); } ); - workPlan.execute().join(); + plan.execute().join(); scope = indexManager_2_1.createScope(); query = scope.query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/AggregationBaseIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/AggregationBaseIT.java index f295e6aa2d2..dddfcf6a500 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/AggregationBaseIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/AggregationBaseIT.java @@ -16,7 +16,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Aggregable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.aggregation.AggregationKey; import org.hibernate.search.engine.search.aggregation.dsl.AggregationFinalStep; @@ -96,19 +96,19 @@ public void extension() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.string, STRING_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.string, STRING_2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.string, STRING_1 ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); + plan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/RangeAggregationSpecificsIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/RangeAggregationSpecificsIT.java index 16f4aed1652..aca52f6da86 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/RangeAggregationSpecificsIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/RangeAggregationSpecificsIT.java @@ -25,7 +25,7 @@ import org.hibernate.search.engine.backend.types.Aggregable; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.aggregation.AggregationKey; import org.hibernate.search.engine.search.query.dsl.SearchQueryOptionsStep; @@ -503,16 +503,16 @@ private void assumeNonCanonicalRangesSupported() { private void initData() { List documentFieldValues = ascendingValues.subList( 0, 7 ); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); for ( int i = 0; i < documentFieldValues.size(); i++ ) { F value = documentFieldValues.get( i ); - workPlan.add( referenceProvider( "document_" + i ), document -> { + plan.add( referenceProvider( "document_" + i ), document -> { document.addValue( indexMapping.fieldModel.reference, value ); document.addValue( indexMapping.fieldWithConverterModel.reference, value ); } ); } - workPlan.add( referenceProvider( "document_empty" ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( "document_empty" ), document -> { } ); + plan.execute().join(); // Check that all documents are searchable SearchResultAssert.assertThat( diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/SingleFieldAggregationBaseIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/SingleFieldAggregationBaseIT.java index d7ae243f89e..0f988c5c199 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/SingleFieldAggregationBaseIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/SingleFieldAggregationBaseIT.java @@ -29,7 +29,7 @@ import org.hibernate.search.engine.backend.types.converter.runtime.FromDocumentFieldValueConvertContext; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.search.aggregation.AggregationKey; import org.hibernate.search.engine.search.aggregation.SearchAggregation; import org.hibernate.search.engine.search.common.ValueConvert; @@ -748,10 +748,10 @@ private void initData() { List otherIndexDocumentFieldValues = expectations.getOtherIndexDocumentFieldValues(); List> multiValuedIndexDocumentFieldValues = expectations.getMultiValuedIndexDocumentFieldValues(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); for ( int i = 0; i < mainIndexDocumentFieldValues.size(); i++ ) { F value = mainIndexDocumentFieldValues.get( i ); - workPlan.add( referenceProvider( "document_" + i ), document -> { + plan.add( referenceProvider( "document_" + i ), document -> { document.addValue( indexMapping.fieldModel.reference, value ); document.addValue( indexMapping.fieldWithConverterModel.reference, value ); @@ -764,46 +764,46 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.fieldModel.reference, value ); } ); } - workPlan.add( referenceProvider( "document_empty" ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( "document_empty" ), document -> { } ); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); + plan = compatibleIndexManager.createIndexingPlan(); for ( int i = 0; i < otherIndexDocumentFieldValues.size(); i++ ) { F value = otherIndexDocumentFieldValues.get( i ); - workPlan.add( referenceProvider( "compatibleindex_document_" + i ), document -> { + plan.add( referenceProvider( "compatibleindex_document_" + i ), document -> { document.addValue( compatibleIndexMapping.fieldModel.reference, value ); document.addValue( compatibleIndexMapping.fieldWithConverterModel.reference, value ); } ); } - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); for ( int i = 0; i < otherIndexDocumentFieldValues.size(); i++ ) { F value = otherIndexDocumentFieldValues.get( i ); - workPlan.add( referenceProvider( "rawcompatibleindex_document_" + i ), document -> { + plan.add( referenceProvider( "rawcompatibleindex_document_" + i ), document -> { document.addValue( rawFieldCompatibleIndexMapping.fieldWithConverterModel.reference, value ); } ); } - workPlan.execute().join(); + plan.execute().join(); - workPlan = nullOnlyIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( "nullOnlyIndexManager_document_0" ), document -> { + plan = nullOnlyIndexManager.createIndexingPlan(); + plan.add( referenceProvider( "nullOnlyIndexManager_document_0" ), document -> { document.addValue( nullOnlyIndexMapping.fieldModel.reference, null ); } ); - workPlan.execute().join(); + plan.execute().join(); if ( TckConfiguration.get().getBackendFeatures().aggregationsOnMultiValuedFields( typeDescriptor.getJavaType() ) ) { - workPlan = multiValuedIndexManager.createWorkPlan(); + plan = multiValuedIndexManager.createIndexingPlan(); for ( int i = 0; i < multiValuedIndexDocumentFieldValues.size(); i++ ) { List values = multiValuedIndexDocumentFieldValues.get( i ); - workPlan.add( referenceProvider( "document_" + i ), document -> { + plan.add( referenceProvider( "document_" + i ), document -> { for ( F value : values ) { document.addValue( multiValuedIndexMapping.fieldModel.reference, value ); } } ); } - workPlan.add( referenceProvider( "document_empty" ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( "document_empty" ), document -> { } ); + plan.execute().join(); } // Check that all documents are searchable diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/TermsAggregationSpecificsIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/TermsAggregationSpecificsIT.java index 8c8c1a3ccac..dc58f32a01e 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/TermsAggregationSpecificsIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/aggregation/TermsAggregationSpecificsIT.java @@ -26,7 +26,7 @@ import org.hibernate.search.engine.backend.types.Aggregable; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.aggregation.AggregationKey; import org.hibernate.search.engine.search.query.dsl.SearchQueryOptionsStep; @@ -606,21 +606,21 @@ private void assumeNonDefaultOrdersSupported() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); int documentCount = 0; for ( Map.Entry> entry : documentIdPerTerm.entrySet() ) { F value = entry.getKey(); for ( String documentId : entry.getValue() ) { - workPlan.add( referenceProvider( documentId ), document -> { + plan.add( referenceProvider( documentId ), document -> { document.addValue( indexMapping.fieldModel.reference, value ); document.addValue( indexMapping.fieldWithConverterModel.reference, value ); } ); ++documentCount; } } - workPlan.add( referenceProvider( "document_empty" ), document -> { } ); + plan.add( referenceProvider( "document_empty" ), document -> { } ); ++documentCount; - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchResultAssert.assertThat( diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/bool/BooleanSortAndRangePredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/bool/BooleanSortAndRangePredicateIT.java index e8e559f7db9..d712adfb032 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/bool/BooleanSortAndRangePredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/bool/BooleanSortAndRangePredicateIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Sortable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.predicate.dsl.PredicateFinalStep; import org.hibernate.search.engine.search.sort.dsl.SortFinalStep; @@ -174,24 +174,24 @@ private boolean isNullDocument(DocumentReference documentReference) { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.bool, true ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.bool, Boolean.FALSE ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.bool, Boolean.TRUE ); } ); - workPlan.add( referenceProvider( DOCUMENT_4 ), document -> { + plan.add( referenceProvider( DOCUMENT_4 ), document -> { document.addValue( indexMapping.bool, null ); } ); - workPlan.add( referenceProvider( DOCUMENT_5 ), document -> { + plan.add( referenceProvider( DOCUMENT_5 ), document -> { document.addValue( indexMapping.bool, false ); } ); - workPlan.execute().join(); + plan.execute().join(); checkAllDocumentsAreSearchable(); } diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/BoolSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/BoolSearchPredicateIT.java index 4c738984a98..84bcdee7214 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/BoolSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/BoolSearchPredicateIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.search.predicate.dsl.MinimumShouldMatchConditionStep; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; @@ -1029,22 +1029,22 @@ public void minimumShouldMatch_default_withinFilter_filterSibling() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.field1, FIELD1_VALUE1 ); document.addValue( indexMapping.field2, FIELD2_VALUE1 ); document.addValue( indexMapping.field3, FIELD3_VALUE1 ); document.addValue( indexMapping.field4, FIELD4_VALUE1AND2 ); document.addValue( indexMapping.field5, FIELD5_VALUE1AND2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.field1, FIELD1_VALUE2 ); document.addValue( indexMapping.field2, FIELD2_VALUE2 ); document.addValue( indexMapping.field3, FIELD3_VALUE2 ); document.addValue( indexMapping.field4, FIELD4_VALUE1AND2 ); document.addValue( indexMapping.field5, FIELD5_VALUE1AND2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.field1, FIELD1_VALUE3 ); document.addValue( indexMapping.field2, FIELD2_VALUE3 ); document.addValue( indexMapping.field3, FIELD3_VALUE3 ); @@ -1052,7 +1052,7 @@ private void initData() { document.addValue( indexMapping.field5, FIELD5_VALUE3 ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/ExistsSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/ExistsSearchPredicateIT.java index 969a8b205b9..b408d0aacd5 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/ExistsSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/ExistsSearchPredicateIT.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; @@ -382,8 +382,8 @@ public void multiIndex_withIncompatibleIndexManager() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.supportedFieldWithDocValuesModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.string1Field.document1Value.write( document ); @@ -405,7 +405,7 @@ private void initData() { indexMapping.nestedObject.supportedFieldModels.forEach( f -> f.document2Value.write( nestedObject2 ) ); indexMapping.nestedObject.supportedFieldWithDocValuesModels.forEach( f -> f.document2Value.write( nestedObject2 ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.supportedFieldWithDocValuesModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.string2Field.document2Value.write( document ); @@ -422,7 +422,7 @@ private void initData() { indexMapping.nestedObject.supportedFieldModels.forEach( f -> f.document2Value.write( nestedObject2 ) ); indexMapping.nestedObject.supportedFieldWithDocValuesModels.forEach( f -> f.document2Value.write( nestedObject2 ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.string1Field.document3Value.write( document ); // Add two empty objects @@ -433,20 +433,20 @@ private void initData() { document.addObject( indexMapping.nestedObject.self ); document.addObject( indexMapping.nestedObject.self ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( EMPTY ), document -> { } ); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { compatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { rawFieldCompatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchQuery query = indexManager.createScope().query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchAllSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchAllSearchPredicateIT.java index 0a505505967..6cbf36b7088 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchAllSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchAllSearchPredicateIT.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; @@ -113,18 +113,18 @@ public void matchAll_multipleExcepts() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.string, STRING_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.string, STRING_2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.string, STRING_3 ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdSearchPredicateIT.java index 86f41093780..38aa4cd8985 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdSearchPredicateIT.java @@ -12,7 +12,7 @@ import java.util.Arrays; import org.hibernate.search.engine.backend.document.DocumentElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; @@ -119,11 +119,11 @@ public void match_any_ids() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { } ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_2 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_3 ), document -> { } ); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdWithConverterSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdWithConverterSearchPredicateIT.java index bb11304e2a7..6e490768b84 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdWithConverterSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchIdWithConverterSearchPredicateIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.types.converter.spi.ToDocumentIdentifierValueConverter; import org.hibernate.search.engine.backend.types.converter.runtime.spi.ToDocumentIdentifierValueConvertContext; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; @@ -143,11 +143,11 @@ public void match_any_ids() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { } ); - workPlan.execute().join(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_2 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_3 ), document -> { } ); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchSearchPredicateIT.java index 326e50e0d96..70a89525f83 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/MatchSearchPredicateIT.java @@ -19,7 +19,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; @@ -1334,8 +1334,8 @@ public void multiIndex_incompatibleSearchable() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document1Value.write( document ) ); @@ -1351,7 +1351,7 @@ private void initData() { indexMapping.whitespaceLowercaseAnalyzedField.document1Value.write( document ); indexMapping.scaledBigDecimal.document1Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document2Value.write( document ) ); @@ -1367,8 +1367,8 @@ private void initData() { indexMapping.whitespaceLowercaseAnalyzedField.document2Value.write( document ); indexMapping.scaledBigDecimal.document2Value.write( document ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( EMPTY ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.string1Field.document3Value.write( document ); indexMapping.string2Field.document3Value.write( document ); indexMapping.string3Field.document3Value.write( document ); @@ -1381,32 +1381,32 @@ private void initData() { indexMapping.whitespaceLowercaseAnalyzedField.document3Value.write( document ); indexMapping.scaledBigDecimal.document3Value.write( document ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { compatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); compatibleIndexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { rawFieldCompatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = incompatibleAnalyzerIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( INCOMPATIBLE_ANALYZER_INDEX_DOCUMENT_1 ), document -> { + plan = incompatibleAnalyzerIndexManager.createIndexingPlan(); + plan.add( referenceProvider( INCOMPATIBLE_ANALYZER_INDEX_DOCUMENT_1 ), document -> { incompatibleAnalyzerIndexMapping.analyzedStringField.document1Value.write( document ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = incompatibleDecimalScaleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( INCOMPATIBLE_DECIMAL_SCALE_INDEX_DOCUMENT_1 ), document -> { + plan = incompatibleDecimalScaleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( INCOMPATIBLE_DECIMAL_SCALE_INDEX_DOCUMENT_1 ), document -> { incompatibleDecimalScaleIndexMapping.scaledBigDecimal.document1Value.write( document ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchQuery query = indexManager.createScope().query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/NestedSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/NestedSearchPredicateIT.java index d8a8b9dad5f..5f8cb7dfe17 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/NestedSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/NestedSearchPredicateIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; @@ -224,8 +224,8 @@ public void search_nestedOnTwoLevels_separatePredicates() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { ObjectMapping level1; SecondLevelObjectMapping level2; DocumentElement object; @@ -262,7 +262,7 @@ private void initData() { object.addNullObject( level2.self ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { ObjectMapping level1 = indexMapping.nestedObject; DocumentElement object = document.addObject( level1.self ); SecondLevelObjectMapping level2 = level1.nestedObject; @@ -294,7 +294,7 @@ private void initData() { object = document.addObject( level1.self ); } ); - workPlan.add( referenceProvider( "neverMatching" ), document -> { + plan.add( referenceProvider( "neverMatching" ), document -> { ObjectMapping level1 = indexMapping.nestedObject; SecondLevelObjectMapping level2 = level1.nestedObject; @@ -335,9 +335,9 @@ private void initData() { secondLevelObject.addValue( level2.field2, NON_MATCHING_SECOND_LEVEL_CONDITION1_FIELD2 ); } ); - workPlan.add( referenceProvider( "empty" ), document -> { } ); + plan.add( referenceProvider( "empty" ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/PhraseSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/PhraseSearchPredicateIT.java index c4aa44717bb..94b7c4a68d6 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/PhraseSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/PhraseSearchPredicateIT.java @@ -19,7 +19,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.reporting.spi.EventContexts; @@ -730,55 +730,55 @@ public void multiIndex_incompatibleSearchable() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_EXACT_MATCH ); document.addValue( indexMapping.analyzedStringFieldWithDslConverter.reference, PHRASE_1_TEXT_EXACT_MATCH ); document.addValue( indexMapping.whitespaceAnalyzedField.reference, PHRASE_1_TEXT_EXACT_MATCH.toLowerCase( Locale.ROOT ) ); document.addValue( indexMapping.whitespaceLowercaseAnalyzedField.reference, PHRASE_1_TEXT_EXACT_MATCH.toLowerCase( Locale.ROOT ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_SLOP_1_MATCH ); document.addValue( indexMapping.analyzedStringField2.reference, PHRASE_2_TEXT_EXACT_MATCH ); document.addValue( indexMapping.whitespaceAnalyzedField.reference, PHRASE_1_TEXT_EXACT_MATCH.toUpperCase( Locale.ROOT ) ); document.addValue( indexMapping.whitespaceLowercaseAnalyzedField.reference, PHRASE_1_TEXT_EXACT_MATCH.toUpperCase( Locale.ROOT ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_SLOP_2_MATCH ); document.addValue( indexMapping.analyzedStringField2.reference, PHRASE_3_TEXT_EXACT_MATCH ); document.addValue( indexMapping.analyzedStringField3.reference, PHRASE_1_TEXT_EXACT_MATCH ); document.addValue( indexMapping.whitespaceAnalyzedField.reference, PHRASE_1_TEXT_EXACT_MATCH ); document.addValue( indexMapping.whitespaceLowercaseAnalyzedField.reference, PHRASE_1_TEXT_EXACT_MATCH ); } ); - workPlan.add( referenceProvider( DOCUMENT_4 ), document -> { + plan.add( referenceProvider( DOCUMENT_4 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_SLOP_3_MATCH ); document.addValue( indexMapping.analyzedStringField3.reference, PHRASE_2_TEXT_EXACT_MATCH ); } ); - workPlan.add( referenceProvider( DOCUMENT_5 ), document -> { + plan.add( referenceProvider( DOCUMENT_5 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, PHRASE_2_TEXT_EXACT_MATCH ); document.addValue( indexMapping.analyzedStringField2.reference, PHRASE_1_TEXT_EXACT_MATCH ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { + plan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { document.addValue( compatibleIndexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_EXACT_MATCH ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { document.addValue( rawFieldCompatibleIndexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_EXACT_MATCH ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = incompatibleAnalyzerIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( INCOMPATIBLE_ANALYZER_INDEX_DOCUMENT_1 ), document -> { + plan = incompatibleAnalyzerIndexManager.createIndexingPlan(); + plan.add( referenceProvider( INCOMPATIBLE_ANALYZER_INDEX_DOCUMENT_1 ), document -> { document.addValue( incompatibleAnalyzerIndexMapping.analyzedStringField1.reference, PHRASE_1_TEXT_EXACT_MATCH ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/RangeSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/RangeSearchPredicateIT.java index 54370fb2c70..8e9db4e0b0f 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/RangeSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/RangeSearchPredicateIT.java @@ -26,7 +26,7 @@ import org.hibernate.search.integrationtest.backend.tck.testsupport.types.expectations.RangePredicateExpectations; import org.hibernate.search.integrationtest.backend.tck.testsupport.types.FieldTypeDescriptor; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.reporting.spi.EventContexts; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingIndexManager; import org.hibernate.search.engine.backend.common.DocumentReference; @@ -983,8 +983,8 @@ public void multiIndex_incompatibleSearchable() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document1Value.write( document ) ); @@ -995,7 +995,7 @@ private void initData() { indexMapping.string2FieldWithDslConverter.document1Value.write( document ); indexMapping.scaledBigDecimal.document1Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document2Value.write( document ) ); @@ -1006,7 +1006,7 @@ private void initData() { indexMapping.string2FieldWithDslConverter.document2Value.write( document ); indexMapping.scaledBigDecimal.document2Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document3Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document3Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document3Value.write( document ) ); @@ -1017,27 +1017,27 @@ private void initData() { indexMapping.string2FieldWithDslConverter.document3Value.write( document ); indexMapping.scaledBigDecimal.document3Value.write( document ); } ); - workPlan.add( referenceProvider( EMPTY_ID ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( EMPTY_ID ), document -> { } ); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { rawFieldCompatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = incompatibleDecimalScaleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( INCOMPATIBLE_DECIMAL_SCALE_INDEX_DOCUMENT_1 ), document -> { + plan = incompatibleDecimalScaleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( INCOMPATIBLE_DECIMAL_SCALE_INDEX_DOCUMENT_1 ), document -> { incompatibleDecimalScaleIndexMapping.scaledBigDecimal.document1Value.write( document ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchQuery query = indexManager.createScope().query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SearchPredicateIT.java index 024ab80e0f5..93badce1345 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SearchPredicateIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.predicate.SearchPredicate; import org.hibernate.search.engine.search.predicate.dsl.PredicateFinalStep; @@ -340,16 +340,16 @@ public void extension() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.string, STRING_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.string, STRING_2 ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); + plan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SimpleQueryStringSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SimpleQueryStringSearchPredicateIT.java index b8cf15ffb73..e4a91532dae 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SimpleQueryStringSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/SimpleQueryStringSearchPredicateIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; @@ -828,8 +828,8 @@ public void multiIndex_incompatibleSearchable() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_TERM_1_AND_TERM_2 ); document.addValue( indexMapping.analyzedStringFieldWithDslConverter.reference, TEXT_TERM_1_AND_TERM_2 ); document.addValue( indexMapping.analyzedStringField2.reference, TEXT_TERM_1_AND_TERM_3 ); @@ -838,48 +838,48 @@ private void initData() { document.addValue( indexMapping.whitespaceAnalyzedField.reference, TEXT_TERM_1_AND_TERM_2.toLowerCase( Locale.ROOT ) ); document.addValue( indexMapping.whitespaceLowercaseAnalyzedField.reference, TEXT_TERM_1_AND_TERM_2.toLowerCase( Locale.ROOT ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_TERM_1_AND_TERM_3 ); document.addValue( indexMapping.analyzedStringField4.reference, PREFIX_2 ); document.addValue( indexMapping.whitespaceAnalyzedField.reference, TEXT_TERM_1_AND_TERM_2.toUpperCase( Locale.ROOT ) ); document.addValue( indexMapping.whitespaceLowercaseAnalyzedField.reference, TEXT_TERM_1_AND_TERM_2.toUpperCase( Locale.ROOT ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_TERM_2_IN_PHRASE ); document.addValue( indexMapping.analyzedStringField4.reference, PREFIX_3 ); document.addValue( indexMapping.whitespaceAnalyzedField.reference, TEXT_TERM_1_AND_TERM_2 ); document.addValue( indexMapping.whitespaceLowercaseAnalyzedField.reference, TEXT_TERM_1_AND_TERM_2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_4 ), document -> { + plan.add( referenceProvider( DOCUMENT_4 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_TERM_4_IN_PHRASE_SLOP_2 ); document.addValue( indexMapping.analyzedStringField2.reference, TEXT_TERM_2_IN_PHRASE ); document.addValue( indexMapping.analyzedStringField4.reference, PREFIX_4 ); } ); - workPlan.add( referenceProvider( DOCUMENT_5 ), document -> { + plan.add( referenceProvider( DOCUMENT_5 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_TERM_1_EDIT_DISTANCE_1 ); document.addValue( indexMapping.analyzedStringField3.reference, TEXT_TERM_2_IN_PHRASE ); document.addValue( indexMapping.analyzedStringField3.reference, TEXT_TERM_1_AND_TERM_3 ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { + plan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { document.addValue( compatibleIndexMapping.analyzedStringField1.reference, TEXT_TERM_1_AND_TERM_2 ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { document.addValue( rawFieldCompatibleIndexMapping.analyzedStringField1.reference, TEXT_TERM_1_AND_TERM_2 ); } ); - workPlan.execute().join(); - workPlan = incompatibleAnalyzerIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( INCOMPATIBLE_ANALYZER_INDEX_DOCUMENT_1 ), document -> { + plan.execute().join(); + plan = incompatibleAnalyzerIndexManager.createIndexingPlan(); + plan.add( referenceProvider( INCOMPATIBLE_ANALYZER_INDEX_DOCUMENT_1 ), document -> { document.addValue( incompatibleAnalyzerIndexMapping.analyzedStringField1.reference, TEXT_TERM_1_AND_TERM_2 ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/WildcardSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/WildcardSearchPredicateIT.java index d37e0ed7476..a3c0951ea94 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/WildcardSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/predicate/WildcardSearchPredicateIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.reporting.spi.EventContexts; @@ -503,42 +503,42 @@ public void multiIndex_incompatibleSearchable() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_MATCHING_PATTERN_1 ); document.addValue( indexMapping.analyzedStringFieldWithDslConverter.reference, TEXT_MATCHING_PATTERN_1 ); document.addValue( indexMapping.normalizedField.reference, TERM_MATCHING_PATTERN_1 ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_MATCHING_PATTERN_2 ); document.addValue( indexMapping.normalizedField.reference, TERM_MATCHING_PATTERN_2 ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_MATCHING_PATTERN_3 ); document.addValue( indexMapping.normalizedField.reference, TERM_MATCHING_PATTERN_2_AND_3 ); } ); - workPlan.add( referenceProvider( DOCUMENT_4 ), document -> { + plan.add( referenceProvider( DOCUMENT_4 ), document -> { document.addValue( indexMapping.analyzedStringField1.reference, TEXT_MATCHING_PATTERN_2_AND_3 ); } ); - workPlan.add( referenceProvider( DOCUMENT_5 ), document -> { + plan.add( referenceProvider( DOCUMENT_5 ), document -> { document.addValue( indexMapping.analyzedStringField2.reference, TEXT_MATCHING_PATTERN_1 ); document.addValue( indexMapping.analyzedStringField3.reference, TEXT_MATCHING_PATTERN_3 ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { + plan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { document.addValue( compatibleIndexMapping.analyzedStringField1.reference, TEXT_MATCHING_PATTERN_1 ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { document.addValue( rawFieldCompatibleIndexMapping.analyzedStringField1.reference, TEXT_MATCHING_PATTERN_1 ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/CompositeSearchProjectionIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/CompositeSearchProjectionIT.java index 2f876398999..3c9e1302153 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/CompositeSearchProjectionIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/CompositeSearchProjectionIT.java @@ -21,7 +21,7 @@ import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.StandardFieldMapper; @@ -326,24 +326,24 @@ public void nestedComposite() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.author.document1Value.write( document ); indexMapping.title.document1Value.write( document ); indexMapping.releaseDate.document1Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.author.document2Value.write( document ); indexMapping.title.document2Value.write( document ); indexMapping.releaseDate.document2Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.author.document3Value.write( document ); indexMapping.title.document3Value.write( document ); indexMapping.releaseDate.document3Value.write( document ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/FieldSearchProjectionIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/FieldSearchProjectionIT.java index 472574160e8..4206598245f 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/FieldSearchProjectionIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/FieldSearchProjectionIT.java @@ -26,7 +26,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.common.ValueConvert; import org.hibernate.search.engine.search.query.SearchQuery; @@ -593,8 +593,8 @@ public void multiIndex_withIncompatibleIndexManager_inNestedObject() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.supportedFieldWithProjectionConverterModels.forEach( f -> f.document1Value.write( document ) ); @@ -608,7 +608,7 @@ private void initData() { DocumentElement nestedObject = document.addObject( indexMapping.nestedObject.self ); indexMapping.nestedObject.supportedFieldModels.forEach( f -> f.document1Value.write( nestedObject ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.supportedFieldWithProjectionConverterModels.forEach( f -> f.document2Value.write( document ) ); @@ -622,7 +622,7 @@ private void initData() { DocumentElement nestedObject = document.addObject( indexMapping.nestedObject.self ); indexMapping.nestedObject.supportedFieldModels.forEach( f -> f.document2Value.write( nestedObject ) ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document3Value.write( document ) ); indexMapping.supportedFieldWithProjectionConverterModels.forEach( f -> f.document3Value.write( document ) ); @@ -636,21 +636,21 @@ private void initData() { DocumentElement nestedObject = document.addObject( indexMapping.nestedObject.self ); indexMapping.nestedObject.supportedFieldModels.forEach( f -> f.document3Value.write( nestedObject ) ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( EMPTY ), document -> { } ); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { compatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); compatibleIndexMapping.supportedFieldWithProjectionConverterModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { rawFieldCompatibleIndexMapping.supportedFieldWithProjectionConverterModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchQuery query = indexManager.createScope().query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/SearchProjectionIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/SearchProjectionIT.java index 85539872715..9f62640a6b5 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/SearchProjectionIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/projection/SearchProjectionIT.java @@ -23,7 +23,7 @@ import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.projection.SearchProjection; import org.hibernate.search.engine.search.projection.dsl.SearchProjectionFactory; @@ -536,8 +536,8 @@ public void extension() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.string1Field.document1Value.write( document ); indexMapping.string2Field.document1Value.write( document ); @@ -552,7 +552,7 @@ private void initData() { DocumentElement flattedDocument = nestedDocument.addObject( indexMapping.flattenedObject ); indexMapping.flattenedField.document1Value.write( flattedDocument ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.string1Field.document2Value.write( document ); indexMapping.string2Field.document2Value.write( document ); @@ -567,7 +567,7 @@ private void initData() { DocumentElement flattedDocument = nestedDocument.addObject( indexMapping.flattenedObject ); indexMapping.flattenedField.document2Value.write( flattedDocument ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.string1Field.document3Value.write( document ); indexMapping.string2Field.document3Value.write( document ); @@ -582,9 +582,9 @@ private void initData() { DocumentElement flattedDocument = nestedDocument.addObject( indexMapping.flattenedObject ); indexMapping.flattenedField.document3Value.write( flattedDocument ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); + plan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryResultLoadingOrTransformingIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryResultLoadingOrTransformingIT.java index ed26d8e7290..8ebc880747e 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryResultLoadingOrTransformingIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryResultLoadingOrTransformingIT.java @@ -24,7 +24,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; import org.hibernate.search.engine.backend.types.Projectable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.loading.context.spi.LoadingContext; import org.hibernate.search.engine.search.loading.spi.DefaultProjectionHitMapper; @@ -547,8 +547,8 @@ public void failedEntityLoading_skipHit() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( MAIN_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( MAIN_ID ), document -> { document.addValue( indexMapping.string, STRING_VALUE ); document.addValue( indexMapping.string_analyzed, STRING_ANALYZED_VALUE ); document.addValue( indexMapping.integer, INTEGER_VALUE ); @@ -566,9 +566,9 @@ private void initData() { nestedObject.addValue( indexMapping.nestedObject.integer, NESTED_OBJECT_INTEGER_VALUE ); } ); - workPlan.add( referenceProvider( EMPTY_ID ), document -> { } ); + plan.add( referenceProvider( EMPTY_ID ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/CompositeSearchSortIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/CompositeSearchSortIT.java index 2ba7f2ceeda..36839d8048d 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/CompositeSearchSortIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/CompositeSearchSortIT.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.sort.SearchSort; import org.hibernate.search.engine.search.sort.dsl.SearchSortFactory; @@ -308,8 +308,8 @@ private SearchQuery simpleQuery(StubMappingScope scope, Searc } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.identicalForFirstTwo.write( document, "aaa" ); indexMapping.identicalForLastTwo.write( document, "aaa" ); @@ -318,7 +318,7 @@ private void initData() { DocumentElement nested = document.addObject( indexMapping.nestedObject ); indexMapping.nestedField.write( nested, "bbb" ); } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.identicalForFirstTwo.write( document, "aaa" ); indexMapping.identicalForLastTwo.write( document, "bbb" ); @@ -327,7 +327,7 @@ private void initData() { DocumentElement nested = document.addObject( indexMapping.nestedObject ); indexMapping.nestedField.write( nested, "aaa" ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.identicalForFirstTwo.write( document, "bbb" ); indexMapping.identicalForLastTwo.write( document, "bbb" ); @@ -336,7 +336,7 @@ private void initData() { DocumentElement nested = document.addObject( indexMapping.nestedObject ); indexMapping.nestedField.write( nested, "aaa" ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable SearchQuery query = indexManager.createScope().query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSearchSortIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSearchSortIT.java index 01c43530a24..1ce82e2ccc3 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSearchSortIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSearchSortIT.java @@ -25,7 +25,7 @@ import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.types.dsl.IndexFieldTypeFactory; import org.hibernate.search.engine.backend.types.dsl.StandardIndexFieldTypeOptionsStep; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.search.sort.dsl.SortFinalStep; import org.hibernate.search.engine.search.common.ValueConvert; import org.hibernate.search.integrationtest.backend.tck.testsupport.types.FieldModelConsumer; @@ -619,9 +619,9 @@ public void multiIndex_incompatibleDecimalScale() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); // Important: do not index the documents in the expected order after sorts (1, 2, 3) - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> { + plan.add( referenceProvider( DOCUMENT_2 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document2Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document2Value.write( document ) ); @@ -638,7 +638,7 @@ private void initData() { indexMapping.scaledBigDecimal.document2Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> { + plan.add( referenceProvider( DOCUMENT_1 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document1Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document1Value.write( document ) ); @@ -655,7 +655,7 @@ private void initData() { indexMapping.scaledBigDecimal.document1Value.write( document ); } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> { + plan.add( referenceProvider( DOCUMENT_3 ), document -> { indexMapping.supportedFieldModels.forEach( f -> f.document3Value.write( document ) ); indexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document3Value.write( document ) ); indexMapping.unsupportedFieldModels.forEach( f -> f.document3Value.write( document ) ); @@ -672,43 +672,43 @@ private void initData() { indexMapping.scaledBigDecimal.document3Value.write( document ); } ); - workPlan.add( referenceProvider( EMPTY ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( EMPTY ), document -> { } ); + plan.execute().join(); - workPlan = compatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = compatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { compatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); compatibleIndexMapping.supportedFieldWithDslConverterModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = rawFieldCompatibleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { + plan = rawFieldCompatibleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( RAW_FIELD_COMPATIBLE_INDEX_DOCUMENT_1 ), document -> { rawFieldCompatibleIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = incompatibleDecimalScaleIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( INCOMPATIBLE_DECIMAL_SCALE_INDEX_DOCUMENT_1 ), document -> { + plan = incompatibleDecimalScaleIndexManager.createIndexingPlan(); + plan.add( referenceProvider( INCOMPATIBLE_DECIMAL_SCALE_INDEX_DOCUMENT_1 ), document -> { incompatibleDecimalScaleIndexMapping.scaledBigDecimal.document1Value.write( document ); } ); - workPlan.execute().join(); + plan.execute().join(); - workPlan = multipleEmptyIndexManager.createWorkPlan(); - workPlan.add( referenceProvider( EMPTY_1 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_2 ), document -> + plan = multipleEmptyIndexManager.createIndexingPlan(); + plan.add( referenceProvider( EMPTY_1 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_2 ), document -> multipleEmptyIndexMapping.supportedFieldModels.forEach( f -> f.document2Value.write( document ) ) ); - workPlan.add( referenceProvider( EMPTY_2 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_3 ), document -> + plan.add( referenceProvider( EMPTY_2 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_3 ), document -> multipleEmptyIndexMapping.supportedFieldModels.forEach( f -> f.document3Value.write( document ) ) ); - workPlan.add( referenceProvider( EMPTY_3 ), document -> { } ); - workPlan.add( referenceProvider( DOCUMENT_1 ), document -> + plan.add( referenceProvider( EMPTY_3 ), document -> { } ); + plan.add( referenceProvider( DOCUMENT_1 ), document -> multipleEmptyIndexMapping.supportedFieldModels.forEach( f -> f.document1Value.write( document ) ) ); - workPlan.add( referenceProvider( EMPTY_4 ), document -> { } ); - workPlan.execute().join(); + plan.add( referenceProvider( EMPTY_4 ), document -> { } ); + plan.execute().join(); // Check that all documents are searchable SearchQuery query = indexManager.createScope().query() diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/SearchSortIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/SearchSortIT.java index 0fcddd300f5..2436d009b7c 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/SearchSortIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/SearchSortIT.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaObjectField; import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; import org.hibernate.search.engine.backend.types.Sortable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.predicate.SearchPredicate; import org.hibernate.search.engine.search.sort.dsl.SortFinalStep; @@ -513,9 +513,9 @@ public void extension() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); // Important: do not index the documents in the expected order after sorts - workPlan.add( referenceProvider( SECOND_ID ), document -> { + plan.add( referenceProvider( SECOND_ID ), document -> { document.addValue( indexMapping.string, "george" ); document.addValue( indexMapping.geoPoint, GeoPoint.of( 45.7705687,4.835233 ) ); @@ -537,7 +537,7 @@ private void initData() { nestedX2Object.addValue( indexMapping.nestedX2Object.string, "george" ); nestedX2Object.addValue( indexMapping.nestedX2Object.integer, 2 ); } ); - workPlan.add( referenceProvider( FIRST_ID ), document -> { + plan.add( referenceProvider( FIRST_ID ), document -> { document.addValue( indexMapping.string, "aaron" ); document.addValue( indexMapping.geoPoint, GeoPoint.of( 45.7541719, 4.8386221 ) ); @@ -559,7 +559,7 @@ private void initData() { nestedX2Object.addValue( indexMapping.nestedX2Object.string, "aaron" ); nestedX2Object.addValue( indexMapping.nestedX2Object.integer, 1 ); } ); - workPlan.add( referenceProvider( THIRD_ID ), document -> { + plan.add( referenceProvider( THIRD_ID ), document -> { document.addValue( indexMapping.string, "zach" ); document.addValue( indexMapping.geoPoint, GeoPoint.of( 45.7530374, 4.8510299 ) ); @@ -581,9 +581,9 @@ private void initData() { nestedX2Object.addValue( indexMapping.nestedX2Object.string, "zach" ); nestedX2Object.addValue( indexMapping.nestedX2Object.integer, 3 ); } ); - workPlan.add( referenceProvider( EMPTY_ID ), document -> { } ); + plan.add( referenceProvider( EMPTY_ID ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/AbstractSpatialWithinSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/AbstractSpatialWithinSearchPredicateIT.java index 27299f5315b..8bd92b7ef67 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/AbstractSpatialWithinSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/AbstractSpatialWithinSearchPredicateIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.types.Projectable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.engine.spatial.GeoPoint; @@ -81,8 +81,8 @@ public void setup() { } protected void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( OURSON_QUI_BOIT_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( OURSON_QUI_BOIT_ID ), document -> { document.addValue( indexMapping.string, OURSON_QUI_BOIT_STRING ); document.addValue( indexMapping.geoPoint, OURSON_QUI_BOIT_GEO_POINT ); document.addValue( indexMapping.geoPoint_1, GeoPoint.of( OURSON_QUI_BOIT_GEO_POINT.getLatitude() - 1, @@ -92,7 +92,7 @@ protected void initData() { document.addValue( indexMapping.geoPoint_with_longName, OURSON_QUI_BOIT_GEO_POINT ); document.addValue( indexMapping.projectableUnsortableGeoPoint, OURSON_QUI_BOIT_GEO_POINT ); } ); - workPlan.add( referenceProvider( IMOUTO_ID ), document -> { + plan.add( referenceProvider( IMOUTO_ID ), document -> { document.addValue( indexMapping.string, IMOUTO_STRING ); document.addValue( indexMapping.geoPoint, IMOUTO_GEO_POINT ); document.addValue( indexMapping.geoPoint_1, GeoPoint.of( IMOUTO_GEO_POINT.getLatitude() - 1, @@ -102,7 +102,7 @@ protected void initData() { document.addValue( indexMapping.geoPoint_with_longName, IMOUTO_GEO_POINT ); document.addValue( indexMapping.projectableUnsortableGeoPoint, IMOUTO_GEO_POINT ); } ); - workPlan.add( referenceProvider( CHEZ_MARGOTTE_ID ), document -> { + plan.add( referenceProvider( CHEZ_MARGOTTE_ID ), document -> { document.addValue( indexMapping.string, CHEZ_MARGOTTE_STRING ); document.addValue( indexMapping.geoPoint, CHEZ_MARGOTTE_GEO_POINT ); document.addValue( indexMapping.geoPoint_1, GeoPoint.of( CHEZ_MARGOTTE_GEO_POINT.getLatitude() - 1, @@ -112,9 +112,9 @@ protected void initData() { document.addValue( indexMapping.geoPoint_with_longName, CHEZ_MARGOTTE_GEO_POINT ); document.addValue( indexMapping.projectableUnsortableGeoPoint, CHEZ_MARGOTTE_GEO_POINT ); } ); - workPlan.add( referenceProvider( EMPTY_ID ), document -> { } ); + plan.add( referenceProvider( EMPTY_ID ), document -> { } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/DistanceSearchSearchableSortableIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/DistanceSearchSearchableSortableIT.java index 2e2d34d33ed..91b27986434 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/DistanceSearchSearchableSortableIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/DistanceSearchSearchableSortableIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.types.Searchable; import org.hibernate.search.engine.backend.types.Sortable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.engine.spatial.GeoPoint; @@ -161,29 +161,29 @@ public void defaultSearchableSortable() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( OURSON_QUI_BOIT_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( OURSON_QUI_BOIT_ID ), document -> { document.addValue( indexMapping.searchableSortable, OURSON_QUI_BOIT_GEO_POINT ); document.addValue( indexMapping.searchableNotSortable, OURSON_QUI_BOIT_GEO_POINT ); document.addValue( indexMapping.searchableDefaultSortable, OURSON_QUI_BOIT_GEO_POINT ); document.addValue( indexMapping.notSearchableSortable, OURSON_QUI_BOIT_GEO_POINT ); document.addValue( indexMapping.defaultSearchableSortable, OURSON_QUI_BOIT_GEO_POINT ); } ); - workPlan.add( referenceProvider( IMOUTO_ID ), document -> { + plan.add( referenceProvider( IMOUTO_ID ), document -> { document.addValue( indexMapping.searchableSortable, IMOUTO_GEO_POINT ); document.addValue( indexMapping.searchableNotSortable, IMOUTO_GEO_POINT ); document.addValue( indexMapping.searchableDefaultSortable, IMOUTO_GEO_POINT ); document.addValue( indexMapping.notSearchableSortable, IMOUTO_GEO_POINT ); document.addValue( indexMapping.defaultSearchableSortable, IMOUTO_GEO_POINT ); } ); - workPlan.add( referenceProvider( CHEZ_MARGOTTE_ID ), document -> { + plan.add( referenceProvider( CHEZ_MARGOTTE_ID ), document -> { document.addValue( indexMapping.searchableSortable, CHEZ_MARGOTTE_GEO_POINT ); document.addValue( indexMapping.searchableNotSortable, CHEZ_MARGOTTE_GEO_POINT ); document.addValue( indexMapping.searchableDefaultSortable, CHEZ_MARGOTTE_GEO_POINT ); document.addValue( indexMapping.notSearchableSortable, CHEZ_MARGOTTE_GEO_POINT ); document.addValue( indexMapping.defaultSearchableSortable, CHEZ_MARGOTTE_GEO_POINT ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/NestedDocumentDistanceProjectionIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/NestedDocumentDistanceProjectionIT.java index 7ae757f9e5e..00dec5fe559 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/NestedDocumentDistanceProjectionIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/NestedDocumentDistanceProjectionIT.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.ObjectFieldStorage; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.backend.types.Sortable; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.engine.spatial.GeoPoint; @@ -103,8 +103,8 @@ public void distance_nestedDocument() { } private void initData() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( OURSON_QUI_BOIT_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( OURSON_QUI_BOIT_ID ), document -> { document.addValue( indexMapping.ordinalField, 1 ); DocumentElement nestedDocument = document.addObject( indexMapping.nestedDocument ); @@ -113,7 +113,7 @@ private void initData() { DocumentElement flattenedDocument = document.addObject( indexMapping.flattenedDocument ); flattenedDocument.addValue( indexMapping.flattenedGeoPoint, OURSON_QUI_BOIT_GEO_POINT ); } ); - workPlan.add( referenceProvider( IMOUTO_ID ), document -> { + plan.add( referenceProvider( IMOUTO_ID ), document -> { document.addValue( indexMapping.ordinalField, 2 ); DocumentElement nestedDocument = document.addObject( indexMapping.nestedDocument ); @@ -122,7 +122,7 @@ private void initData() { DocumentElement flattenedDocument = document.addObject( indexMapping.flattenedDocument ); flattenedDocument.addValue( indexMapping.flattenedGeoPoint, IMOUTO_GEO_POINT ); } ); - workPlan.add( referenceProvider( CHEZ_MARGOTTE_ID ), document -> { + plan.add( referenceProvider( CHEZ_MARGOTTE_ID ), document -> { document.addValue( indexMapping.ordinalField, 3 ); DocumentElement nestedDocument = document.addObject( indexMapping.nestedDocument ); @@ -131,7 +131,7 @@ private void initData() { DocumentElement flattenedDocument = document.addObject( indexMapping.flattenedDocument ); flattenedDocument.addValue( indexMapping.flattenedGeoPoint, CHEZ_MARGOTTE_GEO_POINT ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/SpatialWithinBoundingBoxSearchPredicateIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/SpatialWithinBoundingBoxSearchPredicateIT.java index 518f370adc0..d0618d4fc14 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/SpatialWithinBoundingBoxSearchPredicateIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/spatial/SpatialWithinBoundingBoxSearchPredicateIT.java @@ -10,7 +10,7 @@ import static org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMapperUtils.referenceProvider; import org.hibernate.search.engine.backend.document.DocumentElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.util.impl.integrationtest.common.stub.mapper.StubMappingScope; import org.hibernate.search.engine.reporting.spi.EventContexts; import org.hibernate.search.engine.backend.common.DocumentReference; @@ -428,15 +428,15 @@ public void multiIndex_incompatibleSearchable() { protected void initData() { super.initData(); - IndexWorkPlan workPlan = indexManager.createWorkPlan(); - workPlan.add( referenceProvider( ADDITIONAL_POINT_1_ID ), document -> { + IndexIndexingPlan plan = indexManager.createIndexingPlan(); + plan.add( referenceProvider( ADDITIONAL_POINT_1_ID ), document -> { document.addValue( indexMapping.geoPoint, ADDITIONAL_POINT_1_GEO_POINT ); } ); - workPlan.add( referenceProvider( ADDITIONAL_POINT_2_ID ), document -> { + plan.add( referenceProvider( ADDITIONAL_POINT_2_ID ), document -> { document.addValue( indexMapping.geoPoint, ADDITIONAL_POINT_2_GEO_POINT ); } ); - workPlan.execute().join(); + plan.execute().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkPlanIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexingPlanIT.java similarity index 83% rename from integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkPlanIT.java rename to integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexingPlanIT.java index e7670ccf6cf..94a94581701 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkPlanIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexingPlanIT.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; @@ -22,7 +22,7 @@ import org.junit.Rule; import org.junit.Test; -public class IndexWorkPlanIT { +public class IndexIndexingPlanIT { private static final String INDEX_NAME = "indexName"; @@ -45,13 +45,13 @@ public void before() { @Test public void discard() { - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); - workPlan.add( referenceProvider( "1" ), document -> document.addValue( indexMapping.title, "Title of Book 1" ) ); - workPlan.discard(); + plan.add( referenceProvider( "1" ), document -> document.addValue( indexMapping.title, "Title of Book 1" ) ); + plan.discard(); - workPlan.add( referenceProvider( "2" ), document -> document.addValue( indexMapping.title, "Title of Book 2" ) ); - workPlan.execute().join(); + plan.add( referenceProvider( "2" ), document -> document.addValue( indexMapping.title, "Title of Book 2" ) ); + plan.execute().join(); SearchQuery query = indexManager.createScope().query() .predicate( f -> f.matchAll() ) diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexingIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexingIT.java index 9cfdb034ac8..e957e7155c9 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexingIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexingIT.java @@ -17,7 +17,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.types.Projectable; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.types.FieldTypeDescriptor; @@ -88,16 +88,16 @@ public void index() { List> expectedDocuments = new ArrayList<>(); // Index all values, each in its own document - IndexWorkPlan workPlan = indexManager.createWorkPlan(); + IndexIndexingPlan plan = indexManager.createIndexingPlan(); for ( int i = 0; i < values.size(); i++ ) { String documentId = "document_" + i; F value = values.get( i ); - workPlan.add( referenceProvider( documentId ), document -> { + plan.add( referenceProvider( documentId ), document -> { document.addValue( indexMapping.fieldModel.reference, value ); } ); expectedDocuments.add( new IdAndValue<>( documentId, value ) ); } - workPlan.execute().join(); + plan.execute().join(); // If we get here, indexing went well. // However, it may have failed silently... Let's check the documents are there, with the right value. diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java index 71fbffbc5af..9ec6010353f 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java @@ -160,7 +160,7 @@ public PojoIndexedTypeIndexingPlan createIndexingPlan(AbstractPojoBacke DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { return new PojoIndexedTypeIndexingPlan<>( this, sessionContext, - indexManager.createWorkPlan( sessionContext, commitStrategy, refreshStrategy ) + indexManager.createIndexingPlan( sessionContext, commitStrategy, refreshStrategy ) ); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java index 5bb4bcf642c..29a4674704d 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexedTypeIndexingPlan.java @@ -14,7 +14,7 @@ import java.util.function.Supplier; import org.hibernate.search.engine.backend.document.DocumentElement; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; import org.hibernate.search.mapper.pojo.automaticindexing.impl.PojoReindexingCollector; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; @@ -27,14 +27,14 @@ public class PojoIndexedTypeIndexingPlan extends AbstractPojoTypeIndexingPlan { private final PojoWorkIndexedTypeContext typeContext; - private final IndexWorkPlan delegate; + private final IndexIndexingPlan delegate; // Use a LinkedHashMap for deterministic iteration private final Map indexingPlansPerId = new LinkedHashMap<>(); public PojoIndexedTypeIndexingPlan(PojoWorkIndexedTypeContext typeContext, AbstractPojoBackendSessionContext sessionContext, - IndexWorkPlan delegate) { + IndexIndexingPlan delegate) { super( sessionContext ); this.typeContext = typeContext; this.delegate = delegate; @@ -120,7 +120,7 @@ private IndexedEntityIndexingPlan getPlan(I identifier) { return plan; } - private IndexWorkPlan getDelegate() { + private IndexIndexingPlan getDelegate() { return delegate; } diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexIndexingPlan.java similarity index 95% rename from util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java rename to util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexIndexingPlan.java index 3a506ffc429..0085b1c165f 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkPlan.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexIndexingPlan.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.work.execution.spi.DocumentContributor; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -20,7 +20,7 @@ import org.hibernate.search.util.impl.integrationtest.common.stub.backend.index.StubDocumentWork; import org.hibernate.search.util.impl.integrationtest.common.stub.backend.document.impl.StubDocumentElement; -class StubIndexWorkPlan implements IndexWorkPlan { +class StubIndexIndexingPlan implements IndexIndexingPlan { private final StubIndexManager indexManager; private final BackendSessionContext sessionContext; private final DocumentCommitStrategy commitStrategy; @@ -30,7 +30,7 @@ class StubIndexWorkPlan implements IndexWorkPlan { private int preparedIndex = 0; - StubIndexWorkPlan(StubIndexManager indexManager, BackendSessionContext sessionContext, + StubIndexIndexingPlan(StubIndexManager indexManager, BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { this.sessionContext = sessionContext; this.indexManager = indexManager; diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java index 11a4ba66194..9b16e2ea4b5 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java @@ -16,7 +16,7 @@ import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -71,9 +71,9 @@ public void start(IndexManagerStartContext context) { } @Override - public IndexWorkPlan createWorkPlan(BackendSessionContext context, + public IndexIndexingPlan createIndexingPlan(BackendSessionContext context, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return new StubIndexWorkPlan( this, context, commitStrategy, refreshStrategy ); + return new StubIndexIndexingPlan( this, context, commitStrategy, refreshStrategy ); } @Override diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java index 18990d9a42b..e9296d993da 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java @@ -11,7 +11,7 @@ import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkPlan; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.mapper.mapping.spi.MappedIndexManager; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -35,21 +35,21 @@ public T unwrapForTests(Class clazz) { return clazz.cast( indexManager.toAPI() ); } - public IndexWorkPlan createWorkPlan() { - return createWorkPlan( new StubBackendSessionContext() ); + public IndexIndexingPlan createIndexingPlan() { + return createIndexingPlan( new StubBackendSessionContext() ); } - public IndexWorkPlan createWorkPlan(StubBackendSessionContext sessionContext) { + public IndexIndexingPlan createIndexingPlan(StubBackendSessionContext sessionContext) { /* * Use the same defaults as in the ORM mapper for the commit strategy, * but force refreshes because it's more convenient for tests. */ - return indexManager.createWorkPlan( sessionContext, DocumentCommitStrategy.FORCE, DocumentRefreshStrategy.FORCE ); + return indexManager.createIndexingPlan( sessionContext, DocumentCommitStrategy.FORCE, DocumentRefreshStrategy.FORCE ); } - public IndexWorkPlan createWorkPlan(StubBackendSessionContext sessionContext, + public IndexIndexingPlan createIndexingPlan(StubBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy) { - return indexManager.createWorkPlan( sessionContext, commitStrategy, refreshStrategy ); + return indexManager.createIndexingPlan( sessionContext, commitStrategy, refreshStrategy ); } public IndexDocumentWorkExecutor createDocumentWorkExecutor( From b2f8de01c87a9f0d0ce1725a996525ec4669fce9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Tue, 17 Sep 2019 11:21:53 +0200 Subject: [PATCH 10/11] HSEARCH-3606 Rename PojoSessionWorkExecutor to PojoIndexer and IndexDocumentWorkExecutor to IndexIndexer Because these classes will only ever be about indexing or deleting documents. --- .../impl/ElasticsearchIndexManagerImpl.java | 6 +++--- .../impl/IndexManagerBackendContext.java | 8 ++++---- ...or.java => ElasticsearchIndexIndexer.java} | 6 +++--- .../impl/WorkExecutionBackendContext.java | 4 ++-- .../impl/IndexManagerBackendContext.java | 8 ++++---- .../index/impl/LuceneIndexManagerImpl.java | 6 +++--- ...kExecutor.java => LuceneIndexIndexer.java} | 6 +++--- .../impl/WorkExecutionBackendContext.java | 4 ++-- .../index/spi/IndexManagerImplementor.java | 4 ++-- .../spi/DetachedBackendSessionContext.java | 2 +- ...entWorkExecutor.java => IndexIndexer.java} | 7 ++++++- .../common/impl/MappedIndexManagerImpl.java | 6 +++--- .../mapping/spi/MappedIndexManager.java | 4 ++-- .../tck/search/query/SearchQueryBaseIT.java | 6 +++--- .../tck/search/query/SearchQueryFetchIT.java | 6 +++--- .../tck/sharding/AbstractShardingIT.java | 8 ++++---- ...orkExecutorIT.java => IndexIndexerIT.java} | 12 +++++------ .../backend/tck/work/IndexWorkExecutorIT.java | 8 ++++---- .../orm/mapping/impl/HibernateOrmMapping.java | 6 +++--- ...ibernateOrmMassIndexingMappingContext.java | 4 ++-- .../IdentifierConsumerDocumentProducer.java | 20 +++++++++---------- .../impl/HibernateOrmSearchSession.java | 6 +++--- .../mapping/impl/PojoIndexedTypeManager.java | 8 ++++---- .../impl/PojoSearchSessionDelegateImpl.java | 8 ++++---- .../spi/PojoSearchSessionDelegate.java | 4 ++-- ...ExecutorImpl.java => PojoIndexerImpl.java} | 16 +++++++-------- ...WorkExecutor.java => PojoTypeIndexer.java} | 10 +++++----- .../work/impl/PojoWorkIndexedTypeContext.java | 2 +- ...sionWorkExecutor.java => PojoIndexer.java} | 6 +++++- ...orkExecutor.java => StubIndexIndexer.java} | 6 +++--- .../backend/index/impl/StubIndexManager.java | 6 +++--- .../stub/mapper/StubMappingIndexManager.java | 10 +++++----- 32 files changed, 116 insertions(+), 107 deletions(-) rename backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/{ElasticsearchIndexDocumentWorkExecutor.java => ElasticsearchIndexIndexer.java} (90%) rename backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/{LuceneIndexDocumentWorkExecutor.java => LuceneIndexIndexer.java} (92%) rename engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/{IndexDocumentWorkExecutor.java => IndexIndexer.java} (78%) rename integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/{IndexDocumentWorkExecutorIT.java => IndexIndexerIT.java} (86%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{PojoSessionWorkExecutorImpl.java => PojoIndexerImpl.java} (75%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{PojoTypeDocumentWorkExecutor.java => PojoTypeIndexer.java} (83%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/{PojoSessionWorkExecutor.java => PojoIndexer.java} (87%) rename util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/{StubIndexDocumentWorkExecutor.java => StubIndexIndexer.java} (90%) diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java index df472e3d962..f8a88286827 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java @@ -28,7 +28,7 @@ import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.cfg.spi.ConfigurationPropertySource; import org.hibernate.search.engine.cfg.spi.ConfigurationProperty; @@ -153,10 +153,10 @@ public IndexIndexingPlan createIndexingPlan( } @Override - public IndexDocumentWorkExecutor createDocumentWorkExecutor( + public IndexIndexer createIndexer( BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { // The commit strategy is ignored, because Elasticsearch always commits changes to its transaction log. - return backendContext.createDocumentWorkExecutor( + return backendContext.createIndexer( parallelOrchestrator, elasticsearchIndexName, sessionContext ); } diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java index c3651d5a9ed..45da81c6009 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java @@ -25,11 +25,11 @@ import org.hibernate.search.backend.elasticsearch.multitenancy.impl.MultiTenancyStrategy; import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestrator; import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestratorProvider; -import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexDocumentWorkExecutor; +import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexIndexer; import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexWorkExecutor; import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexIndexingPlan; import org.hibernate.search.backend.elasticsearch.work.execution.impl.WorkExecutionBackendContext; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; @@ -95,13 +95,13 @@ public IndexIndexingPlan createIndexingPlan( } @Override - public IndexDocumentWorkExecutor createDocumentWorkExecutor( + public IndexIndexer createIndexer( ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, BackendSessionContext sessionContext) { multiTenancyStrategy.checkTenantId( sessionContext.getTenantIdentifier(), eventContext ); - return new ElasticsearchIndexDocumentWorkExecutor( link.getWorkBuilderFactory(), multiTenancyStrategy, orchestrator, + return new ElasticsearchIndexIndexer( link.getWorkBuilderFactory(), multiTenancyStrategy, orchestrator, indexName, sessionContext ); } diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexDocumentWorkExecutor.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexIndexer.java similarity index 90% rename from backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexDocumentWorkExecutor.java rename to backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexIndexer.java index 28a9d5202df..aeaea5ad300 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexDocumentWorkExecutor.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexIndexer.java @@ -16,12 +16,12 @@ import org.hibernate.search.backend.elasticsearch.work.builder.factory.impl.ElasticsearchWorkBuilderFactory; import org.hibernate.search.engine.backend.work.execution.spi.DocumentContributor; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; import com.google.gson.JsonObject; -public class ElasticsearchIndexDocumentWorkExecutor implements IndexDocumentWorkExecutor { +public class ElasticsearchIndexIndexer implements IndexIndexer { private final ElasticsearchWorkBuilderFactory factory; private final MultiTenancyStrategy multiTenancyStrategy; @@ -29,7 +29,7 @@ public class ElasticsearchIndexDocumentWorkExecutor implements IndexDocumentWork private final URLEncodedString indexName; private final String tenantId; - public ElasticsearchIndexDocumentWorkExecutor(ElasticsearchWorkBuilderFactory factory, MultiTenancyStrategy multiTenancyStrategy, + public ElasticsearchIndexIndexer(ElasticsearchWorkBuilderFactory factory, MultiTenancyStrategy multiTenancyStrategy, ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, BackendSessionContext sessionContext) { diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java index 71043589167..af87c504e6a 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java @@ -10,7 +10,7 @@ import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestrator; import org.hibernate.search.backend.elasticsearch.util.spi.URLEncodedString; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -35,7 +35,7 @@ IndexIndexingPlan createIndexingPlan( DocumentRefreshStrategy refreshStrategy, BackendSessionContext sessionContext); - IndexDocumentWorkExecutor createDocumentWorkExecutor( + IndexIndexer createIndexer( ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, BackendSessionContext sessionContext); diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java index 3eec3f58eac..8f8df5ba38a 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java @@ -29,7 +29,7 @@ import org.hibernate.search.backend.lucene.search.projection.impl.LuceneSearchProjection; import org.hibernate.search.backend.lucene.search.query.impl.LuceneSearchQueryBuilder; import org.hibernate.search.backend.lucene.search.query.impl.SearchBackendContext; -import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexDocumentWorkExecutor; +import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexIndexer; import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexWorkExecutor; import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexIndexingPlan; import org.hibernate.search.backend.lucene.work.execution.impl.WorkExecutionBackendContext; @@ -37,7 +37,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.backend.lucene.document.impl.LuceneRootDocumentBuilder; import org.hibernate.search.backend.lucene.multitenancy.impl.MultiTenancyStrategy; @@ -122,14 +122,14 @@ public LuceneWriteWorkOrchestratorImplementor createOrchestrator(String indexNam } @Override - public IndexDocumentWorkExecutor createDocumentWorkExecutor( + public IndexIndexer createIndexer( WorkExecutionIndexManagerContext indexManagerContext, LuceneIndexEntryFactory indexEntryFactory, BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { multiTenancyStrategy.checkTenantId( sessionContext.getTenantIdentifier(), eventContext ); - return new LuceneIndexDocumentWorkExecutor( + return new LuceneIndexIndexer( workFactory, indexEntryFactory, indexManagerContext, diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java index b49eff576ab..d8b5c4c93e1 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java @@ -22,7 +22,7 @@ import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.backend.lucene.document.impl.LuceneRootDocumentBuilder; import org.hibernate.search.backend.lucene.document.model.impl.LuceneIndexModel; @@ -96,9 +96,9 @@ public IndexIndexingPlan createIndexingPlan(BackendSe } @Override - public IndexDocumentWorkExecutor createDocumentWorkExecutor( + public IndexIndexer createIndexer( BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { - return backendContext.createDocumentWorkExecutor( + return backendContext.createIndexer( shardHolder, indexEntryFactory, sessionContext, commitStrategy ); diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexDocumentWorkExecutor.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexIndexer.java similarity index 92% rename from backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexDocumentWorkExecutor.java rename to backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexIndexer.java index 5966308b39a..c54e64fda32 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexDocumentWorkExecutor.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexIndexer.java @@ -17,10 +17,10 @@ import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.DocumentContributor; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; -public class LuceneIndexDocumentWorkExecutor implements IndexDocumentWorkExecutor { +public class LuceneIndexIndexer implements IndexIndexer { private final LuceneWorkFactory factory; private final LuceneIndexEntryFactory indexEntryFactory; @@ -28,7 +28,7 @@ public class LuceneIndexDocumentWorkExecutor implements IndexDocumentWorkExecuto private final String tenantId; private final DocumentCommitStrategy commitStrategy; - public LuceneIndexDocumentWorkExecutor(LuceneWorkFactory factory, + public LuceneIndexIndexer(LuceneWorkFactory factory, LuceneIndexEntryFactory indexEntryFactory, WorkExecutionIndexManagerContext indexManagerContext, BackendSessionContext sessionContext, diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java index 8f0ba27ccda..ed638bbed5f 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java @@ -14,7 +14,7 @@ import org.hibernate.search.backend.lucene.orchestration.impl.LuceneWriteWorkOrchestratorImplementor; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -41,7 +41,7 @@ IndexIndexingPlan createIndexingPlan( LuceneWriteWorkOrchestratorImplementor createOrchestrator(String indexName, Optional shardId, IndexWriterDelegator indexWriterDelegator); - IndexDocumentWorkExecutor createDocumentWorkExecutor( + IndexIndexer createIndexer( WorkExecutionIndexManagerContext indexManagerContext, LuceneIndexEntryFactory indexEntryFactory, BackendSessionContext sessionContext, diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java b/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java index 230daf091e3..f03a6557425 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.index.IndexManager; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.spi.BackendStartContext; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; @@ -45,7 +45,7 @@ public interface IndexManagerImplementor extends Auto IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); - IndexDocumentWorkExecutor createDocumentWorkExecutor(BackendSessionContext sessionContext, + IndexIndexer createIndexer(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext); diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java b/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java index be158768a19..291255ef7d4 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/session/spi/DetachedBackendSessionContext.java @@ -22,7 +22,7 @@ * everywhere {@link BackendSessionContext} can. * In particular, it cannot be used when creating document-related * {@link org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor#createIndexingPlan(BackendSessionContext, DocumentCommitStrategy, DocumentRefreshStrategy) indexing plans} - * or {@link org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor#createDocumentWorkExecutor(BackendSessionContext, DocumentCommitStrategy) work executors} + * or {@link org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor#createIndexer(BackendSessionContext, DocumentCommitStrategy) indexers} * because these may need access to the session. */ public final class DetachedBackendSessionContext { diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexDocumentWorkExecutor.java b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexIndexer.java similarity index 78% rename from engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexDocumentWorkExecutor.java rename to engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexIndexer.java index 41449fbea0d..166a8a28161 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexDocumentWorkExecutor.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexIndexer.java @@ -8,7 +8,12 @@ import java.util.concurrent.CompletableFuture; -public interface IndexDocumentWorkExecutor { +/** + * An indexer scoped to a single index. + * + * @param The expected document type. + */ +public interface IndexIndexer { CompletableFuture add(DocumentReferenceProvider documentReferenceProvider, DocumentContributor documentContributor); diff --git a/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java b/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java index 1ec0f888853..fafe5f12fb5 100644 --- a/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java +++ b/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java @@ -10,7 +10,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.index.IndexManager; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; @@ -40,9 +40,9 @@ public IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionCont } @Override - public IndexDocumentWorkExecutor createDocumentWorkExecutor(BackendSessionContext sessionContext, + public IndexIndexer createIndexer(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { - return implementor.createDocumentWorkExecutor( sessionContext, commitStrategy ); + return implementor.createIndexer( sessionContext, commitStrategy ); } @Override diff --git a/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java b/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java index 42767b7d038..a9a8fc82dd8 100644 --- a/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java +++ b/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java @@ -9,7 +9,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.index.IndexManager; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; @@ -30,7 +30,7 @@ public interface MappedIndexManager { IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); - IndexDocumentWorkExecutor createDocumentWorkExecutor(BackendSessionContext sessionContext, + IndexIndexer createIndexer(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java index 63b9e59ab91..df111578afa 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; import org.hibernate.search.engine.backend.common.DocumentReference; @@ -124,8 +124,8 @@ public void context_extension() { } private void initData(int documentCount) { - IndexDocumentWorkExecutor executor = - indexManager.createDocumentWorkExecutor( DocumentCommitStrategy.NONE ); + IndexIndexer executor = + indexManager.createIndexer( DocumentCommitStrategy.NONE ); List> futures = new ArrayList<>(); for ( int i = 0; i < documentCount; i++ ) { int intValue = i; diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java index d3983884bc8..70925c32faf 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java @@ -21,7 +21,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.types.Sortable; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.dsl.SearchQueryOptionsStep; @@ -288,8 +288,8 @@ public void maxResults_zero() { } private void initData() { - IndexDocumentWorkExecutor executor = - indexManager.createDocumentWorkExecutor( DocumentCommitStrategy.NONE ); + IndexIndexer executor = + indexManager.createIndexer( DocumentCommitStrategy.NONE ); List> futures = new ArrayList<>(); for ( int i = 0; i < DOCUMENT_COUNT; i++ ) { int intValue = i; diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java index a11bf244dbe..cac3b76376f 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java @@ -17,7 +17,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexedEntityBindingContext; import org.hibernate.search.engine.backend.common.DocumentReference; @@ -51,14 +51,14 @@ protected static DocumentReference[] docRefs(Stream docIds) { } protected final void initData(Map> docIdByRoutingKey) { - IndexDocumentWorkExecutor documentWorkExecutor = - indexManager.createDocumentWorkExecutor( DocumentCommitStrategy.NONE ); + IndexIndexer indexer = + indexManager.createIndexer( DocumentCommitStrategy.NONE ); List> tasks = new ArrayList<>(); for ( Map.Entry> entry : docIdByRoutingKey.entrySet() ) { String routingKey = entry.getKey(); for ( String documentId : entry.getValue() ) { - tasks.add( documentWorkExecutor.add( + tasks.add( indexer.add( referenceProvider( documentId, routingKey ), document -> document.addValue( indexMapping.indexedRoutingKey, routingKey ) ) ); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexDocumentWorkExecutorIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java similarity index 86% rename from integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexDocumentWorkExecutorIT.java rename to integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java index e413a67be82..a294edea0d6 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexDocumentWorkExecutorIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; @@ -29,9 +29,9 @@ import org.assertj.core.api.Assertions; /** - * Verify that the {@link IndexDocumentWorkExecutor}, provided by a backend, is working properly, storing correctly the indexes. + * Verify that the {@link IndexIndexer}, provided by a backend, is working properly, storing correctly the indexes. */ -public class IndexDocumentWorkExecutorIT { +public class IndexIndexerIT { private static final String INDEX_NAME = "lordOfTheRingsChapters"; private static final int NUMBER_OF_BOOKS = 200; @@ -58,14 +58,14 @@ public void before() { @Test public void checkAllDocumentsAreSearchable() { - IndexDocumentWorkExecutor documentWorkExecutor = - indexManager.createDocumentWorkExecutor( DocumentCommitStrategy.NONE ); + IndexIndexer indexer = + indexManager.createIndexer( DocumentCommitStrategy.NONE ); CompletableFuture[] tasks = new CompletableFuture[NUMBER_OF_BOOKS]; IndexWorkExecutor workExecutor = indexManager.createWorkExecutor(); for ( int i = 0; i < NUMBER_OF_BOOKS; i++ ) { final String id = i + ""; - tasks[i] = documentWorkExecutor.add( referenceProvider( id ), document -> { + tasks[i] = indexer.add( referenceProvider( id ), document -> { document.addValue( indexMapping.title, "The Lord of the Rings cap. " + id ); } ); } diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java index 86d40729a67..b1807e373c8 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java @@ -14,7 +14,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; @@ -119,13 +119,13 @@ public void runOptimizePurgeAndFlushWithMultiTenancy() { } private void createBookIndexes(StubBackendSessionContext sessionContext) { - IndexDocumentWorkExecutor documentWorkExecutor = - indexManager.createDocumentWorkExecutor( sessionContext, DocumentCommitStrategy.NONE ); + IndexIndexer indexer = + indexManager.createIndexer( sessionContext, DocumentCommitStrategy.NONE ); CompletableFuture[] tasks = new CompletableFuture[NUMBER_OF_BOOKS]; for ( int i = 0; i < NUMBER_OF_BOOKS; i++ ) { final String id = i + ""; - tasks[i] = documentWorkExecutor.add( referenceProvider( id ), document -> { + tasks[i] = indexer.add( referenceProvider( id ), document -> { document.addValue( indexMapping.title, "The Lord of the Rings cap. " + id ); } ); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java index 5bd214bf432..3a00b3cd390 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/mapping/impl/HibernateOrmMapping.java @@ -40,7 +40,7 @@ import org.hibernate.search.mapper.pojo.mapping.spi.AbstractPojoMappingImplementor; import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.scope.spi.PojoScopeDelegate; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.AssertionFailure; import org.hibernate.search.util.common.logging.impl.LoggerFactory; @@ -145,9 +145,9 @@ public HibernateOrmMapping toConcreteType() { } @Override - public PojoSessionWorkExecutor createSessionWorkExecutor(SessionImplementor sessionImplementor, + public PojoIndexer createIndexer(SessionImplementor sessionImplementor, DocumentCommitStrategy commitStrategy) { - return HibernateOrmSearchSession.get( this, sessionImplementor ).createSessionWorkExecutor( commitStrategy ); + return HibernateOrmSearchSession.get( this, sessionImplementor ).createIndexer( commitStrategy ); } @Override diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/HibernateOrmMassIndexingMappingContext.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/HibernateOrmMassIndexingMappingContext.java index eb8b0693350..fda143d6cd0 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/HibernateOrmMassIndexingMappingContext.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/HibernateOrmMassIndexingMappingContext.java @@ -9,13 +9,13 @@ import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; public interface HibernateOrmMassIndexingMappingContext { SessionFactoryImplementor getSessionFactory(); - PojoSessionWorkExecutor createSessionWorkExecutor(SessionImplementor sessionImplementor, + PojoIndexer createIndexer(SessionImplementor sessionImplementor, DocumentCommitStrategy commitStrategy); } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/IdentifierConsumerDocumentProducer.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/IdentifierConsumerDocumentProducer.java index 6ccfdfe6e6a..21b54eb967c 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/IdentifierConsumerDocumentProducer.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/IdentifierConsumerDocumentProducer.java @@ -26,7 +26,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.mapper.orm.logging.impl.Log; import org.hibernate.search.mapper.orm.massindexing.monitor.MassIndexingMonitor; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; import org.hibernate.search.util.common.impl.Futures; import org.hibernate.search.util.common.logging.impl.LoggerFactory; @@ -114,7 +114,7 @@ public void run() { private void loadAllFromQueue(SessionImplementor session) throws Exception { // The search session will be closed automatically with the ORM session - PojoSessionWorkExecutor workExecutor = mappingContext.createSessionWorkExecutor( + PojoIndexer indexer = mappingContext.createIndexer( session, DocumentCommitStrategy.NONE ); try { @@ -123,7 +123,7 @@ private void loadAllFromQueue(SessionImplementor session) throws Exception { idList = source.take(); if ( idList != null ) { log.tracef( "received list of ids %s", idList ); - loadList( idList, session, workExecutor ); + loadList( idList, session, indexer ); } } while ( idList != null ); @@ -141,9 +141,9 @@ private void loadAllFromQueue(SessionImplementor session) throws Exception { * * @param listIds the list of entity identifiers (of type * @param session the session to be used - * @param workExecutor the work executor to be used + * @param indexer the indexer to be used */ - private void loadList(List listIds, SessionImplementor session, PojoSessionWorkExecutor workExecutor) throws Exception { + private void loadList(List listIds, SessionImplementor session, PojoIndexer indexer) throws Exception { try { beginTransaction( session ); @@ -160,7 +160,7 @@ private void loadList(List listIds, SessionImplementor session, PojoSessionWo .setHibernateFlushMode( FlushMode.MANUAL ) .setFetchSize( listIds.size() ); - indexAllQueue( workExecutor, query.getResultList() ); + indexAllQueue( indexer, query.getResultList() ); session.clear(); } finally { @@ -196,7 +196,7 @@ private void rollbackTransaction(SessionImplementor session) { } } - private void indexAllQueue(PojoSessionWorkExecutor workExecutor, List entities) throws InterruptedException { + private void indexAllQueue(PojoIndexer indexer, List entities) throws InterruptedException { if ( entities == null || entities.isEmpty() ) { return; } @@ -206,7 +206,7 @@ private void indexAllQueue(PojoSessionWorkExecutor workExecutor, List entitie for ( int i = 0; i < entities.size(); i++ ) { final E entity = entities.get( i ); - futures[i] = index( workExecutor, entity ); + futures[i] = index( indexer, entity ); futures[i].exceptionally( exception -> { handleException( entity, exception ); return null; @@ -218,14 +218,14 @@ private void indexAllQueue(PojoSessionWorkExecutor workExecutor, List entitie monitor.documentsAdded( entities.size() ); } - private CompletableFuture index(PojoSessionWorkExecutor workExecutor, E entity) throws InterruptedException { + private CompletableFuture index(PojoIndexer indexer, E entity) throws InterruptedException { // abort if the thread has been interrupted while not in wait(), I/O or similar which themselves would have // raised the InterruptedException if ( Thread.currentThread().isInterrupted() ) { throw new InterruptedException(); } - CompletableFuture future = Futures.create( () -> workExecutor.add( entity ) + CompletableFuture future = Futures.create( () -> indexer.add( entity ) .exceptionally( exception -> { handleException( entity, exception ); return null; diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java index 363612d55aa..dd1e1c07d47 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/session/impl/HibernateOrmSearchSession.java @@ -44,7 +44,7 @@ import org.hibernate.search.mapper.orm.work.impl.SearchIndexingPlanImpl; import org.hibernate.search.mapper.pojo.mapping.spi.PojoMappingDelegate; import org.hibernate.search.mapper.pojo.session.spi.AbstractPojoSearchSession; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; import org.hibernate.search.util.common.AssertionFailure; import org.hibernate.search.util.common.impl.TransientReference; @@ -204,8 +204,8 @@ public EntityReference fromDocumentReference(DocumentReference reference) { return new EntityReferenceImpl( typeContext.getJavaClass(), id ); } - public PojoSessionWorkExecutor createSessionWorkExecutor(DocumentCommitStrategy commitStrategy) { - return getDelegate().createSessionWorkExecutor( commitStrategy ); + public PojoIndexer createIndexer(DocumentCommitStrategy commitStrategy) { + return getDelegate().createIndexer( commitStrategy ); } @Override diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java index 9ec6010353f..f3e8fc3b34e 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java @@ -31,7 +31,7 @@ import org.hibernate.search.mapper.pojo.work.impl.PojoDocumentContributor; import org.hibernate.search.mapper.pojo.work.impl.PojoDocumentReferenceProvider; import org.hibernate.search.mapper.pojo.work.impl.PojoIndexedTypeIndexingPlan; -import org.hibernate.search.mapper.pojo.work.impl.PojoTypeDocumentWorkExecutor; +import org.hibernate.search.mapper.pojo.work.impl.PojoTypeIndexer; import org.hibernate.search.mapper.pojo.work.impl.PojoWorkIndexedTypeContext; import org.hibernate.search.util.common.impl.Closer; import org.hibernate.search.util.common.impl.ToStringTreeAppendable; @@ -141,12 +141,12 @@ public void resolveEntitiesToReindex(PojoReindexingCollector collector, PojoRunt } @Override - public PojoTypeDocumentWorkExecutor createDocumentWorkExecutor( + public PojoTypeIndexer createIndexer( AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { - return new PojoTypeDocumentWorkExecutor<>( + return new PojoTypeIndexer<>( this, sessionContext, - indexManager.createDocumentWorkExecutor( sessionContext, commitStrategy ) + indexManager.createIndexer( sessionContext, commitStrategy ) ); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java index 1cd671b4973..070493683f9 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/impl/PojoSearchSessionDelegateImpl.java @@ -12,9 +12,9 @@ import org.hibernate.search.mapper.pojo.scope.impl.PojoScopeIndexedTypeContextProvider; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; import org.hibernate.search.mapper.pojo.session.spi.PojoSearchSessionDelegate; -import org.hibernate.search.mapper.pojo.work.impl.PojoSessionWorkExecutorImpl; +import org.hibernate.search.mapper.pojo.work.impl.PojoIndexerImpl; import org.hibernate.search.mapper.pojo.work.impl.PojoIndexingPlanImpl; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public final class PojoSearchSessionDelegateImpl implements PojoSearchSessionDelegate { @@ -45,8 +45,8 @@ public PojoIndexingPlan createIndexingPlan(DocumentCommitStrategy commitStrategy } @Override - public PojoSessionWorkExecutor createSessionWorkExecutor(DocumentCommitStrategy commitStrategy) { - return new PojoSessionWorkExecutorImpl( indexedTypeContextProvider, backendSessionContext, commitStrategy ); + public PojoIndexer createIndexer(DocumentCommitStrategy commitStrategy) { + return new PojoIndexerImpl( indexedTypeContextProvider, backendSessionContext, commitStrategy ); } } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java index e3ec83e28a4..fae0ba45e12 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/session/spi/PojoSearchSessionDelegate.java @@ -9,7 +9,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; import org.hibernate.search.mapper.pojo.work.spi.PojoIndexingPlan; public interface PojoSearchSessionDelegate { @@ -18,6 +18,6 @@ public interface PojoSearchSessionDelegate { PojoIndexingPlan createIndexingPlan(DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); - PojoSessionWorkExecutor createSessionWorkExecutor(DocumentCommitStrategy commitStrategy); + PojoIndexer createIndexer(DocumentCommitStrategy commitStrategy); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoSessionWorkExecutorImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexerImpl.java similarity index 75% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoSessionWorkExecutorImpl.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexerImpl.java index 71ed6b3fd9e..145183b5f1a 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoSessionWorkExecutorImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoIndexerImpl.java @@ -16,10 +16,10 @@ import org.hibernate.search.mapper.pojo.logging.impl.Log; import org.hibernate.search.mapper.pojo.model.spi.PojoRuntimeIntrospector; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; -import org.hibernate.search.mapper.pojo.work.spi.PojoSessionWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoIndexer; import org.hibernate.search.util.common.logging.impl.LoggerFactory; -public class PojoSessionWorkExecutorImpl implements PojoSessionWorkExecutor { +public class PojoIndexerImpl implements PojoIndexer { private static final Log log = LoggerFactory.make( Log.class, MethodHandles.lookup() ); @@ -28,9 +28,9 @@ public class PojoSessionWorkExecutorImpl implements PojoSessionWorkExecutor { private final PojoRuntimeIntrospector introspector; private final DocumentCommitStrategy commitStrategy; - private final Map, PojoTypeDocumentWorkExecutor> typeExecutors = new HashMap<>(); + private final Map, PojoTypeIndexer> typeExecutors = new HashMap<>(); - public PojoSessionWorkExecutorImpl(PojoWorkIndexedTypeContextProvider indexedTypeContextProvider, + public PojoIndexerImpl(PojoWorkIndexedTypeContextProvider indexedTypeContextProvider, AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { this.indexedTypeContextProvider = indexedTypeContextProvider; @@ -47,22 +47,22 @@ public CompletableFuture add(Object entity) { @Override public CompletableFuture add(Object providedId, Object entity) { Class clazz = introspector.getClass( entity ); - PojoTypeDocumentWorkExecutor typeExecutor = this.typeExecutors.get( clazz ); + PojoTypeIndexer typeExecutor = this.typeExecutors.get( clazz ); if ( typeExecutor == null ) { - typeExecutor = createTypeDocumentExecutor( clazz ); + typeExecutor = createTypeIndexer( clazz ); typeExecutors.put( clazz, typeExecutor ); } return typeExecutor.add( providedId, entity ); } - private PojoTypeDocumentWorkExecutor createTypeDocumentExecutor(Class clazz) { + private PojoTypeIndexer createTypeIndexer(Class clazz) { Optional> typeContext = indexedTypeContextProvider.getByExactClass( clazz ); if ( !typeContext.isPresent() ) { throw log.notDirectlyIndexedType( clazz ); } - return typeContext.get().createDocumentWorkExecutor( sessionContext, commitStrategy ); + return typeContext.get().createIndexer( sessionContext, commitStrategy ); } } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoTypeDocumentWorkExecutor.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoTypeIndexer.java similarity index 83% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoTypeDocumentWorkExecutor.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoTypeIndexer.java index 7783c9dbfa1..f412359648f 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoTypeDocumentWorkExecutor.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoTypeIndexer.java @@ -11,18 +11,18 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.mapper.pojo.session.context.spi.AbstractPojoBackendSessionContext; -public class PojoTypeDocumentWorkExecutor { +public class PojoTypeIndexer { private final AbstractPojoBackendSessionContext sessionContext; private final PojoWorkIndexedTypeContext typeContext; - private final IndexDocumentWorkExecutor delegate; + private final IndexIndexer delegate; - public PojoTypeDocumentWorkExecutor(PojoWorkIndexedTypeContext typeContext, + public PojoTypeIndexer(PojoWorkIndexedTypeContext typeContext, AbstractPojoBackendSessionContext sessionContext, - IndexDocumentWorkExecutor delegate) { + IndexIndexer delegate) { this.sessionContext = sessionContext; this.typeContext = typeContext; this.delegate = delegate; diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java index 23da597c6e7..b78d9f3330b 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java @@ -47,7 +47,7 @@ void resolveEntitiesToReindex(PojoReindexingCollector collector, PojoRuntimeIntr PojoIndexedTypeIndexingPlan createIndexingPlan(AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy, DocumentRefreshStrategy refreshStrategy); - PojoTypeDocumentWorkExecutor createDocumentWorkExecutor( + PojoTypeIndexer createIndexer( AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoSessionWorkExecutor.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexer.java similarity index 87% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoSessionWorkExecutor.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexer.java index 1b1a0c19ea6..c39ed93ceb1 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoSessionWorkExecutor.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoIndexer.java @@ -8,7 +8,11 @@ import java.util.concurrent.CompletableFuture; -public interface PojoSessionWorkExecutor { +/** + * An interface for indexing entities in the context of a session in a POJO mapper, + * immediately, asynchronously and without any sort of {@link PojoIndexingPlan planning}. + */ +public interface PojoIndexer { /** * Add an entity to the index, assuming that the entity is absent from the index. diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexDocumentWorkExecutor.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexIndexer.java similarity index 90% rename from util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexDocumentWorkExecutor.java rename to util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexIndexer.java index 83c926d57a4..38b1b752c52 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexDocumentWorkExecutor.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexIndexer.java @@ -11,19 +11,19 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.spi.DocumentContributor; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; import org.hibernate.search.util.impl.integrationtest.common.stub.backend.document.StubDocumentNode; import org.hibernate.search.util.impl.integrationtest.common.stub.backend.document.impl.StubDocumentElement; import org.hibernate.search.util.impl.integrationtest.common.stub.backend.index.StubDocumentWork; -public class StubIndexDocumentWorkExecutor implements IndexDocumentWorkExecutor { +public class StubIndexIndexer implements IndexIndexer { private final StubIndexManager indexManager; private final BackendSessionContext sessionContext; private final DocumentCommitStrategy commitStrategy; - public StubIndexDocumentWorkExecutor(StubIndexManager indexManager, BackendSessionContext sessionContext, + public StubIndexIndexer(StubIndexManager indexManager, BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { this.indexManager = indexManager; this.sessionContext = sessionContext; diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java index 9b16e2ea4b5..e6bd94cdbaf 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; @@ -77,9 +77,9 @@ public IndexIndexingPlan createIndexingPlan(BackendSessionC } @Override - public IndexDocumentWorkExecutor createDocumentWorkExecutor(BackendSessionContext context, + public IndexIndexer createIndexer(BackendSessionContext context, DocumentCommitStrategy commitStrategy) { - return new StubIndexDocumentWorkExecutor( this, context, commitStrategy ); + return new StubIndexIndexer( this, context, commitStrategy ); } @Override diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java index e9296d993da..df8c41518fc 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java @@ -8,7 +8,7 @@ import org.hibernate.search.engine.backend.document.DocumentElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexDocumentWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; @@ -52,14 +52,14 @@ public IndexIndexingPlan createIndexingPlan(StubBacke return indexManager.createIndexingPlan( sessionContext, commitStrategy, refreshStrategy ); } - public IndexDocumentWorkExecutor createDocumentWorkExecutor( + public IndexIndexer createIndexer( DocumentCommitStrategy commitStrategy) { - return createDocumentWorkExecutor( new StubBackendSessionContext(), commitStrategy ); + return createIndexer( new StubBackendSessionContext(), commitStrategy ); } - public IndexDocumentWorkExecutor createDocumentWorkExecutor( + public IndexIndexer createIndexer( StubBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy) { - return indexManager.createDocumentWorkExecutor( sessionContext, commitStrategy ); + return indexManager.createIndexer( sessionContext, commitStrategy ); } public IndexWorkExecutor createWorkExecutor() { From 32a1cda975d0fca7a2abf23467a278f9ec5016dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yoann=20Rodi=C3=A8re?= Date: Tue, 17 Sep 2019 11:29:19 +0200 Subject: [PATCH 11/11] HSEARCH-3606 Rename PojoScopeWorkExecutor to PojoScopeWorkspace and IndexWorkExecutor to IndexWorkspace For consistency with the new SearchWorkspace API. --- .../impl/ElasticsearchIndexManagerImpl.java | 6 ++--- .../impl/IndexManagerBackendContext.java | 8 +++--- ....java => ElasticsearchIndexWorkspace.java} | 6 ++--- .../impl/WorkExecutionBackendContext.java | 4 +-- .../impl/IndexManagerBackendContext.java | 8 +++--- .../index/impl/LuceneIndexManagerImpl.java | 6 ++--- ...xecutor.java => LuceneIndexWorkspace.java} | 6 ++--- .../impl/WorkExecutionBackendContext.java | 4 +-- .../index/spi/IndexManagerImplementor.java | 4 +-- ...xWorkExecutor.java => IndexWorkspace.java} | 5 +++- .../common/impl/MappedIndexManagerImpl.java | 6 ++--- .../mapping/spi/MappedIndexManager.java | 4 +-- .../tck/search/query/SearchQueryBaseIT.java | 2 +- .../tck/search/query/SearchQueryFetchIT.java | 2 +- .../tck/sharding/AbstractShardingIT.java | 6 ++--- .../backend/tck/work/IndexIndexerIT.java | 6 ++--- ...kExecutorIT.java => IndexWorkspaceIT.java} | 26 +++++++++---------- .../massindexing/impl/BatchCoordinator.java | 18 ++++++------- .../massindexing/impl/MassIndexerImpl.java | 10 +++---- .../orm/scope/impl/SearchScopeImpl.java | 4 +-- .../orm/work/impl/SearchWorkspaceImpl.java | 14 +++++----- .../mapping/impl/PojoIndexedTypeManager.java | 6 ++--- .../scope/impl/PojoScopeDelegateImpl.java | 8 +++--- .../pojo/scope/spi/PojoScopeDelegate.java | 4 +-- ...rImpl.java => PojoScopeWorkspaceImpl.java} | 26 +++++++++---------- .../work/impl/PojoWorkIndexedTypeContext.java | 4 +-- ...kExecutor.java => PojoScopeWorkspace.java} | 2 +- .../backend/index/impl/StubIndexManager.java | 6 ++--- ...kExecutor.java => StubIndexWorkspace.java} | 6 ++--- .../stub/mapper/StubMappingIndexManager.java | 14 +++++----- 30 files changed, 117 insertions(+), 114 deletions(-) rename backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/{ElasticsearchIndexWorkExecutor.java => ElasticsearchIndexWorkspace.java} (92%) rename backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/{LuceneIndexWorkExecutor.java => LuceneIndexWorkspace.java} (93%) rename engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/{IndexWorkExecutor.java => IndexWorkspace.java} (80%) rename integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/{IndexWorkExecutorIT.java => IndexWorkspaceIT.java} (89%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/{PojoScopeWorkExecutorImpl.java => PojoScopeWorkspaceImpl.java} (56%) rename mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/{PojoScopeWorkExecutor.java => PojoScopeWorkspace.java} (91%) rename util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/{StubIndexWorkExecutor.java => StubIndexWorkspace.java} (92%) diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java index f8a88286827..76e3ac726ee 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/ElasticsearchIndexManagerImpl.java @@ -25,7 +25,7 @@ import org.hibernate.search.engine.backend.index.IndexManager; import org.hibernate.search.engine.backend.index.spi.IndexManagerStartContext; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; @@ -162,8 +162,8 @@ public IndexIndexer createIndexer( } @Override - public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext) { - return backendContext.createWorkExecutor( + public IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext) { + return backendContext.createWorkspace( parallelOrchestrator, elasticsearchIndexName, sessionContext ); } diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java index 45da81c6009..963e21ef6dc 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/index/impl/IndexManagerBackendContext.java @@ -26,12 +26,12 @@ import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestrator; import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestratorProvider; import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexIndexer; -import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexWorkExecutor; +import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexWorkspace; import org.hibernate.search.backend.elasticsearch.work.execution.impl.ElasticsearchIndexIndexingPlan; import org.hibernate.search.backend.elasticsearch.work.execution.impl.WorkExecutionBackendContext; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -106,11 +106,11 @@ public IndexIndexer createIndexer( } @Override - public IndexWorkExecutor createWorkExecutor(ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, + public IndexWorkspace createWorkspace(ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, DetachedBackendSessionContext sessionContext) { multiTenancyStrategy.checkTenantId( sessionContext.getTenantIdentifier(), eventContext ); - return new ElasticsearchIndexWorkExecutor( + return new ElasticsearchIndexWorkspace( link.getWorkBuilderFactory(), multiTenancyStrategy, orchestrator, indexName, sessionContext ); diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkExecutor.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkspace.java similarity index 92% rename from backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkExecutor.java rename to backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkspace.java index 33951bd5459..a3642ac6c28 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkExecutor.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/ElasticsearchIndexWorkspace.java @@ -12,12 +12,12 @@ import org.hibernate.search.backend.elasticsearch.orchestration.impl.ElasticsearchWorkOrchestrator; import org.hibernate.search.backend.elasticsearch.util.spi.URLEncodedString; import org.hibernate.search.backend.elasticsearch.work.builder.factory.impl.ElasticsearchWorkBuilderFactory; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import com.google.gson.JsonObject; -public class ElasticsearchIndexWorkExecutor implements IndexWorkExecutor { +public class ElasticsearchIndexWorkspace implements IndexWorkspace { private final ElasticsearchWorkBuilderFactory builderFactory; private final MultiTenancyStrategy multiTenancyStrategy; @@ -25,7 +25,7 @@ public class ElasticsearchIndexWorkExecutor implements IndexWorkExecutor { private final URLEncodedString indexName; private final DetachedBackendSessionContext sessionContext; - public ElasticsearchIndexWorkExecutor(ElasticsearchWorkBuilderFactory builderFactory, + public ElasticsearchIndexWorkspace(ElasticsearchWorkBuilderFactory builderFactory, MultiTenancyStrategy multiTenancyStrategy, ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, DetachedBackendSessionContext sessionContext) { diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java index af87c504e6a..0a2423e9ef3 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/work/execution/impl/WorkExecutionBackendContext.java @@ -11,7 +11,7 @@ import org.hibernate.search.backend.elasticsearch.util.spi.URLEncodedString; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -40,7 +40,7 @@ IndexIndexer createIndexer( URLEncodedString indexName, BackendSessionContext sessionContext); - IndexWorkExecutor createWorkExecutor(ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, + IndexWorkspace createWorkspace(ElasticsearchWorkOrchestrator orchestrator, URLEncodedString indexName, DetachedBackendSessionContext sessionContext); } diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java index 8f8df5ba38a..5c3d3153754 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/IndexManagerBackendContext.java @@ -30,13 +30,13 @@ import org.hibernate.search.backend.lucene.search.query.impl.LuceneSearchQueryBuilder; import org.hibernate.search.backend.lucene.search.query.impl.SearchBackendContext; import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexIndexer; -import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexWorkExecutor; +import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexWorkspace; import org.hibernate.search.backend.lucene.work.execution.impl.LuceneIndexIndexingPlan; import org.hibernate.search.backend.lucene.work.execution.impl.WorkExecutionBackendContext; import org.hibernate.search.backend.lucene.work.execution.impl.WorkExecutionIndexManagerContext; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.backend.lucene.document.impl.LuceneRootDocumentBuilder; @@ -139,11 +139,11 @@ public IndexIndexer createIndexer( } @Override - public IndexWorkExecutor createWorkExecutor(WorkExecutionIndexManagerContext indexManagerContext, + public IndexWorkspace createWorkspace(WorkExecutionIndexManagerContext indexManagerContext, DetachedBackendSessionContext sessionContext) { multiTenancyStrategy.checkTenantId( sessionContext.getTenantIdentifier(), eventContext ); - return new LuceneIndexWorkExecutor( workFactory, indexManagerContext, sessionContext ); + return new LuceneIndexWorkspace( workFactory, indexManagerContext, sessionContext ); } @Override diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java index d8b5c4c93e1..9127771ea48 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/index/impl/LuceneIndexManagerImpl.java @@ -20,7 +20,7 @@ import org.hibernate.search.engine.backend.index.IndexManager; import org.hibernate.search.engine.backend.index.spi.IndexManagerStartContext; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; @@ -105,8 +105,8 @@ public IndexIndexer createIndexer( } @Override - public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext) { - return backendContext.createWorkExecutor( shardHolder, sessionContext ); + public IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext) { + return backendContext.createWorkspace( shardHolder, sessionContext ); } @Override diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkExecutor.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkspace.java similarity index 93% rename from backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkExecutor.java rename to backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkspace.java index 7b359dd93d6..5a0db3eb5e9 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkExecutor.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/LuceneIndexWorkspace.java @@ -14,16 +14,16 @@ import org.hibernate.search.backend.lucene.work.impl.LuceneWriteWork; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; -public class LuceneIndexWorkExecutor implements IndexWorkExecutor { +public class LuceneIndexWorkspace implements IndexWorkspace { private final LuceneWorkFactory factory; private final WorkExecutionIndexManagerContext indexManagerContext; private final DetachedBackendSessionContext sessionContext; - public LuceneIndexWorkExecutor(LuceneWorkFactory factory, + public LuceneIndexWorkspace(LuceneWorkFactory factory, WorkExecutionIndexManagerContext indexManagerContext, DetachedBackendSessionContext sessionContext) { this.factory = factory; diff --git a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java index ed638bbed5f..2f26c7d8f1e 100644 --- a/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java +++ b/backend/lucene/src/main/java/org/hibernate/search/backend/lucene/work/execution/impl/WorkExecutionBackendContext.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.engine.backend.session.spi.BackendSessionContext; @@ -47,6 +47,6 @@ IndexIndexer createIndexer( BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); - IndexWorkExecutor createWorkExecutor(WorkExecutionIndexManagerContext indexManagerContext, + IndexWorkspace createWorkspace(WorkExecutionIndexManagerContext indexManagerContext, DetachedBackendSessionContext sessionContext); } diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java b/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java index f03a6557425..104b5d9b12e 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/index/spi/IndexManagerImplementor.java @@ -13,7 +13,7 @@ import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.spi.BackendStartContext; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; @@ -48,7 +48,7 @@ IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, IndexIndexer createIndexer(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); - IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext); + IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext); IndexScopeBuilder createScopeBuilder(BackendMappingContext mappingContext); diff --git a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkExecutor.java b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkspace.java similarity index 80% rename from engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkExecutor.java rename to engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkspace.java index 4f247dec0f7..d9688af64ca 100644 --- a/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkExecutor.java +++ b/engine/src/main/java/org/hibernate/search/engine/backend/work/execution/spi/IndexWorkspace.java @@ -8,7 +8,10 @@ import java.util.concurrent.CompletableFuture; -public interface IndexWorkExecutor { +/** + * The entry point for explicit index operations on a single index. + */ +public interface IndexWorkspace { CompletableFuture optimize(); diff --git a/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java b/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java index fafe5f12fb5..fc4e8fd7a4e 100644 --- a/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java +++ b/engine/src/main/java/org/hibernate/search/engine/common/impl/MappedIndexManagerImpl.java @@ -12,7 +12,7 @@ import org.hibernate.search.engine.backend.index.spi.IndexManagerImplementor; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; @@ -46,8 +46,8 @@ public IndexIndexer createIndexer(BackendSessionContext sessionContext, } @Override - public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext) { - return implementor.createWorkExecutor( sessionContext ); + public IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext) { + return implementor.createWorkspace( sessionContext ); } @Override diff --git a/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java b/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java index a9a8fc82dd8..d707efc4b45 100644 --- a/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java +++ b/engine/src/main/java/org/hibernate/search/engine/mapper/mapping/spi/MappedIndexManager.java @@ -11,7 +11,7 @@ import org.hibernate.search.engine.backend.index.IndexManager; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; @@ -33,7 +33,7 @@ IndexIndexingPlan createIndexingPlan(BackendSessionContext sessionContext, IndexIndexer createIndexer(BackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); - IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext); + IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext); MappedIndexScopeBuilder createScopeBuilder(BackendMappingContext mappingContext); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java index df111578afa..cec9380b26c 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryBaseIT.java @@ -135,7 +135,7 @@ private void initData(int documentCount) { } CompletableFuture.allOf( futures.toArray( new CompletableFuture[0] ) ).join(); - indexManager.createWorkExecutor().flush().join(); + indexManager.createWorkspace().flush().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java index 70925c32faf..fb53af557ad 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/query/SearchQueryFetchIT.java @@ -299,7 +299,7 @@ private void initData() { } CompletableFuture.allOf( futures.toArray( new CompletableFuture[0] ) ).join(); - indexManager.createWorkExecutor().flush().join(); + indexManager.createWorkspace().flush().join(); // Check that all documents are searchable StubMappingScope scope = indexManager.createScope(); diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java index cac3b76376f..9e8c78f2c04 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/sharding/AbstractShardingIT.java @@ -18,7 +18,7 @@ import org.hibernate.search.engine.backend.document.IndexFieldReference; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.mapper.mapping.building.spi.IndexedEntityBindingContext; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.util.impl.integrationtest.common.assertion.NormalizedDocRefHit; @@ -66,8 +66,8 @@ protected final void initData(Map> docIdByRoutingKey) { } CompletableFuture.allOf( tasks.toArray( new CompletableFuture[0] ) ).join(); - IndexWorkExecutor indexWorkExecutor = indexManager.createWorkExecutor(); - indexWorkExecutor.flush().join(); + IndexWorkspace workspace = indexManager.createWorkspace(); + workspace.flush().join(); } protected class IndexMapping { diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java index a294edea0d6..aaa5fd5f9fd 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexIndexerIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.rule.SearchSetupHelper; @@ -61,7 +61,7 @@ public void checkAllDocumentsAreSearchable() { IndexIndexer indexer = indexManager.createIndexer( DocumentCommitStrategy.NONE ); CompletableFuture[] tasks = new CompletableFuture[NUMBER_OF_BOOKS]; - IndexWorkExecutor workExecutor = indexManager.createWorkExecutor(); + IndexWorkspace workspace = indexManager.createWorkspace(); for ( int i = 0; i < NUMBER_OF_BOOKS; i++ ) { final String id = i + ""; @@ -70,7 +70,7 @@ public void checkAllDocumentsAreSearchable() { } ); } CompletableFuture.allOf( tasks ).join(); - workExecutor.flush().join(); + workspace.flush().join(); SearchQuery query = indexManager.createScope().query() .predicate( f -> f.matchAll() ) diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkspaceIT.java similarity index 89% rename from integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java rename to integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkspaceIT.java index b1807e373c8..70c8b834a57 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkExecutorIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/work/IndexWorkspaceIT.java @@ -15,7 +15,7 @@ import org.hibernate.search.engine.backend.document.model.dsl.IndexSchemaElement; import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.common.DocumentReference; import org.hibernate.search.engine.search.query.SearchQuery; import org.hibernate.search.integrationtest.backend.tck.testsupport.util.TckBackendHelper; @@ -31,10 +31,10 @@ /** * Verify that the work executor operations: - * {@link IndexWorkExecutor#optimize()}, {@link IndexWorkExecutor#purge()}, {@link IndexWorkExecutor#flush()} + * {@link IndexWorkspace#optimize()}, {@link IndexWorkspace#purge()}, {@link IndexWorkspace#flush()} * work properly, in every backends. */ -public class IndexWorkExecutorIT { +public class IndexWorkspaceIT { private static final String TENANT_1 = "tenant1"; private static final String TENANT_2 = "tenant2"; @@ -69,18 +69,18 @@ public void runOptimizePurgeAndFlushInSequence() { .setup(); // Do not provide a tenant - IndexWorkExecutor workExecutor = indexManager.createWorkExecutor(); + IndexWorkspace workspace = indexManager.createWorkspace(); createBookIndexes( noTenantSessionContext ); - workExecutor.flush().join(); + workspace.flush().join(); assertBookNumberIsEqualsTo( NUMBER_OF_BOOKS, noTenantSessionContext ); - workExecutor.optimize().join(); + workspace.optimize().join(); assertBookNumberIsEqualsTo( NUMBER_OF_BOOKS, noTenantSessionContext ); // purge without providing a tenant - workExecutor.purge().join(); - workExecutor.flush().join(); + workspace.purge().join(); + workspace.flush().join(); assertBookNumberIsEqualsTo( 0, noTenantSessionContext ); } @@ -97,21 +97,21 @@ public void runOptimizePurgeAndFlushWithMultiTenancy() { .setup(); // Do provide a tenant ID - IndexWorkExecutor workExecutor = indexManager.createWorkExecutor( tenant1SessionContext ); + IndexWorkspace workspace = indexManager.createWorkspace( tenant1SessionContext ); createBookIndexes( tenant1SessionContext ); createBookIndexes( tenant2SessionContext ); - workExecutor.flush().join(); + workspace.flush().join(); assertBookNumberIsEqualsTo( NUMBER_OF_BOOKS, tenant1SessionContext ); assertBookNumberIsEqualsTo( NUMBER_OF_BOOKS, tenant2SessionContext ); - workExecutor.optimize().join(); + workspace.optimize().join(); assertBookNumberIsEqualsTo( NUMBER_OF_BOOKS, tenant1SessionContext ); assertBookNumberIsEqualsTo( NUMBER_OF_BOOKS, tenant2SessionContext ); - workExecutor.purge().join(); - workExecutor.flush().join(); + workspace.purge().join(); + workspace.flush().join(); // check that only TENANT_1 is affected by the purge assertBookNumberIsEqualsTo( 0, tenant1SessionContext ); diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/BatchCoordinator.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/BatchCoordinator.java index c762d7a6de7..af29a7bb8d9 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/BatchCoordinator.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/BatchCoordinator.java @@ -17,7 +17,7 @@ import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.mapper.orm.logging.impl.Log; import org.hibernate.search.mapper.orm.massindexing.monitor.MassIndexingMonitor; -import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkspace; import org.hibernate.search.util.common.AssertionFailure; import org.hibernate.search.util.common.impl.Executors; import org.hibernate.search.util.common.logging.impl.LoggerFactory; @@ -39,7 +39,7 @@ public class BatchCoordinator extends ErrorHandledRunnable { private final HibernateOrmMassIndexingMappingContext mappingContext; private final DetachedBackendSessionContext sessionContext; private final Set> rootEntities; //entity types to reindex excluding all subtypes of each-other - private final PojoScopeWorkExecutor scopeWorkExecutor; + private final PojoScopeWorkspace scopeWorkspace; private final int typesToIndexInParallel; private final int documentBuilderThreads; @@ -57,7 +57,7 @@ public class BatchCoordinator extends ErrorHandledRunnable { public BatchCoordinator(HibernateOrmMassIndexingMappingContext mappingContext, DetachedBackendSessionContext sessionContext, - Set> rootEntities, PojoScopeWorkExecutor scopeWorkExecutor, + Set> rootEntities, PojoScopeWorkspace scopeWorkspace, int typesToIndexInParallel, int documentBuilderThreads, CacheMode cacheMode, int objectLoadingBatchSize, long objectsLimit, boolean optimizeAtEnd, boolean purgeAtStart, boolean optimizeAfterPurge, MassIndexingMonitor monitor, @@ -65,7 +65,7 @@ public BatchCoordinator(HibernateOrmMassIndexingMappingContext mappingContext, this.mappingContext = mappingContext; this.sessionContext = sessionContext; this.rootEntities = rootEntities; - this.scopeWorkExecutor = scopeWorkExecutor; + this.scopeWorkspace = scopeWorkspace; this.idFetchSize = idFetchSize; this.transactionTimeout = transactionTimeout; @@ -145,16 +145,16 @@ private void doBatchWork() throws InterruptedException { */ private void afterBatch() { if ( this.optimizeAtEnd ) { - scopeWorkExecutor.optimize().join(); + scopeWorkspace.optimize().join(); } - scopeWorkExecutor.flush().join(); + scopeWorkspace.flush().join(); } /** * batch indexing has been interrupted : flush to apply all index update realized before interruption */ private void afterBatchOnInterruption() { - scopeWorkExecutor.flush().join(); + scopeWorkspace.flush().join(); } /** @@ -162,9 +162,9 @@ private void afterBatchOnInterruption() { */ private void beforeBatch() { if ( this.purgeAtStart ) { - scopeWorkExecutor.purge().join(); + scopeWorkspace.purge().join(); if ( this.optimizeAfterPurge ) { - scopeWorkExecutor.optimize().join(); + scopeWorkspace.optimize().join(); } } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/MassIndexerImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/MassIndexerImpl.java index d3636ef4d21..34afc8d457d 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/MassIndexerImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/massindexing/impl/MassIndexerImpl.java @@ -18,7 +18,7 @@ import org.hibernate.search.mapper.orm.logging.impl.Log; import org.hibernate.search.mapper.orm.massindexing.monitor.MassIndexingMonitor; import org.hibernate.search.mapper.orm.massindexing.monitor.impl.SimpleIndexingProgressMonitor; -import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkspace; import org.hibernate.search.util.common.logging.impl.LoggerFactory; /** @@ -37,7 +37,7 @@ public class MassIndexerImpl implements MassIndexer { private final DetachedBackendSessionContext sessionContext; private final Set> rootEntities; - private final PojoScopeWorkExecutor scopeWorkExecutor; + private final PojoScopeWorkspace scopeWorkspace; // default settings defined here: private int typesToIndexInParallel = 1; @@ -55,11 +55,11 @@ public class MassIndexerImpl implements MassIndexer { public MassIndexerImpl(HibernateOrmMassIndexingMappingContext mappingContext, Set> targetedIndexedTypes, DetachedBackendSessionContext sessionContext, - PojoScopeWorkExecutor scopeWorkExecutor) { + PojoScopeWorkspace scopeWorkspace) { this.mappingContext = mappingContext; this.sessionContext = sessionContext; this.rootEntities = toRootEntities( targetedIndexedTypes ); - this.scopeWorkExecutor = scopeWorkExecutor; + this.scopeWorkspace = scopeWorkspace; // TODO HSEARCH-3057 use a JMX monitor if JMX is enabled (see Search 5) this.monitor = new SimpleIndexingProgressMonitor(); @@ -172,7 +172,7 @@ public void startAndWait() throws InterruptedException { protected BatchCoordinator createCoordinator() { return new BatchCoordinator( mappingContext, sessionContext, - rootEntities, scopeWorkExecutor, + rootEntities, scopeWorkspace, typesToIndexInParallel, documentBuilderThreads, cacheMode, objectLoadingBatchSize, objectsLimit, optimizeAtEnd, purgeAtStart, optimizeAfterPurge, diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java index 962b3c51389..72feb084176 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/scope/impl/SearchScopeImpl.java @@ -74,7 +74,7 @@ public SearchWorkspace workspace(String tenantId) { } public SearchWorkspace workspace(DetachedBackendSessionContext detachedSessionContext) { - return new SearchWorkspaceImpl( delegate.executor( detachedSessionContext ) ); + return new SearchWorkspaceImpl( delegate.workspace( detachedSessionContext ) ); } @Override @@ -92,7 +92,7 @@ public MassIndexer massIndexer(DetachedBackendSessionContext detachedSessionCont mappingContext, delegate.getIncludedIndexedTypes(), detachedSessionContext, - delegate.executor( detachedSessionContext ) + delegate.workspace( detachedSessionContext ) ); } } diff --git a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java index 23ce01bf854..2ff9b8e8e47 100644 --- a/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java +++ b/mapper/orm/src/main/java/org/hibernate/search/mapper/orm/work/impl/SearchWorkspaceImpl.java @@ -9,14 +9,14 @@ import java.util.concurrent.CompletableFuture; import org.hibernate.search.mapper.orm.work.SearchWorkspace; -import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkspace; import org.hibernate.search.util.common.impl.Futures; public class SearchWorkspaceImpl implements SearchWorkspace { - private final PojoScopeWorkExecutor scopeWorkExecutor; + private final PojoScopeWorkspace delegate; - public SearchWorkspaceImpl(PojoScopeWorkExecutor scopeWorkExecutor) { - this.scopeWorkExecutor = scopeWorkExecutor; + public SearchWorkspaceImpl(PojoScopeWorkspace delegate) { + this.delegate = delegate; } @Override @@ -26,7 +26,7 @@ public void optimize() { @Override public CompletableFuture optimizeAsync() { - return scopeWorkExecutor.optimize(); + return delegate.optimize(); } @Override @@ -36,7 +36,7 @@ public void purge() { @Override public CompletableFuture purgeAsync() { - return scopeWorkExecutor.purge(); + return delegate.purge(); } @Override @@ -46,6 +46,6 @@ public void flush() { @Override public CompletableFuture flushAsync() { - return scopeWorkExecutor.flush(); + return delegate.flush(); } } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java index f3e8fc3b34e..55121eb7d31 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/mapping/impl/PojoIndexedTypeManager.java @@ -13,7 +13,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.mapping.spi.BackendMappingContext; import org.hibernate.search.engine.mapper.mapping.spi.MappedIndexManager; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; @@ -151,8 +151,8 @@ public PojoTypeIndexer createIndexer( } @Override - public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext) { - return indexManager.createWorkExecutor( sessionContext ); + public IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext) { + return indexManager.createWorkspace( sessionContext ); } @Override diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/impl/PojoScopeDelegateImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/impl/PojoScopeDelegateImpl.java index 1e815bef684..9969d98bc44 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/impl/PojoScopeDelegateImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/impl/PojoScopeDelegateImpl.java @@ -28,8 +28,8 @@ import org.hibernate.search.mapper.pojo.mapping.context.spi.AbstractPojoBackendMappingContext; import org.hibernate.search.engine.search.predicate.dsl.SearchPredicateFactory; import org.hibernate.search.engine.search.sort.dsl.SearchSortFactory; -import org.hibernate.search.mapper.pojo.work.impl.PojoScopeWorkExecutorImpl; -import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; +import org.hibernate.search.mapper.pojo.work.impl.PojoScopeWorkspaceImpl; +import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkspace; import org.hibernate.search.util.common.logging.impl.LoggerFactory; public final class PojoScopeDelegateImpl implements PojoScopeDelegate { @@ -126,8 +126,8 @@ public SearchAggregationFactory aggregation() { } @Override - public PojoScopeWorkExecutor executor(DetachedBackendSessionContext sessionContext) { - return new PojoScopeWorkExecutorImpl( + public PojoScopeWorkspace workspace(DetachedBackendSessionContext sessionContext) { + return new PojoScopeWorkspaceImpl( targetedTypeContexts, sessionContext ); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/spi/PojoScopeDelegate.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/spi/PojoScopeDelegate.java index 06d84600e7d..943addba1df 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/spi/PojoScopeDelegate.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/scope/spi/PojoScopeDelegate.java @@ -16,7 +16,7 @@ import org.hibernate.search.engine.search.query.dsl.SearchQueryHitTypeStep; import org.hibernate.search.engine.search.sort.dsl.SearchSortFactory; import org.hibernate.search.engine.search.loading.context.spi.LoadingContextBuilder; -import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkspace; /** * @param The type of entity references, i.e. the type of hits returned by @@ -44,6 +44,6 @@ public interface PojoScopeDelegate { SearchAggregationFactory aggregation(); - PojoScopeWorkExecutor executor(DetachedBackendSessionContext sessionContext); + PojoScopeWorkspace workspace(DetachedBackendSessionContext sessionContext); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoScopeWorkExecutorImpl.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoScopeWorkspaceImpl.java similarity index 56% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoScopeWorkExecutorImpl.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoScopeWorkspaceImpl.java index 235a98066d8..20d472448f0 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoScopeWorkExecutorImpl.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoScopeWorkspaceImpl.java @@ -12,42 +12,42 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; -import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkExecutor; +import org.hibernate.search.mapper.pojo.work.spi.PojoScopeWorkspace; -public class PojoScopeWorkExecutorImpl implements PojoScopeWorkExecutor { +public class PojoScopeWorkspaceImpl implements PojoScopeWorkspace { - private final List workExecutors = new ArrayList<>(); + private final List delegates = new ArrayList<>(); - public PojoScopeWorkExecutorImpl(Set> targetedTypeContexts, + public PojoScopeWorkspaceImpl(Set> targetedTypeContexts, DetachedBackendSessionContext sessionContext) { for ( PojoWorkIndexedTypeContext targetedTypeContext : targetedTypeContexts ) { - workExecutors.add( targetedTypeContext.createWorkExecutor( sessionContext ) ); + delegates.add( targetedTypeContext.createWorkspace( sessionContext ) ); } } @Override public CompletableFuture optimize() { - return doOperationOnTypes( IndexWorkExecutor::optimize ); + return doOperationOnTypes( IndexWorkspace::optimize ); } @Override public CompletableFuture purge() { - return doOperationOnTypes( IndexWorkExecutor::purge ); + return doOperationOnTypes( IndexWorkspace::purge ); } @Override public CompletableFuture flush() { - return doOperationOnTypes( IndexWorkExecutor::flush ); + return doOperationOnTypes( IndexWorkspace::flush ); } - private CompletableFuture doOperationOnTypes(Function> operation) { - CompletableFuture[] futures = new CompletableFuture[workExecutors.size()]; + private CompletableFuture doOperationOnTypes(Function> operation) { + CompletableFuture[] futures = new CompletableFuture[delegates.size()]; int typeCounter = 0; - for ( IndexWorkExecutor workExecutor : workExecutors ) { - futures[typeCounter++] = operation.apply( workExecutor ); + for ( IndexWorkspace delegate : delegates ) { + futures[typeCounter++] = operation.apply( delegate ); } // TODO HSEARCH-3110 use an ErrorHandler here? diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java index b78d9f3330b..c5ae6f947b7 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/impl/PojoWorkIndexedTypeContext.java @@ -13,7 +13,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; import org.hibernate.search.engine.backend.work.execution.spi.DocumentReferenceProvider; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.mapper.pojo.bridge.mapping.impl.IdentifierMappingImplementor; import org.hibernate.search.mapper.pojo.automaticindexing.impl.PojoReindexingCollector; @@ -51,6 +51,6 @@ PojoTypeIndexer createIndexer( AbstractPojoBackendSessionContext sessionContext, DocumentCommitStrategy commitStrategy); - IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext); + IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext); } diff --git a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoScopeWorkExecutor.java b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoScopeWorkspace.java similarity index 91% rename from mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoScopeWorkExecutor.java rename to mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoScopeWorkspace.java index 17394bbac94..0d9b7b4f502 100644 --- a/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoScopeWorkExecutor.java +++ b/mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/work/spi/PojoScopeWorkspace.java @@ -8,7 +8,7 @@ import java.util.concurrent.CompletableFuture; -public interface PojoScopeWorkExecutor { +public interface PojoScopeWorkspace { CompletableFuture optimize(); diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java index e6bd94cdbaf..c86852151cf 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexManager.java @@ -13,7 +13,7 @@ import org.hibernate.search.engine.backend.index.IndexManager; import org.hibernate.search.engine.backend.index.spi.IndexManagerStartContext; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.scope.spi.IndexScopeBuilder; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; @@ -83,8 +83,8 @@ public IndexIndexer createIndexer(BackendSessionContext con } @Override - public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext) { - return new StubIndexWorkExecutor( name, backend.getBehavior(), sessionContext ); + public IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext) { + return new StubIndexWorkspace( name, backend.getBehavior(), sessionContext ); } @Override diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkExecutor.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkspace.java similarity index 92% rename from util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkExecutor.java rename to util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkspace.java index b56a1e1ad38..030563ccd65 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkExecutor.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/backend/index/impl/StubIndexWorkspace.java @@ -9,18 +9,18 @@ import java.util.Collections; import java.util.concurrent.CompletableFuture; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.session.spi.DetachedBackendSessionContext; import org.hibernate.search.util.impl.integrationtest.common.stub.backend.StubBackendBehavior; import org.hibernate.search.util.impl.integrationtest.common.stub.backend.index.StubIndexScopeWork; -class StubIndexWorkExecutor implements IndexWorkExecutor { +class StubIndexWorkspace implements IndexWorkspace { private final String indexName; private final StubBackendBehavior behavior; private final DetachedBackendSessionContext sessionContext; - StubIndexWorkExecutor(String indexName, StubBackendBehavior behavior, + StubIndexWorkspace(String indexName, StubBackendBehavior behavior, DetachedBackendSessionContext sessionContext) { this.indexName = indexName; this.behavior = behavior; diff --git a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java index df8c41518fc..6d8c1bce37b 100644 --- a/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java +++ b/util/internal/integrationtest/common/src/main/java/org/hibernate/search/util/impl/integrationtest/common/stub/mapper/StubMappingIndexManager.java @@ -10,7 +10,7 @@ import org.hibernate.search.engine.backend.work.execution.DocumentCommitStrategy; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexer; import org.hibernate.search.engine.backend.work.execution.DocumentRefreshStrategy; -import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkExecutor; +import org.hibernate.search.engine.backend.work.execution.spi.IndexWorkspace; import org.hibernate.search.engine.backend.work.execution.spi.IndexIndexingPlan; import org.hibernate.search.engine.mapper.mapping.spi.MappedIndexManager; import org.hibernate.search.engine.mapper.scope.spi.MappedIndexScopeBuilder; @@ -62,16 +62,16 @@ public IndexIndexer createIndexer( return indexManager.createIndexer( sessionContext, commitStrategy ); } - public IndexWorkExecutor createWorkExecutor() { - return createWorkExecutor( new StubBackendSessionContext() ); + public IndexWorkspace createWorkspace() { + return createWorkspace( new StubBackendSessionContext() ); } - public IndexWorkExecutor createWorkExecutor(StubBackendSessionContext sessionContext) { - return createWorkExecutor( DetachedBackendSessionContext.of( sessionContext ) ); + public IndexWorkspace createWorkspace(StubBackendSessionContext sessionContext) { + return createWorkspace( DetachedBackendSessionContext.of( sessionContext ) ); } - public IndexWorkExecutor createWorkExecutor(DetachedBackendSessionContext sessionContext) { - return indexManager.createWorkExecutor( sessionContext ); + public IndexWorkspace createWorkspace(DetachedBackendSessionContext sessionContext) { + return indexManager.createWorkspace( sessionContext ); } /**