Skip to content

Instantly share code, notes, and snippets.

@cbruegg
Last active February 19, 2019 09:10

Revisions

  1. cbruegg revised this gist Feb 19, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion RxJavaSubjectDemo.java
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@ interface SootEvent { }
    class SomeSootEvent implements SootEvent { ... }

    class Foo {
    public PublishSubject<SootEvent> eventSubject = PublishSubject.create();
    PublishSubject<SootEvent> eventSubject = PublishSubject.create();

    void modifyState() {
    // ... modify some state ...
  2. cbruegg created this gist Feb 19, 2019.
    20 changes: 20 additions & 0 deletions RxJavaSubjectDemo.java
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,20 @@
    interface SootEvent { }
    class SomeSootEvent implements SootEvent { ... }

    class Foo {
    public PublishSubject<SootEvent> eventSubject = PublishSubject.create();

    void modifyState() {
    // ... modify some state ...
    eventSubject.onNext(new SomeSootEvent(...));
    }
    }

    class EventHandler {
    void handleEventsOf(PublishSubject<SootEvent> eventSubject) {
    eventSubject.parallel()
    .runOn(Schedulers.computation())
    .map(event -> someTransformation(event))
    .subscribe(transformedEvent -> doSomethingWith(transformedEvent))
    }
    }