Skip to content

Commit 229676b

Browse files
committed
Fix links in reactive-streams.adoc doc
Mention this new docs in the `whats-new.adoc`
1 parent 007e1a0 commit 229676b

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

src/reference/asciidoc/reactive-streams.adoc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ NOTE: All the Reactive Streams interaction in Spring Integration implemented wit
3232
=== Messaging Gateway
3333

3434
The simplest point of interaction with Reactive Streams is a `@MessagingGateway` where we just make a return type of the gateway method as a `Mono<?>` - and the whole integration flow behind a gateway method call is going to be performed when a subscription happens on the returned `Mono` instance.
35-
See <./gateway.adoc#reactor-mono,Reactor `Mono`>> for more information.
35+
See <<./gateway.adoc#reactor-mono,Reactor `Mono`>> for more information.
3636
A similar `Mono`-reply approach is used in the framework internally for inbound gateways which are fully based on Reactive Streams compatible protocols (see <<reactive-channel-adapters>> below for more information).
3737
The send-and-receive operation is wrapped into a `Mono.deffer()` with chaining a reply evaluation from the `replyChannel` header whenever it is available.
3838
This way an inbound component for the particular reactive protocol (e.g. Netty) is going to be as a subscriber and initiator for a reactive flow performed on the Spring Integration.
@@ -47,7 +47,7 @@ With a standard imperative `MessageChannel` use-case, and if a reply payload is
4747
A result of this, the `Mono` has to be subscribed explicitly downstream or flattened by the `FluxMessageChannel` downstream.
4848
With a `ReactiveStreamsSubscribableChannel` for the `outputChannel`, there is no need to be concerned about return type and subscription; everything is processed smoothly by the framework internally.
4949

50-
See <./service-activator.adoc#async-service-activator,Asynchronous Service Activator>> for more information.
50+
See <<./service-activator.adoc#async-service-activator,Asynchronous Service Activator>> for more information.
5151

5252
=== `FluxMessageChannel` and `ReactiveStreamsConsumer`
5353

@@ -64,7 +64,7 @@ And thanks to a `ReactiveStreamsConsumer` implementation in between, the whole i
6464
In this case, the flow behavior is changed from an imperative push model to a reactive pull model.
6565
A `ReactiveStreamsConsumer` can also be used to turn any `MessageChannel` into a reactive source using `MessageChannelReactiveUtils`, making an integration flow partially reactive.
6666

67-
See <./channel.adoc#flux-message-channel,`FluxMessageChannel`>> for more information.
67+
See <<./channel.adoc#flux-message-channel,`FluxMessageChannel`>> for more information.
6868

6969
=== Source Polling Channel Adapter
7070

@@ -75,7 +75,7 @@ A `Flux.flatMapMany()` is used then to poll `maxMessagesPerPoll` and sink them i
7575
This generator `Flux` is subscribed by the provided `ReactiveStreamsSubscribableChannel` honoring a back-pressure downstream.
7676
This way, any `MessageSource` implementation can be turned into a reactive hot source.
7777

78-
See <./polling-consumer.adoc#polling-consumer,Polling Consumer>> for more information.
78+
See <<./polling-consumer.adoc#polling-consumer,Polling Consumer>> for more information.
7979

8080
=== Splitter and Aggregator
8181

@@ -90,7 +90,7 @@ The incoming messages are sunk into a `Flux.create()` initiated when a `FluxAggr
9090
This `Flux` is subscribed to by a `ReactiveStreamsSubscribableChannel` on demand, or directly in the `FluxAggregatorMessageHandler.start()` when the `outputChannel` is not reactive.
9191
This `MessageHandler` has its power, when the whole integration flow is built with a `FluxMessageChannel` before and after this component, making the whole logic back-pressure ready.
9292

93-
See <./splitter.adoc#split-stream-and-flux,Stream and Flux Splitting>> and <./aggregator.adoc#flux-aggregator,Flux Aggregator>> for more information.
93+
See <<./splitter.adoc#split-stream-and-flux,Stream and Flux Splitting>> and <<./aggregator.adoc#flux-aggregator,Flux Aggregator>> for more information.
9494

9595
=== Java DSL
9696

@@ -103,7 +103,7 @@ For the exact opposite use-case, when `IntegrationFlow` should call a reactive s
103103
The flow at this point is turned into a `FluxMessageChannel` which is propagated into a provided `fluxFunction`, performed in the `Flux.transform()` operator.
104104
A result of the function is wrapped into a `Mono<Message<?>>` for flat-mapping into an output `Flux` which is subscribed by another `FluxMessageChannel` for downstream flow.
105105

106-
See <./dsl.adoc#java-dsl,Java DSL Chapter>> for more information.
106+
See <<./dsl.adoc#java-dsl,Java DSL Chapter>> for more information.
107107

108108
[[reactive-channel-adapters]]
109109
=== Reactive Channel Adapters
@@ -120,7 +120,7 @@ A reactive outbound channel adapter implementation is about initiation (or conti
120120
An inbound payload could be a reactive type per se or as an event of the whole integration flow which is a part of reactive stream on top.
121121
A returned reactive type can be subscribed immediately if we are in one-way, fire-and-forget scenario, or it is propagated downstream (request-reply scenarios) for further integration flow or an explicit subscription in the target business logic, but still downstream preserving reactive streams semantics.
122122

123-
Currently Spring Integration provides channel adapter (or gateway) implementations for <./webflux.adoc#webflux,WebFlux>> and <./rsocket.adoc#rsocket,RSocket>>.
123+
Currently Spring Integration provides channel adapter (or gateway) implementations for <<./webflux.adoc#webflux,WebFlux>> and <<./rsocket.adoc#rsocket,RSocket>>.
124124
Also an https://github.com/spring-projects/spring-integration-extensions/tree/master/spring-integration-cassandra[Apache Cassandra Extension] provides a `MessageHandler` implementation for the Cassandra reactive driver.
125125
More reactive channel adapters are coming, for example for https://r2dbc.io/[R2DBC], https://mongodb.github.io/mongo-java-driver-reactivestreams/[MongoDB], for Apache Kafka in https://github.com/spring-projects/spring-integration-kafka[Spring Integration Kafka] based on the `ReactiveKafkaProducerTemplate` and `ReactiveKafkaConsumerTemplate` from https://spring.io/projects/spring-kafka[Spring for Apache Kafka] etc.
126126
For many other non-reactive channel adapters thread pools are recommended to avoid blocking during reactive stream processing.

src/reference/asciidoc/whats-new.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ If you are interested in the changes and features that were introduced in earlie
1212

1313
If you are interested in more details, see the Issue Tracker tickets that were resolved as part of the 5.2 development process.
1414

15+
Also see a new <<./reactive-streams.adoc#reactive-streams,Reactive Streams Support>> chapter in this documentation.
16+
1517
[[x5.2-package-class]]
1618
=== Package and Class Changes
1719

0 commit comments

Comments
 (0)