- Add a way to enable `RxJava` module
- Add `EnableRxJavaModule` annotation that inherits `EnableModule` for `Processor` type.
- It also registers the custom `MessageHandler` that sets up RxJava `Observable/Subscriber` to process the incoming message reactively.
- Introduce `RxJavaProcessor` that is expected to be implemented by the module author with the input/output being `Observable`. This processor is autowired into the message handler registered above.
- Add moving average sample
Add project `spring-cloud-stream-rxjava`
- This project extends `spring-cloud-stream` so that any RxJava processing module would have this as a dependency
33 lines
1.0 KiB
XML
33 lines
1.0 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<artifactId>spring-cloud-stream-rxjava</artifactId>
|
|
<packaging>jar</packaging>
|
|
<name>spring-cloud-stream-rxjava</name>
|
|
<description>RxJava support for spring cloud stream modules</description>
|
|
|
|
<parent>
|
|
<groupId>org.springframework.cloud</groupId>
|
|
<artifactId>spring-cloud-stream-parent</artifactId>
|
|
<version>1.0.0.BUILD-SNAPSHOT</version>
|
|
</parent>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.cloud</groupId>
|
|
<artifactId>spring-cloud-stream</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.integration</groupId>
|
|
<artifactId>spring-integration-core</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.reactivex</groupId>
|
|
<artifactId>rxjava</artifactId>
|
|
</dependency>
|
|
</dependencies>
|
|
</project>
|