Skip to content

Commit 77a5035

Browse files
committed
feat: delete deprecated RxSession
BREAKING CHANGE: the `org.neo4j.driver.reactive.RxSession` has been deleted, please use either the `org.neo4j.driver.reactivestreams.ReactiveSession` (Reactive Streams API) or the `org.neo4j.driver.reactive.ReactiveSession` (Java Flow API).
1 parent 6114af3 commit 77a5035

File tree

81 files changed

+188
-4214
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+188
-4214
lines changed

driver/clirr-ignored-differences.xml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -645,4 +645,41 @@
645645
<method>java.lang.Object as(java.lang.Class)</method>
646646
</difference>
647647

648+
<difference>
649+
<className>org/neo4j/driver/Driver</className>
650+
<differenceType>7002</differenceType>
651+
<method>org.neo4j.driver.reactive.RxSession rxSession()</method>
652+
</difference>
653+
654+
<difference>
655+
<className>org/neo4j/driver/Driver</className>
656+
<differenceType>7002</differenceType>
657+
<method>org.neo4j.driver.reactive.RxSession rxSession(org.neo4j.driver.SessionConfig)</method>
658+
</difference>
659+
660+
<difference>
661+
<className>org/neo4j/driver/reactive/RxQueryRunner</className>
662+
<differenceType>8001</differenceType>
663+
</difference>
664+
665+
<difference>
666+
<className>org/neo4j/driver/reactive/RxResult</className>
667+
<differenceType>8001</differenceType>
668+
</difference>
669+
670+
<difference>
671+
<className>org/neo4j/driver/reactive/RxSession</className>
672+
<differenceType>8001</differenceType>
673+
</difference>
674+
675+
<difference>
676+
<className>org/neo4j/driver/reactive/RxTransaction</className>
677+
<differenceType>8001</differenceType>
678+
</difference>
679+
680+
<difference>
681+
<className>org/neo4j/driver/reactive/RxTransactionWork</className>
682+
<differenceType>8001</differenceType>
683+
</difference>
684+
648685
</differences>

driver/src/main/java/org/neo4j/driver/Driver.java

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import org.neo4j.driver.exceptions.ClientException;
2222
import org.neo4j.driver.exceptions.UnsupportedFeatureException;
2323
import org.neo4j.driver.reactive.ReactiveSession;
24-
import org.neo4j.driver.reactive.RxSession;
2524
import org.neo4j.driver.types.TypeSystem;
2625
import org.neo4j.driver.util.Experimental;
2726

@@ -118,8 +117,6 @@ default Session session(SessionConfig sessionConfig) {
118117
* <li>{@link org.neo4j.driver.reactive.ReactiveSession} - reactive session using Flow API</li>
119118
* <li>{@link org.neo4j.driver.reactivestreams.ReactiveSession} - reactive session using Reactive Streams
120119
* API</li>
121-
* <li>{@link org.neo4j.driver.reactive.RxSession} - deprecated reactive session using Reactive Streams
122-
* API, superseded by {@link org.neo4j.driver.reactivestreams.ReactiveSession}</li>
123120
* </ul>
124121
* <p>
125122
* Sample usage:
@@ -154,8 +151,6 @@ default <T extends BaseSession> T session(Class<T> sessionClass) {
154151
* <li>{@link org.neo4j.driver.reactive.ReactiveSession} - reactive session using Flow API</li>
155152
* <li>{@link org.neo4j.driver.reactivestreams.ReactiveSession} - reactive session using Reactive Streams
156153
* API</li>
157-
* <li>{@link org.neo4j.driver.reactive.RxSession} - deprecated reactive session using Reactive Streams
158-
* API, superseded by {@link org.neo4j.driver.reactivestreams.ReactiveSession}</li>
159154
* </ul>
160155
* <p>
161156
* Sample usage:
@@ -187,8 +182,6 @@ default <T extends BaseSession> T session(Class<T> sessionClass, AuthToken sessi
187182
* <li>{@link org.neo4j.driver.reactive.ReactiveSession} - reactive session using Flow API</li>
188183
* <li>{@link org.neo4j.driver.reactivestreams.ReactiveSession} - reactive session using Reactive Streams
189184
* API</li>
190-
* <li>{@link org.neo4j.driver.reactive.RxSession} - deprecated reactive session using Reactive Streams
191-
* API, superseded by {@link org.neo4j.driver.reactivestreams.ReactiveSession}</li>
192185
* </ul>
193186
* <p>
194187
* Sample usage:
@@ -225,8 +218,6 @@ default <T extends BaseSession> T session(Class<T> sessionClass, SessionConfig s
225218
* <li>{@link org.neo4j.driver.reactive.ReactiveSession} - reactive session using Flow API</li>
226219
* <li>{@link org.neo4j.driver.reactivestreams.ReactiveSession} - reactive session using Reactive Streams
227220
* API</li>
228-
* <li>{@link org.neo4j.driver.reactive.RxSession} - deprecated reactive session using Reactive Streams
229-
* API, superseded by {@link org.neo4j.driver.reactivestreams.ReactiveSession}</li>
230221
* </ul>
231222
* <p>
232223
* Sample usage:
@@ -247,38 +238,9 @@ default <T extends BaseSession> T session(Class<T> sessionClass, SessionConfig s
247238
@SuppressWarnings("deprecation")
248239
<T extends BaseSession> T session(Class<T> sessionClass, SessionConfig sessionConfig, AuthToken sessionAuthToken);
249240

250-
/**
251-
* Create a new general purpose {@link RxSession} with default {@link SessionConfig session configuration}. The {@link RxSession} provides a reactive way to
252-
* run queries and process results.
253-
* <p>
254-
* Alias to {@link #rxSession(SessionConfig)}}.
255-
*
256-
* @return a new {@link RxSession} object.
257-
* @deprecated superseded by {@link #session(Class)}
258-
*/
259-
@Deprecated
260-
default RxSession rxSession() {
261-
return session(RxSession.class);
262-
}
263-
264-
/**
265-
* Create a new {@link RxSession} with a specified {@link SessionConfig session configuration}. Use {@link SessionConfig#forDatabase(String)} to obtain a
266-
* general purpose session configuration for the specified database. The {@link RxSession} provides a reactive way to run queries and process results.
267-
*
268-
* @param sessionConfig used to customize the session.
269-
* @return a new {@link RxSession} object.
270-
* @deprecated superseded by {@link #session(Class, SessionConfig)}
271-
*/
272-
@Deprecated
273-
default RxSession rxSession(SessionConfig sessionConfig) {
274-
return session(RxSession.class, sessionConfig);
275-
}
276-
277241
/**
278242
* Create a new general purpose {@link ReactiveSession} with default {@link SessionConfig session configuration}. The {@link ReactiveSession} provides a
279243
* reactive way to run queries and process results.
280-
* <p>
281-
* Alias to {@link #rxSession(SessionConfig)}}.
282244
*
283245
* @return a new {@link ReactiveSession} object.
284246
* @deprecated superseded by {@link #session(Class)}

driver/src/main/java/org/neo4j/driver/internal/InternalDriver.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,9 @@
4646
import org.neo4j.driver.internal.async.NetworkSession;
4747
import org.neo4j.driver.internal.metrics.DevNullMetricsProvider;
4848
import org.neo4j.driver.internal.metrics.MetricsProvider;
49-
import org.neo4j.driver.internal.reactive.InternalRxSession;
5049
import org.neo4j.driver.internal.security.BoltSecurityPlanManager;
5150
import org.neo4j.driver.internal.types.InternalTypeSystem;
5251
import org.neo4j.driver.internal.util.Futures;
53-
import org.neo4j.driver.reactive.RxSession;
5452
import org.neo4j.driver.types.TypeSystem;
5553

5654
public class InternalDriver implements Driver {
@@ -99,7 +97,7 @@ public BookmarkManager executableQueryBookmarkManager() {
9997
return queryBookmarkManager;
10098
}
10199

102-
@SuppressWarnings({"unchecked", "deprecation"})
100+
@SuppressWarnings("unchecked")
103101
@Override
104102
public <T extends BaseSession> T session(
105103
Class<T> sessionClass, SessionConfig sessionConfig, AuthToken sessionAuthToken) {
@@ -116,8 +114,6 @@ public <T extends BaseSession> T session(
116114
} else if (org.neo4j.driver.reactivestreams.ReactiveSession.class.isAssignableFrom(sessionClass)) {
117115
session = (T) new org.neo4j.driver.internal.reactivestreams.InternalReactiveSession(
118116
newSession(sessionConfig, notificationConfig, sessionAuthToken));
119-
} else if (RxSession.class.isAssignableFrom(sessionClass)) {
120-
session = (T) new InternalRxSession(newSession(sessionConfig, notificationConfig, sessionAuthToken));
121117
} else {
122118
throw new IllegalArgumentException(
123119
String.format("Unsupported session type '%s'", sessionClass.getCanonicalName()));

driver/src/main/java/org/neo4j/driver/internal/reactive/AbstractReactiveSession.java

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
import org.neo4j.driver.internal.cursor.RxResultCursor;
3939
import org.neo4j.driver.internal.telemetry.ApiTelemetryWork;
4040
import org.neo4j.driver.internal.util.Futures;
41-
import org.neo4j.driver.reactive.RxResult;
4241
import org.neo4j.driver.reactivestreams.ReactiveResult;
4342
import org.reactivestreams.Publisher;
4443
import reactor.core.publisher.Flux;
@@ -105,7 +104,6 @@ private Publisher<S> beginTransaction(
105104
tx -> Mono.fromDirect(closeTransaction(tx, false)).subscribe());
106105
}
107106

108-
@SuppressWarnings("deprecation")
109107
protected <T> Publisher<T> runTransaction(
110108
AccessMode mode, Function<S, ? extends Publisher<T>> work, TransactionConfig config) {
111109
work = work.andThen(publisher -> Flux.from(publisher).handle((value, sink) -> {
@@ -133,18 +131,6 @@ protected <T> Publisher<T> runTransaction(
133131
GqlStatusError.DIAGNOSTIC_RECORD,
134132
null));
135133
return;
136-
} else if (value instanceof RxResult) {
137-
var message = String.format(
138-
"%s is not a valid return value, it should be consumed before producing a return value",
139-
RxResult.class.getName());
140-
sink.error(new ClientException(
141-
GqlStatusError.UNKNOWN.getStatus(),
142-
GqlStatusError.UNKNOWN.getStatusDescription(message),
143-
"N/A",
144-
message,
145-
GqlStatusError.DIAGNOSTIC_RECORD,
146-
null));
147-
return;
148134
}
149135
sink.next(value);
150136
}));

driver/src/main/java/org/neo4j/driver/internal/reactive/InternalRxResult.java

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

0 commit comments

Comments
 (0)