本文整理匯總了Java中io.reactivex.FlowableEmitter.setDisposable方法的典型用法代碼示例。如果您正苦於以下問題:Java FlowableEmitter.setDisposable方法的具體用法?Java FlowableEmitter.setDisposable怎麽用?Java FlowableEmitter.setDisposable使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類io.reactivex.FlowableEmitter
的用法示例。
在下文中一共展示了FlowableEmitter.setDisposable方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: SimpleRemoteSourceMapper
import io.reactivex.FlowableEmitter; //導入方法依賴的package包/類
public SimpleRemoteSourceMapper(FlowableEmitter<Resource<T>> emitter) {
emitter.onNext(Resource.loading(null));
// since realm instance was created on Main Thread, so if we need to touch on realm database after calling
// api (such as save response data to local database, we must make request on main thread
// by setting shouldUpdateUi params = true
Disposable disposable = RestHelper.makeRequest(getRemote(), true, response -> {
Log.d(TAG, "SimpleRemoteSourceMapper: call API success!");
saveCallResult(response);
emitter.onNext(Resource.success(response));
}, errorEntity -> {
Log.d(TAG, "SimpleRemoteSourceMapper: call API error: " + errorEntity.getMessage());
emitter.onNext(Resource.error(errorEntity.getMessage(), null));
});
// set emitter disposable to ensure that when it is going to be disposed, our api request should be disposed as well
emitter.setDisposable(disposable);
}
示例2: ListDataNetworkBounceResource
import io.reactivex.FlowableEmitter; //導入方法依賴的package包/類
public ListDataNetworkBounceResource(FlowableEmitter<Resource<LocalType>> emitter) {
emitter.onNext(Resource.success(getLocal()));
emitter.onNext(Resource.loading(null));
// since realm instance was created on Main Thread, so if we need to touch on realm database after calling
// api (such as save response data to local database, we must make request on main thread
// by setting shouldUpdateUi params = true
Disposable disposable = RestHelper.makeRequest(getRemote(), true, response -> {
Single.just(response)
.map(mapper())
.subscribe(localData -> {
Log.d(TAG, "SimpleRemoteSourceMapper: call API success!");
saveCallResult(localData);
emitter.onNext(Resource.success(localData));
});
}, errorEntity -> {
Log.d(TAG, "SimpleRemoteSourceMapper: call API error: " + errorEntity.getMessage());
emitter.onNext(Resource.error(errorEntity.getMessage(), null));
});
// set emitter disposable to ensure that when it is going to be disposed, our api request should be disposed as well
emitter.setDisposable(disposable);
}