RxJava - Operatori collegabili

Di seguito sono riportati gli operatori che hanno un controllo più preciso sull'abbonamento.

Sr.No. Operatore e descrizione
1

Connect

Indica a un osservabile collegabile di emettere elementi ai suoi abbonati.

2

Publish

Converte un osservabile in osservabile collegabile.

3

RefCount

Converte un osservabile collegabile in un osservabile ordinario.

4

Replay

Assicurati che la stessa sequenza di elementi emessi sia visualizzata da ciascun abbonato, anche dopo che l'Osservabile ha iniziato a emettere elementi e gli abbonati si iscrivono in un secondo momento.

Esempio di operatore collegabile

Crea il seguente programma Java utilizzando qualsiasi editor di tua scelta, ad esempio C: \> RxJava.

ObservableTester.java

import io.reactivex.Observable;
import io.reactivex.observables.ConnectableObservable;
//Using connect operator on a ConnectableObservable
public class ObservableTester {
   public static void main(String[] args) {
      String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
      final StringBuilder result = new StringBuilder();
      ConnectableObservable<String> connectable = Observable.fromArray(letters).publish();      
      connectable.subscribe(letter -> result.append(letter));
      System.out.println(result.length());
      connectable.connect();
      System.out.println(result.length());
      System.out.println(result);
   }
}

Verifica il risultato

Compila la classe usando javac compilatore come segue -

C:\RxJava>javac ObservableTester.java

Ora esegui ObservableTester come segue:

C:\RxJava>java ObservableTester

Dovrebbe produrre il seguente output:

0
7
abcdefg