File tree 2 files changed +15
-6
lines changed
app/src/main/java/com/rxjava2/android/samples/ui
2 files changed +15
-6
lines changed Original file line number Diff line number Diff line change 4
4
import android .view .View ;
5
5
import android .widget .ProgressBar ;
6
6
7
+ import androidx .appcompat .app .AppCompatActivity ;
8
+ import androidx .recyclerview .widget .LinearLayoutManager ;
9
+ import androidx .recyclerview .widget .RecyclerView ;
10
+
7
11
import com .rxjava2 .android .samples .R ;
8
12
9
13
import java .util .ArrayList ;
10
14
import java .util .List ;
11
15
import java .util .concurrent .TimeUnit ;
12
16
13
- import androidx .appcompat .app .AppCompatActivity ;
14
- import androidx .recyclerview .widget .LinearLayoutManager ;
15
- import androidx .recyclerview .widget .RecyclerView ;
16
17
import io .reactivex .Single ;
17
18
import io .reactivex .android .schedulers .AndroidSchedulers ;
18
19
import io .reactivex .disposables .CompositeDisposable ;
@@ -98,7 +99,9 @@ private void subscribeForData() {
98
99
.subscribeOn (Schedulers .io ())
99
100
.doOnError (throwable -> {
100
101
// handle error
101
- }))
102
+ })
103
+ // continue emission in case of error also
104
+ .onErrorReturn (throwable -> new ArrayList <>()))
102
105
.observeOn (AndroidSchedulers .mainThread ())
103
106
.subscribe (items -> {
104
107
paginationAdapter .addItems (items );
Original file line number Diff line number Diff line change 4
4
import android .widget .SearchView ;
5
5
import android .widget .TextView ;
6
6
7
+ import androidx .appcompat .app .AppCompatActivity ;
8
+
7
9
import com .rxjava2 .android .samples .R ;
8
10
9
11
import java .util .concurrent .TimeUnit ;
10
12
11
- import androidx .appcompat .app .AppCompatActivity ;
12
13
import io .reactivex .Observable ;
13
14
import io .reactivex .ObservableSource ;
14
15
import io .reactivex .android .schedulers .AndroidSchedulers ;
@@ -56,7 +57,12 @@ public boolean test(String text) {
56
57
.switchMap (new Function <String , ObservableSource <String >>() {
57
58
@ Override
58
59
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 -> "" );
60
66
}
61
67
})
62
68
.subscribeOn (Schedulers .io ())
You can’t perform that action at this time.
0 commit comments