package com.github.tibolte.agendacalendarview.utils;
import rx.Observable;
import rx.subjects.PublishSubject;
import rx.subjects.SerializedSubject;
import rx.subjects.Subject;
public class BusProvider {
public static BusProvider mInstance;
private final Subject<Object, Object> mBus = new SerializedSubject<>(PublishSubject.create());
// region Constructors
public static BusProvider getInstance() {
if (mInstance == null) {
mInstance = new BusProvider();
}
return mInstance;
}
// endregion
// region Public methods
public void send(Object object) {
mBus.onNext(object);
}
public Observable<Object> toObserverable() {
return mBus;
}
// endregion
}