replaysubject replays events/items to current and late observers.
class declaration
following is the declaration for io.reactivex.subjects.replaysubject<t> class −
public final class replaysubject<t> extends subject<t>
replaysubject example
create the following java program using any editor of your choice in, say, c:\> rxjava.
observabletester.java
import io.reactivex.subjects.replaysubject; public class observabletester { public static void main(string[] args) { final stringbuilder result1 = new stringbuilder(); final stringbuilder result2 = new stringbuilder(); replaysubject<string> subject = replaysubject.create(); subject.subscribe(value -> result1.append(value) ); subject.onnext("a"); subject.onnext("b"); subject.onnext("c"); subject.subscribe(value -> result2.append(value)); subject.onnext("d"); subject.oncomplete(); //output will be abcd system.out.println(result1); //output will be abcd being replaysubject //as replaysubject emits all the items system.out.println(result2); } }
verify the result
compile the class using javac compiler as follows −
c:\rxjava>javac observabletester.java
now run the observabletester as follows −
c:\rxjava>java observabletester
it should produce the following output −
abcd abcd