A set of reactive extensions for Discord4J
Switch branches/tags
Nothing to show
Clone or download
Latest commit 9a7412f May 15, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea Simplify casting May 15, 2017
gradle/wrapper Initial commit May 15, 2017
rx-extensions-core Simplify casting May 15, 2017
rx-extensions-reactor Simplify casting May 15, 2017
rx-extensions-rxjava Simplify casting May 15, 2017
.gitignore Initial commit May 15, 2017
LICENSE.md Create LICENSE.md May 15, 2017
README.md Update README.md May 15, 2017
build.gradle Simplify casting May 15, 2017
gradlew Initial commit May 15, 2017
gradlew.bat Initial commit May 15, 2017
settings.gradle Initial commit May 15, 2017

README.md

Rx Extensions for Discord4J Download

This module contains adapters for the EventDispatcher to utilize Reactive Streams.

Using this

This module includes the IEventAdapter interface which provides a common abstraction for adapting Discord4J events to reactive streams. This can either be implemented yourself or by using a default implementation in one of the modules.

The IEventAdapter has two methods, IEventAdapter#streamAll() and IEventAdapter#stream(Class<? extends Event> event) which is used to transform events into a reactive stream.

Modules

RxJava module

This module supports RxJava 2.x. Instantiating a RxJavaEventAdapter class will provide streams in the form of Flowable<? extends Event>.

Reactor module

This module supports Reactor 3.x. Instantiating a ReactorEventAdapter class will provide streams in the form of Flux<? extends Event>.

Adding this as a dependency

Core module

Maven

  <dependency>
    <groupId>com.github.Discord4J-Addons.D4J-Rx</groupId>
    <artifactId>rx-extensions-core</artifactId>
    <version>VERSION_HERE</version>
  </dependency>

Gradle

dependencies {
  compile 'com.github.Discord4J-Addons.D4J-Rx:rx-extensions-core:VERSION_HERE'
}

Reactor module

Maven

  <dependency>
    <groupId>com.github.Discord4J-Addons.D4J-Rx</groupId>
    <artifactId>rx-extensions-reactor</artifactId>
    <version>VERSION_HERE</version>
  </dependency>

Gradle

dependencies {
  compile 'com.github.Discord4J-Addons.D4J-Rx:rx-extensions-reactor:VERSION_HERE'
}

RxJava module

Maven

  <dependency>
    <groupId>com.github.Discord4J-Addons.D4J-Rx</groupId>
    <artifactId>rx-extensions-rxjava</artifactId>
    <version>VERSION_HERE</version>
  </dependency>

Gradle

dependencies {
  compile 'com.github.Discord4J-Addons.D4J-Rx:rx-extensions-rxjava:VERSION_HERE'
}