Skip to content

Commit 5e156ae

Browse files
Add onErrroReturn
1 parent a311cf8 commit 5e156ae

File tree

2 files changed

+15
-6
lines changed

2 files changed

+15
-6
lines changed

app/src/main/java/com/rxjava2/android/samples/ui/pagination/PaginationActivity.java

+7-4
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,16 @@
44
import android.view.View;
55
import android.widget.ProgressBar;
66

7+
import androidx.appcompat.app.AppCompatActivity;
8+
import androidx.recyclerview.widget.LinearLayoutManager;
9+
import androidx.recyclerview.widget.RecyclerView;
10+
711
import com.rxjava2.android.samples.R;
812

913
import java.util.ArrayList;
1014
import java.util.List;
1115
import java.util.concurrent.TimeUnit;
1216

13-
import androidx.appcompat.app.AppCompatActivity;
14-
import androidx.recyclerview.widget.LinearLayoutManager;
15-
import androidx.recyclerview.widget.RecyclerView;
1617
import io.reactivex.Single;
1718
import io.reactivex.android.schedulers.AndroidSchedulers;
1819
import io.reactivex.disposables.CompositeDisposable;
@@ -98,7 +99,9 @@ private void subscribeForData() {
9899
.subscribeOn(Schedulers.io())
99100
.doOnError(throwable -> {
100101
// handle error
101-
}))
102+
})
103+
// continue emission in case of error also
104+
.onErrorReturn(throwable -> new ArrayList<>()))
102105
.observeOn(AndroidSchedulers.mainThread())
103106
.subscribe(items -> {
104107
paginationAdapter.addItems(items);

app/src/main/java/com/rxjava2/android/samples/ui/search/SearchActivity.java

+8-2
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,12 @@
44
import android.widget.SearchView;
55
import android.widget.TextView;
66

7+
import androidx.appcompat.app.AppCompatActivity;
8+
79
import com.rxjava2.android.samples.R;
810

911
import java.util.concurrent.TimeUnit;
1012

11-
import androidx.appcompat.app.AppCompatActivity;
1213
import io.reactivex.Observable;
1314
import io.reactivex.ObservableSource;
1415
import io.reactivex.android.schedulers.AndroidSchedulers;
@@ -56,7 +57,12 @@ public boolean test(String text) {
5657
.switchMap(new Function<String, ObservableSource<String>>() {
5758
@Override
5859
public ObservableSource<String> apply(String query) {
59-
return dataFromNetwork(query);
60+
return dataFromNetwork(query)
61+
.doOnError(throwable -> {
62+
// handle error
63+
})
64+
// continue emission in case of error also
65+
.onErrorReturn(throwable -> "");
6066
}
6167
})
6268
.subscribeOn(Schedulers.io())

0 commit comments

Comments
 (0)