Norway


🚍 Simple Reactive Bus for JVM (1.7+) and apps built with RxJava 2

Usage

Bus bus = ReactiveBus.create(); // creating thread safe instance of event bus

Disposable observer = bus.receive().subscribe(new Consumer<Event>() {
    @Override public void accept(Event event) {
      // handle event here
    }
  });

bus.send(Event.create("my event")); // send a message only
bus.send(Event.create("my another event", serializableObject)); // send some 

observer.dispose(); // after disposal, observer will stop receiving new events

Download

You can depend on the library through Maven:

<dependency>
    <groupId>com.github.pwittchen</groupId>
    <artifactId>reactivebus</artifactId>
    <version>0.0.2</version>
</dependency>
<dependency>
    <groupId>io.reactivex.rxjava2</groupId>
    <artifactId>rxjava</artifactId>
    <version>2.1.</version>
</dependency>

or through Gradle:

implementation 'com.github.pwittchen:reactivebus:0.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.10'

Code style

Code style used in the project is called Square from Java Code Styles repository by Square

available at: https://github.com/square/java-code-styles.

, tests and static code analysis

To build project, type:

./gradlew build

To run tests, type:

./gradlew test

To run static code analysis, type:

./gradlew check

References

  • Articles:
  • Other Event Bus implementations:

License

Copyright  Piotr Wittchen

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.



Source link

LEAVE A REPLY

Please enter your comment!
Please enter your name here