Başka basit bir abone sınıfı:
import rx.Subscriber;
public class MySubscriber extends Subscriber<String>{
@Override
public void onCompleted() {}
@Override
public void onError(Throwable arg0) {}
@Override
public void onNext(String arg0) {
System.out.println("Bildirim geldi : "+arg0);
}
}
Bu sınıf bir Observable'a aşağıdaki gibi abone yapılır :
import rx.Observable;
import rx.Subscriber;
public class ObservableTest {
public static void main(String[] args) {
Observable.OnSubscribe<String> onSubscriber=new Observable.OnSubscribe<String>() {
@Override
public void call(Subscriber<? super String> t) {
t.onNext("Merhaba RxJava");
t.onCompleted();
}
};
Observable<String> myObservable = Observable.create(onSubscriber);
myObservable.subscribe(new MySubscriber());
}
}
onSubscriber ile abonelik olduğu zaman çalışacak kod bölümü yazılmıştır. subscribe metodu ile abone olunduğunda onSubscriber içindeki kod çalışır.