Обработать пустой ответ JSON

101
23 февраля 2021, 17:20

С сервера приходит ответ такого плана:

[
    {
        "id": 1197309,
        "building_id": 324505,
    },
    {
        "id": 1197309,
        "building_id": 324505,
    }
]

Но в некоторых ситуациях приходит просто пустой массив

[]

При этом запрос завершается onSuccess, но RV получается пустым.

вот так:

if (pojoList.size()==0 || pojoList.isEmpty() ){
    textError();
}

не прокатывает

Вопрос как обработать ответ что бы поймать и вывести сообщение что даных нет.

private void getTom(String start, String end) {
    String access_token = "access_token ";
    progressBarTrain.setVisibility(View.VISIBLE);
    disposable.add(
            rxConnector.getTom().getTom(start, time, access_token)
                    .subscribeOn(Schedulers.io())
                    .observeOn(AndroidSchedulers.mainThread())
                    .subscribeWith(new DisposableSingleObserver<List<Responce>>() {
                        @Override
                        public void onSuccess(@NonNull List<Responce> pojoList) {
                            progressBar.setVisibility(View.GONE);
                            generateDataList(pojoList);
                        /*так не ловится 
                        *if (pojoList.size()==0 || pojoList.isEmpty() ){
                         *   textError();
                        * }
                        * а надо поймать
                        */
                        Log.e(TAG, "onSuccess: " + pojoList.size());
                        cardView.setVisibility(View.GONE);
                        }
                        @Override
                        public void onError(Throwable e) {
                            Log.e(TAG, "onError: " + e.getMessage() + e.toString());
                            textError();
                        }
                    }));
}
READ ALSO
Валидация всех полей формы

Валидация всех полей формы

Как сделать чтобы валидация происходиладля всех полей сразу а не по одному

98
Решето Эратосфена на js

Решето Эратосфена на js

Дано число n (n > 1)Выведите строку, состоящую из простых чисел, меньших n

223
Await Promise.race(&hellip;)

Await Promise.race(…)

Как правильно использовать await с Promiserace? Пример:

131
Динамический select

Динамический select

Всем привет

112