diff --git a/pom.xml b/pom.xml index a23d375ed..78fe4111c 100644 --- a/pom.xml +++ b/pom.xml @@ -103,7 +103,7 @@ ${java.version} ${java.version} 2.28.2 - 4.0.0-beta03 + 4.0.0-rc1 3.5.8 3.0.1 UTF-8 diff --git a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultNeo4jClient.java b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultNeo4jClient.java index 2349492c3..d51773063 100644 --- a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultNeo4jClient.java +++ b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultNeo4jClient.java @@ -37,10 +37,10 @@ import java.util.function.Function; import java.util.function.Supplier; import org.neo4j.driver.Driver; +import org.neo4j.driver.QueryRunner; import org.neo4j.driver.Record; +import org.neo4j.driver.Result; import org.neo4j.driver.Session; -import org.neo4j.driver.StatementResult; -import org.neo4j.driver.StatementRunner; import org.neo4j.driver.summary.ResultSummary; import org.neo4j.driver.types.TypeSystem; import org.neo4j.springframework.data.core.convert.Neo4jConversions; @@ -73,32 +73,32 @@ class DefaultNeo4jClient implements Neo4jClient { new Neo4jConversions().registerConvertersIn((ConverterRegistry) conversionService); } - AutoCloseableStatementRunner getStatementRunner(@Nullable final String targetDatabase) { + AutoCloseableQueryRunner getQueryRunner(@Nullable final String targetDatabase) { - StatementRunner statementRunner = retrieveTransaction(driver, targetDatabase); - if (statementRunner == null) { - statementRunner = driver.session(defaultSessionConfig(targetDatabase)); + QueryRunner queryRunner = retrieveTransaction(driver, targetDatabase); + if (queryRunner == null) { + queryRunner = driver.session(defaultSessionConfig(targetDatabase)); } - return (AutoCloseableStatementRunner) Proxy.newProxyInstance(this.getClass().getClassLoader(), - new Class[] { AutoCloseableStatementRunner.class }, - new AutoCloseableStatementRunnerHandler(statementRunner)); + return (AutoCloseableQueryRunner) Proxy.newProxyInstance(this.getClass().getClassLoader(), + new Class[] { AutoCloseableQueryRunner.class }, + new AutoCloseableQueryRunnerHandler(queryRunner)); } /** - * Makes a statement runner automatically closeable and aware whether it's session or a transaction + * Makes a query runner automatically closeable and aware whether it's session or a transaction */ - interface AutoCloseableStatementRunner extends StatementRunner, AutoCloseable { + interface AutoCloseableQueryRunner extends QueryRunner, AutoCloseable { @Override void close(); } - static class AutoCloseableStatementRunnerHandler implements InvocationHandler { + static class AutoCloseableQueryRunnerHandler implements InvocationHandler { private final Map cachedHandles = new ConcurrentHashMap<>(); - private final StatementRunner target; + private final QueryRunner target; - AutoCloseableStatementRunnerHandler(StatementRunner target) { + AutoCloseableQueryRunnerHandler(QueryRunner target) { this.target = target; } @@ -137,7 +137,7 @@ class DefaultNeo4jClient implements Neo4jClient { } @Override - public OngoingDelegation delegateTo(Function> callback) { + public OngoingDelegation delegateTo(Function> callback) { return new DefaultRunnableDelegation<>(callback); } @@ -160,7 +160,7 @@ class DefaultNeo4jClient implements Neo4jClient { private final NamedParameters parameters; - protected final StatementResult runWith(AutoCloseableStatementRunner statementRunner) { + protected final Result runWith(AutoCloseableQueryRunner statementRunner) { String statementTemplate = cypherSupplier.get(); if (cypherLog.isDebugEnabled()) { @@ -171,8 +171,7 @@ class DefaultNeo4jClient implements Neo4jClient { } } - StatementResult result = statementRunner.run(statementTemplate, parameters.get()); - return result; + return statementRunner.run(statementTemplate, parameters.get()); } } @@ -247,8 +246,8 @@ class DefaultNeo4jClient implements Neo4jClient { @Override public ResultSummary run() { - try (AutoCloseableStatementRunner statementRunner = getStatementRunner(this.targetDatabase)) { - StatementResult result = runnableStatement.runWith(statementRunner); + try (AutoCloseableQueryRunner statementRunner = getQueryRunner(this.targetDatabase)) { + Result result = runnableStatement.runWith(statementRunner); return result.consume(); } } @@ -280,8 +279,8 @@ class DefaultNeo4jClient implements Neo4jClient { @Override public Optional one() { - try (AutoCloseableStatementRunner statementRunner = getStatementRunner(this.targetDatabase)) { - StatementResult result = runnableStatement.runWith(statementRunner); + try (AutoCloseableQueryRunner statementRunner = getQueryRunner(this.targetDatabase)) { + Result result = runnableStatement.runWith(statementRunner); return result.hasNext() ? Optional.of(mappingFunction.apply(typeSystem, result.single())) : Optional.empty(); @@ -291,8 +290,8 @@ class DefaultNeo4jClient implements Neo4jClient { @Override public Optional first() { - try (AutoCloseableStatementRunner statementRunner = getStatementRunner(this.targetDatabase)) { - StatementResult result = runnableStatement.runWith(statementRunner); + try (AutoCloseableQueryRunner statementRunner = getQueryRunner(this.targetDatabase)) { + Result result = runnableStatement.runWith(statementRunner); return result.stream().map(partialMappingFunction(typeSystem)).findFirst(); } } @@ -300,8 +299,8 @@ class DefaultNeo4jClient implements Neo4jClient { @Override public Collection all() { - try (AutoCloseableStatementRunner statementRunner = getStatementRunner(this.targetDatabase)) { - StatementResult result = runnableStatement.runWith(statementRunner); + try (AutoCloseableQueryRunner statementRunner = getQueryRunner(this.targetDatabase)) { + Result result = runnableStatement.runWith(statementRunner); return result.stream().map(partialMappingFunction(typeSystem)).collect(toList()); } } @@ -317,15 +316,15 @@ class DefaultNeo4jClient implements Neo4jClient { class DefaultRunnableDelegation implements RunnableDelegation, OngoingDelegation { - private final Function> callback; + private final Function> callback; @Nullable private String targetDatabase; - DefaultRunnableDelegation(Function> callback) { + DefaultRunnableDelegation(Function> callback) { this(callback, null); } - DefaultRunnableDelegation(Function> callback, @Nullable String targetDatabase) { + DefaultRunnableDelegation(Function> callback, @Nullable String targetDatabase) { this.callback = callback; this.targetDatabase = targetDatabase; } @@ -339,8 +338,8 @@ class DefaultNeo4jClient implements Neo4jClient { @Override public Optional run() { - try (AutoCloseableStatementRunner statementRunner = getStatementRunner(targetDatabase)) { - return callback.apply(statementRunner); + try (AutoCloseableQueryRunner queryRunner = getQueryRunner(targetDatabase)) { + return callback.apply(queryRunner); } } } diff --git a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultReactiveNeo4jClient.java b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultReactiveNeo4jClient.java index 649f40ba4..87450d7b9 100644 --- a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultReactiveNeo4jClient.java +++ b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/DefaultReactiveNeo4jClient.java @@ -34,7 +34,7 @@ import java.util.function.Supplier; import org.neo4j.driver.Driver; import org.neo4j.driver.Record; import org.neo4j.driver.reactive.RxSession; -import org.neo4j.driver.reactive.RxStatementRunner; +import org.neo4j.driver.reactive.RxQueryRunner; import org.neo4j.driver.summary.ResultSummary; import org.neo4j.driver.types.TypeSystem; import org.neo4j.springframework.data.core.Neo4jClient.*; @@ -80,19 +80,19 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { ); } - Mono doInStatementRunnerForMono(final String targetDatabase, Function> func) { + Mono doInQueryRunnerForMono(final String targetDatabase, Function> func) { return Mono.usingWhen(retrieveRxStatementRunnerHolder(targetDatabase), - holder -> func.apply(holder.getRxStatementRunner()), + holder -> func.apply(holder.getRxQueryRunner()), RxStatementRunnerHolder::getCommit, (holder, ex) -> holder.getRollback(), RxStatementRunnerHolder::getCommit); } - Flux doInStatementRunnerForFlux(final String targetDatabase, Function> func) { + Flux doInStatementRunnerForFlux(final String targetDatabase, Function> func) { return Flux.usingWhen(retrieveRxStatementRunnerHolder(targetDatabase), - holder -> func.apply(holder.getRxStatementRunner()), + holder -> func.apply(holder.getRxQueryRunner()), RxStatementRunnerHolder::getCommit, (holder, ex) -> holder.getRollback(), RxStatementRunnerHolder::getCommit); @@ -109,7 +109,7 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { } @Override - public OngoingDelegation delegateTo(Function> callback) { + public OngoingDelegation delegateTo(Function> callback) { return new DefaultRunnableDelegation<>(callback); } @@ -235,7 +235,7 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { return Mono.fromSupplier(cypherSupplier).zipWith(Mono.just(parameters.get())); } - Flux executeWith(Tuple2> t, RxStatementRunner runner) { + Flux executeWith(Tuple2> t, RxQueryRunner runner) { return Flux.from(runner.run(t.getT1(), t.getT2()).records()).map(r -> mappingFunction.apply(typeSystem, r)); } @@ -243,7 +243,7 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { @Override public Mono one() { - return doInStatementRunnerForMono( + return doInQueryRunnerForMono( targetDatabase, (runner) -> prepareStatement().flatMapMany(t -> executeWith(t, runner)).singleOrEmpty()); } @@ -251,7 +251,7 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { @Override public Mono first() { - return doInStatementRunnerForMono( + return doInQueryRunnerForMono( targetDatabase, runner -> prepareStatement().flatMapMany(t -> executeWith(t, runner)).next()); } @@ -267,7 +267,7 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { Mono run() { - return doInStatementRunnerForMono( + return doInQueryRunnerForMono( targetDatabase, runner -> prepareStatement().flatMap(t -> Mono.from(runner.run(t.getT1(), t.getT2()).consume()))); } @@ -275,15 +275,15 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { class DefaultRunnableDelegation implements RunnableDelegation, OngoingDelegation { - private final Function> callback; + private final Function> callback; private String targetDatabase; - DefaultRunnableDelegation(Function> callback) { + DefaultRunnableDelegation(Function> callback) { this(callback, null); } - DefaultRunnableDelegation(Function> callback, + DefaultRunnableDelegation(Function> callback, @Nullable String targetDatabase) { this.callback = callback; this.targetDatabase = targetDatabase; @@ -299,7 +299,7 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { @Override public Mono run() { - return doInStatementRunnerForMono( + return doInQueryRunnerForMono( targetDatabase, callback ); @@ -308,19 +308,19 @@ class DefaultReactiveNeo4jClient implements ReactiveNeo4jClient { } final class RxStatementRunnerHolder { - private final RxStatementRunner rxStatementRunner; + private final RxQueryRunner rxQueryRunner; private final Publisher commit; private final Publisher rollback; - RxStatementRunnerHolder(RxStatementRunner rxStatementRunner, Publisher commit, Publisher rollback) { - this.rxStatementRunner = rxStatementRunner; + RxStatementRunnerHolder(RxQueryRunner rxQueryRunner, Publisher commit, Publisher rollback) { + this.rxQueryRunner = rxQueryRunner; this.commit = commit; this.rollback = rollback; } - public RxStatementRunner getRxStatementRunner() { - return rxStatementRunner; + public RxQueryRunner getRxQueryRunner() { + return rxQueryRunner; } public Publisher getCommit() { diff --git a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/Neo4jClient.java b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/Neo4jClient.java index 687c5ef77..1e48595ca 100644 --- a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/Neo4jClient.java +++ b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/Neo4jClient.java @@ -29,7 +29,7 @@ import org.apache.commons.logging.LogFactory; import org.apiguardian.api.API; import org.neo4j.driver.Driver; import org.neo4j.driver.Record; -import org.neo4j.driver.StatementRunner; +import org.neo4j.driver.QueryRunner; import org.neo4j.driver.summary.ResultSummary; import org.neo4j.driver.types.TypeSystem; import org.springframework.core.log.LogAccessor; @@ -80,7 +80,7 @@ public interface Neo4jClient { * @param The type of the result being produced * @return A single result object or an empty optional if the callback didn't produce a result */ - OngoingDelegation delegateTo(Function> callback); + OngoingDelegation delegateTo(Function> callback); /** * Contract for a runnable query that can be either run returning it's result, run without results or be parameterized. diff --git a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/ReactiveNeo4jClient.java b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/ReactiveNeo4jClient.java index 290cd739f..0e1b86f26 100644 --- a/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/ReactiveNeo4jClient.java +++ b/spring-data-neo4j/src/main/java/org/neo4j/springframework/data/core/ReactiveNeo4jClient.java @@ -30,7 +30,7 @@ import org.apache.commons.logging.LogFactory; import org.apiguardian.api.API; import org.neo4j.driver.Driver; import org.neo4j.driver.Record; -import org.neo4j.driver.reactive.RxStatementRunner; +import org.neo4j.driver.reactive.RxQueryRunner; import org.neo4j.driver.summary.ResultSummary; import org.neo4j.driver.types.TypeSystem; import org.neo4j.springframework.data.core.Neo4jClient.BindSpec; @@ -80,7 +80,7 @@ public interface ReactiveNeo4jClient { * @param The type of the result being produced * @return A single publisher containing none or exactly one element that will be produced by the callback */ - OngoingDelegation delegateTo(Function> callback); + OngoingDelegation delegateTo(Function> callback); /** * @param The resulting type of this mapping diff --git a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/Neo4jClientTest.java b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/Neo4jClientTest.java index 5612a0160..5896ca5e8 100644 --- a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/Neo4jClientTest.java +++ b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/Neo4jClientTest.java @@ -46,8 +46,8 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.neo4j.driver.Driver; import org.neo4j.driver.Record; +import org.neo4j.driver.Result; import org.neo4j.driver.Session; -import org.neo4j.driver.StatementResult; import org.neo4j.driver.Values; import org.neo4j.driver.SessionConfig; import org.neo4j.driver.summary.ResultSummary; @@ -71,7 +71,7 @@ class Neo4jClientTest { private TypeSystem typeSystem; @Mock - private StatementResult statementResult; + private Result result; @Mock private ResultSummary resultSummary; @@ -90,7 +90,7 @@ class Neo4jClientTest { @AfterEach void verifyNoMoreInteractionsWithMocks() { - verifyNoMoreInteractions(driver, session, statementResult, resultSummary, record1, record2); + verifyNoMoreInteractions(driver, session, result, resultSummary, record1, record2); } @Test @@ -99,8 +99,8 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.stream()).thenReturn(Stream.of(record1, record2)); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.stream()).thenReturn(Stream.of(record1, record2)); Neo4jClient client = Neo4jClient.create(driver); @@ -132,7 +132,7 @@ class Neo4jClientTest { expectedParameters.put("aDate", LocalDate.of(2019, 1, 1)); verify(session).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).stream(); + verify(result).stream(); verify(record1).asMap(); verify(record2).asMap(); verify(session).close(); @@ -143,8 +143,8 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.stream()).thenReturn(Stream.of(record1, record2)); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.stream()).thenReturn(Stream.of(record1, record2)); Neo4jClient client = Neo4jClient.create(driver); @@ -165,7 +165,7 @@ class Neo4jClientTest { expectedParameters.put("name", "Someone.*"); verify(session).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).stream(); + verify(result).stream(); verify(record1).asMap(); verify(session).close(); } @@ -201,11 +201,11 @@ class Neo4jClientTest { prepareMocks(); Neo4jClient client = Neo4jClient.create(driver); - Optional result = client + Optional singleResult = client .delegateTo(runner -> Optional.of(42)) .run(); - assertThat(result).isPresent().hasValue(42); + assertThat(singleResult).isPresent().hasValue(42); verifyDatabaseSelection(null); @@ -218,12 +218,12 @@ class Neo4jClientTest { prepareMocks(); Neo4jClient client = Neo4jClient.create(driver); - Optional result = client + Optional singleResult = client .delegateTo(runner -> Optional.of(42)) .in("aDatabase") .run(); - assertThat(result).isPresent().hasValue(42); + assertThat(singleResult).isPresent().hasValue(42); verifyDatabaseSelection("aDatabase"); @@ -240,8 +240,8 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.stream()).thenReturn(Stream.of(record1)); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.stream()).thenReturn(Stream.of(record1)); when(record1.get("name")).thenReturn(Values.value("michael")); Neo4jClient client = Neo4jClient.create(driver); @@ -265,7 +265,7 @@ class Neo4jClientTest { expectedParameters.put("name", "michael"); verify(session).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).stream(); + verify(result).stream(); verify(record1).get("name"); verify(session).close(); } @@ -275,8 +275,8 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.stream()).thenReturn(Stream.of(record1, record2)); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.stream()).thenReturn(Stream.of(record1, record2)); when(record1.get("name")).thenReturn(Values.value("michael")); Neo4jClient client = Neo4jClient.create(driver); @@ -295,7 +295,7 @@ class Neo4jClientTest { verifyDatabaseSelection(null); verify(session).run(eq("MATCH (n) RETURN n"), argThat(new MapAssertionMatcher(Collections.emptyMap()))); - verify(statementResult).stream(); + verify(result).stream(); verify(record1).get("name"); verify(session).close(); } @@ -305,8 +305,8 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.consume()).thenReturn(resultSummary); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.consume()).thenReturn(resultSummary); Neo4jClient client = Neo4jClient.create(driver); @@ -326,7 +326,7 @@ class Neo4jClientTest { expectedParameters.put("name", "Michael"); verify(session).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).consume(); + verify(result).consume(); verify(session).close(); } @@ -336,9 +336,9 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.hasNext()).thenReturn(true); - when(statementResult.single()).thenReturn(record1); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.hasNext()).thenReturn(true); + when(result.single()).thenReturn(record1); when(record1.size()).thenReturn(1); when(record1.get(0)).thenReturn(Values.value(23L)); @@ -355,8 +355,8 @@ class Neo4jClientTest { verifyDatabaseSelection(null); verify(session).run(eq(cypher), anyMap()); - verify(statementResult).hasNext(); - verify(statementResult).single(); + verify(result).hasNext(); + verify(result).single(); verify(session).close(); } } @@ -367,8 +367,8 @@ class Neo4jClientTest { prepareMocks(); - when(session.run(anyString(), anyMap())).thenReturn(statementResult); - when(statementResult.consume()).thenReturn(resultSummary); + when(session.run(anyString(), anyMap())).thenReturn(result); + when(result.consume()).thenReturn(resultSummary); Neo4jClient client = Neo4jClient.create(driver); @@ -385,7 +385,7 @@ class Neo4jClientTest { expectedParameters.put("name", "fixie"); verify(session).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).consume(); + verify(result).consume(); verify(session).close(); } diff --git a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/ReactiveNeo4jClientTest.java b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/ReactiveNeo4jClientTest.java index 102953ef3..d415a02b9 100644 --- a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/ReactiveNeo4jClientTest.java +++ b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/ReactiveNeo4jClientTest.java @@ -45,8 +45,8 @@ import org.neo4j.driver.Driver; import org.neo4j.driver.Record; import org.neo4j.driver.Values; import org.neo4j.driver.SessionConfig; +import org.neo4j.driver.reactive.RxResult; import org.neo4j.driver.reactive.RxSession; -import org.neo4j.driver.reactive.RxStatementResult; import org.neo4j.driver.reactive.RxTransaction; import org.neo4j.driver.summary.ResultSummary; import org.neo4j.driver.types.TypeSystem; @@ -74,7 +74,7 @@ class ReactiveNeo4jClientTest { private RxSession session; @Mock - private RxStatementResult statementResult; + private RxResult result; @Mock private RxTransaction transaction; @@ -100,7 +100,7 @@ class ReactiveNeo4jClientTest { @AfterEach void verifyNoMoreInteractionsWithMocks() { - verifyNoMoreInteractions(driver, session, transaction, statementResult, resultSummary, record1, record2); + verifyNoMoreInteractions(driver, session, transaction, result, resultSummary, record1, record2); } @Test @@ -109,9 +109,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.commit()).thenReturn(Mono.empty()); - when(statementResult.records()).thenReturn(Flux.just(record1, record2)); + when(result.records()).thenReturn(Flux.just(record1, record2)); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); @@ -145,7 +145,7 @@ class ReactiveNeo4jClientTest { expectedParameters.put("aDate", LocalDate.of(2019, 1, 1)); verify(transaction).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).records(); + verify(result).records(); verify(record1).asMap(); verify(record2).asMap(); verify(transaction).commit(); @@ -158,9 +158,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.commit()).thenReturn(Mono.empty()); - when(statementResult.records()).thenReturn(Flux.just(record1, record2)); + when(result.records()).thenReturn(Flux.just(record1, record2)); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); @@ -182,7 +182,7 @@ class ReactiveNeo4jClientTest { expectedParameters.put("name", "Someone.*"); verify(transaction).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).records(); + verify(result).records(); verify(record1).asMap(); verify(transaction).commit(); verify(transaction).rollback(); @@ -222,11 +222,11 @@ class ReactiveNeo4jClientTest { when(transaction.commit()).thenReturn(Mono.empty()); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); - Mono result = client + Mono singleResult = client .delegateTo(runner -> Mono.just(21)) .run(); - StepVerifier.create(result) + StepVerifier.create(singleResult) .expectNext(21) .verifyComplete(); @@ -245,12 +245,12 @@ class ReactiveNeo4jClientTest { when(transaction.commit()).thenReturn(Mono.empty()); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); - Mono result = client + Mono singleResult = client .delegateTo(runner -> Mono.just(21)) .in("aDatabase") .run(); - StepVerifier.create(result) + StepVerifier.create(singleResult) .expectNext(21) .verifyComplete(); @@ -271,9 +271,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.commit()).thenReturn(Mono.empty()); - when(statementResult.records()).thenReturn(Flux.just(record1)); + when(result.records()).thenReturn(Flux.just(record1)); when(record1.get("name")).thenReturn(Values.value("michael")); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); @@ -298,7 +298,7 @@ class ReactiveNeo4jClientTest { expectedParameters.put("name", "michael"); verify(transaction).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).records(); + verify(result).records(); verify(record1).get("name"); verify(transaction).commit(); verify(transaction).rollback(); @@ -310,9 +310,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.rollback()).thenReturn(Mono.empty()); - when(statementResult.records()).thenReturn(Flux.just(record1, record2)); + when(result.records()).thenReturn(Flux.just(record1, record2)); when(record1.get("name")).thenReturn(Values.value("michael")); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); @@ -334,7 +334,7 @@ class ReactiveNeo4jClientTest { verifyDatabaseSelection(null); verify(transaction).run(eq("MATCH (n) RETURN n"), argThat(new MapAssertionMatcher(Collections.emptyMap()))); - verify(statementResult).records(); + verify(result).records(); verify(record1).get("name"); verify(transaction).commit(); verify(transaction).rollback(); @@ -346,9 +346,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.commit()).thenReturn(Mono.empty()); - when(statementResult.consume()).thenReturn(Mono.just(resultSummary)); + when(result.consume()).thenReturn(Mono.just(resultSummary)); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); @@ -373,7 +373,7 @@ class ReactiveNeo4jClientTest { expectedParameters.put("name", "Michael"); verify(transaction).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).consume(); + verify(result).consume(); verify(transaction).commit(); verify(transaction).rollback(); verify(session).close(); @@ -385,9 +385,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.commit()).thenReturn(Mono.empty()); - when(statementResult.records()).thenReturn(Flux.just(record1)); + when(result.records()).thenReturn(Flux.just(record1)); when(record1.size()).thenReturn(1); when(record1.get(0)).thenReturn(Values.value(23L)); @@ -418,9 +418,9 @@ class ReactiveNeo4jClientTest { prepareMocks(); - when(transaction.run(anyString(), anyMap())).thenReturn(statementResult); + when(transaction.run(anyString(), anyMap())).thenReturn(result); when(transaction.commit()).thenReturn(Mono.empty()); - when(statementResult.consume()).thenReturn(Mono.just(resultSummary)); + when(result.consume()).thenReturn(Mono.just(resultSummary)); ReactiveNeo4jClient client = ReactiveNeo4jClient.create(driver); @@ -441,7 +441,7 @@ class ReactiveNeo4jClientTest { expectedParameters.put("name", "fixie"); verify(transaction).run(eq(cypher), argThat(new MapAssertionMatcher(expectedParameters))); - verify(statementResult).consume(); + verify(result).consume(); verify(transaction).commit(); verify(transaction).rollback(); verify(session).close(); diff --git a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/TransactionHandlingTest.java b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/TransactionHandlingTest.java index c35836913..5f3c9e58d 100644 --- a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/TransactionHandlingTest.java +++ b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/TransactionHandlingTest.java @@ -82,7 +82,7 @@ class TransactionHandlingTest { private Transaction transaction; @Nested - class AutoCloseableStatementRunnerHandlerTest { + class AutoCloseableQueryRunnerHandlerTest { @Test void shouldCallCloseOnSession() { @@ -93,7 +93,7 @@ class TransactionHandlingTest { // Make template acquire session DefaultNeo4jClient neo4jClient = new DefaultNeo4jClient(driver); - try (DefaultNeo4jClient.AutoCloseableStatementRunner s = neo4jClient.getStatementRunner("aDatabase")) { + try (DefaultNeo4jClient.AutoCloseableQueryRunner s = neo4jClient.getQueryRunner("aDatabase")) { s.run("MATCH (n) RETURN n"); } @@ -127,7 +127,7 @@ class TransactionHandlingTest { DefaultNeo4jClient neo4jClient = new DefaultNeo4jClient(driver); txTemplate.execute(tx -> { - try (DefaultNeo4jClient.AutoCloseableStatementRunner s = neo4jClient.getStatementRunner(null)) { + try (DefaultNeo4jClient.AutoCloseableQueryRunner s = neo4jClient.getQueryRunner(null)) { s.run("MATCH (n) RETURN n"); } return null; @@ -173,7 +173,7 @@ class TransactionHandlingTest { DefaultReactiveNeo4jClient neo4jClient = new DefaultReactiveNeo4jClient(driver); - Mono sequence = neo4jClient.doInStatementRunnerForMono("aDatabase", tx -> Mono.just("1")); + Mono sequence = neo4jClient.doInQueryRunnerForMono("aDatabase", tx -> Mono.just("1")); StepVerifier.create(sequence) .expectNext("1") @@ -198,7 +198,7 @@ class TransactionHandlingTest { DefaultReactiveNeo4jClient neo4jClient = new DefaultReactiveNeo4jClient(driver); Mono sequence = neo4jClient - .doInStatementRunnerForMono("aDatabase", tx -> Mono.error(new SomeException())); + .doInQueryRunnerForMono("aDatabase", tx -> Mono.error(new SomeException())); StepVerifier.create(sequence) .expectError(SomeException.class) diff --git a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/transaction/Neo4jTransactionManagerTest.java b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/transaction/Neo4jTransactionManagerTest.java index ecb5ad7af..935f2a8a9 100644 --- a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/transaction/Neo4jTransactionManagerTest.java +++ b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/core/transaction/Neo4jTransactionManagerTest.java @@ -36,7 +36,7 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.neo4j.driver.Driver; import org.neo4j.driver.Session; -import org.neo4j.driver.StatementResult; +import org.neo4j.driver.Result; import org.neo4j.driver.Transaction; import org.neo4j.driver.TransactionConfig; import org.neo4j.driver.SessionConfig; @@ -66,7 +66,7 @@ class Neo4jTransactionManagerTest { @Mock private Transaction transaction; @Mock - private StatementResult statementResult; + private Result statementResult; @Mock private UserTransaction userTransaction; diff --git a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/imperative/TransactionManagerMixedDatabasesTest.java b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/imperative/TransactionManagerMixedDatabasesTest.java index efc1e3b2d..f16d67d60 100644 --- a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/imperative/TransactionManagerMixedDatabasesTest.java +++ b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/imperative/TransactionManagerMixedDatabasesTest.java @@ -31,8 +31,8 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.neo4j.driver.Driver; import org.neo4j.driver.Record; +import org.neo4j.driver.Result; import org.neo4j.driver.Session; -import org.neo4j.driver.StatementResult; import org.neo4j.driver.Transaction; import org.neo4j.driver.TransactionConfig; import org.neo4j.driver.Values; @@ -158,29 +158,29 @@ class TransactionManagerMixedDatabasesTest { when(defaultRecord.size()).thenReturn(1); when(defaultRecord.get(0)).thenReturn(Values.value(0L)); - StatementResult boomStatementResult = mock(StatementResult.class); - when(boomStatementResult.hasNext()).thenReturn(true); - when(boomStatementResult.single()).thenReturn(boomRecord); + Result boomResult = mock(Result.class); + when(boomResult.hasNext()).thenReturn(true); + when(boomResult.single()).thenReturn(boomRecord); - StatementResult defaultStatementResult = mock(StatementResult.class); - when(defaultStatementResult.hasNext()).thenReturn(true); - when(defaultStatementResult.single()).thenReturn(defaultRecord); + Result defaultResult = mock(Result.class); + when(defaultResult.hasNext()).thenReturn(true); + when(defaultResult.single()).thenReturn(defaultRecord); Transaction boomTransaction = mock(Transaction.class); - when(boomTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomStatementResult); + when(boomTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomResult); when(boomTransaction.isOpen()).thenReturn(true); Transaction defaultTransaction = mock(Transaction.class); - when(defaultTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultStatementResult); + when(defaultTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultResult); when(defaultTransaction.isOpen()).thenReturn(true); Session boomSession = mock(Session.class); - when(boomSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomStatementResult); + when(boomSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomResult); when(boomSession.beginTransaction(any(TransactionConfig.class))).thenReturn(boomTransaction); when(boomSession.isOpen()).thenReturn(true); Session defaultSession = mock(Session.class); - when(defaultSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultStatementResult); + when(defaultSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultResult); when(defaultSession.beginTransaction(any(TransactionConfig.class))).thenReturn(defaultTransaction); when(defaultSession.isOpen()).thenReturn(true); diff --git a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/reactive/ReactiveTransactionManagerMixedDatabasesTest.java b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/reactive/ReactiveTransactionManagerMixedDatabasesTest.java index 36fe90fdc..692ccbf28 100644 --- a/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/reactive/ReactiveTransactionManagerMixedDatabasesTest.java +++ b/spring-data-neo4j/src/test/java/org/neo4j/springframework/data/integration/reactive/ReactiveTransactionManagerMixedDatabasesTest.java @@ -36,8 +36,8 @@ import org.neo4j.driver.Record; import org.neo4j.driver.TransactionConfig; import org.neo4j.driver.Values; import org.neo4j.driver.SessionConfig; +import org.neo4j.driver.reactive.RxResult; import org.neo4j.driver.reactive.RxSession; -import org.neo4j.driver.reactive.RxStatementResult; import org.neo4j.driver.reactive.RxTransaction; import org.neo4j.springframework.data.config.AbstractReactiveNeo4jConfig; import org.neo4j.springframework.data.core.Neo4jClient; @@ -214,30 +214,30 @@ class ReactiveTransactionManagerMixedDatabasesTest { when(defaultRecord.size()).thenReturn(1); when(defaultRecord.get(0)).thenReturn(Values.value(0L)); - RxStatementResult boomStatementResult = mock(RxStatementResult.class); - when(boomStatementResult.records()).thenReturn(Mono.just(boomRecord)); + RxResult boomResult = mock(RxResult.class); + when(boomResult.records()).thenReturn(Mono.just(boomRecord)); - RxStatementResult defaultStatementResult = mock(RxStatementResult.class); - when(defaultStatementResult.records()).thenReturn(Mono.just(defaultRecord)); + RxResult defaultResault = mock(RxResult.class); + when(defaultResault.records()).thenReturn(Mono.just(defaultRecord)); RxTransaction boomTransaction = mock(RxTransaction.class); - when(boomTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomStatementResult); + when(boomTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomResult); when(boomTransaction.commit()).thenReturn(Mono.empty()); when(boomTransaction.rollback()).thenReturn(Mono.empty()); RxTransaction defaultTransaction = mock(RxTransaction.class); - when(defaultTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultStatementResult); + when(defaultTransaction.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultResault); when(defaultTransaction.commit()).thenReturn(Mono.empty()); when(defaultTransaction.rollback()).thenReturn(Mono.empty()); RxSession boomSession = mock(RxSession.class); - when(boomSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomStatementResult); + when(boomSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(boomResult); when(boomSession.beginTransaction()).thenReturn(Mono.just(boomTransaction)); when(boomSession.beginTransaction(any(TransactionConfig.class))).thenReturn(Mono.just(boomTransaction)); when(boomSession.close()).thenReturn(Mono.empty()); RxSession defaultSession = mock(RxSession.class); - when(defaultSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultStatementResult); + when(defaultSession.run(eq(TEST_QUERY), any(Map.class))).thenReturn(defaultResault); when(defaultSession.beginTransaction()).thenReturn(Mono.just(defaultTransaction)); when(defaultSession.beginTransaction(any(TransactionConfig.class))) .thenReturn(Mono.just(defaultTransaction));