RxJava Android Подписаться не работает на Single - PullRequest
0 голосов
/ 04 октября 2019

У меня есть следующий код:

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated( savedInstanceState );
        NotamMapper notamMapper = new NotamMapper();
        AppDatabase appDatabase = AppDatabase.getInstance( getActivity().getApplicationContext() );

        Disposable disposable = appDatabase.notamDao().loadObservableNotamEntityByIcaoCode( airport_code )
                .flatMapIterable( new Function<List<NotamEntity>, Iterable<NotamEntity>>() {
                    @Override
                    public Iterable<NotamEntity> apply(@NonNull List<NotamEntity> listNotamEntity) throws Exception {                       
                        return listNotamEntity;
                    }
                })
                .map( new Function<NotamEntity, NotamParcelable>() {
                    @Override
                    public NotamParcelable apply(NotamEntity notamEntity) throws Exception {

                        NotamParcelable notamParcelable= notamMapper.toMapperParcelable( notamEntity );
                        return notamParcelable;
                    }
                } )
                .toList()
                .subscribeOn( Schedulers.io() )
                .observeOn( AndroidSchedulers.mainThread() )
                .subscribeWith( new DisposableSingleObserver<List<NotamParcelable>>() {
                    @Override
                    public void onSuccess(List<NotamParcelable> listNotam) {
                        Log.d( TAG, listNotam.toString() );
                        Log.d( TAG, Thread.currentThread().getName() );
                        notamRecyclerView.setLayoutManager( new LinearLayoutManager( getActivity() ) );
                        final NotamAdapter notamAdapter = new NotamAdapter( getActivity(), listNotam );
                        notamRecyclerView.setAdapter( notamAdapter );
                    }
                    @Override
                    public void onError(Throwable e) {
                        e.printStackTrace();
                    }
                } );
        compositeDisposable.add( disposable );
 }

Выполняет преобразование из NotamEntity в NotamParcelable. Я ожидал выполнить код в методе onSuccess. Однако ничего не происходит. Я не уверен, что здесь не хватает. Я новичок в мире Rx и могу использовать некоторую помощь, чтобы выяснить, что не так. Заранее спасибо!

...