5
5
import android .arch .lifecycle .Transformations ;
6
6
import android .arch .paging .LivePagedListBuilder ;
7
7
import android .arch .paging .PagedList ;
8
+ import android .support .annotation .NonNull ;
8
9
import android .support .annotation .RestrictTo ;
9
10
10
11
import com .google .firebase .firestore .DocumentSnapshot ;
@@ -18,16 +19,17 @@ public class PagingData {
18
19
private final LiveData <PagedList <DocumentSnapshot >> mSnapshots ;
19
20
private final LiveData <LoadingState > mLoadingState ;
20
21
21
- public PagingData (FirestoreDataSource .Factory factory ,
22
- PagedList .Config config ) {
22
+ public PagingData (@ NonNull FirestoreDataSource .Factory factory ,
23
+ @ NonNull PagedList .Config config ) {
23
24
24
25
mSnapshots = new LivePagedListBuilder <>(factory , config ).build ();
25
26
26
- mLoadingState = Transformations .switchMap (factory . getDataSource () ,
27
- new Function <FirestoreDataSource , LiveData <LoadingState >>() {
27
+ mLoadingState = Transformations .switchMap (mSnapshots ,
28
+ new Function <PagedList < DocumentSnapshot > , LiveData <LoadingState >>() {
28
29
@ Override
29
- public LiveData <LoadingState > apply (FirestoreDataSource input ) {
30
- return input .getLoadingState ();
30
+ public LiveData <LoadingState > apply (PagedList <DocumentSnapshot > input ) {
31
+ FirestoreDataSource dataSource = (FirestoreDataSource ) input .getDataSource ();
32
+ return dataSource .getLoadingState ();
31
33
}
32
34
});
33
35
}
0 commit comments