Способ обнаружения сетевых ошибок при использовании Gluon Connect

#gluon #gluon-mobile

#глюон #gluon-мобильный

Вопрос:

Я использую Gluon Connect для извлечения данных из созданной мной службы REST. Я вызвал службу из мобильного клиента, когда она не была запущена. Каков наилучший подход для обнаружения такого условия в мобильном коде? Я хотел бы открыть диалоговое окно для пользователя, но перенос раздела, в котором вызывается RestClient, похоже, не улавливает сетевую ошибку. Возможно, он работает в другом потоке?

Спасибо

Ответ №1:

Вы можете прикрепить прослушиватель к одному из свойств GluonObservable , которые вы получаете из DataProvider :

 GluonObservable gluonObservable = DataProvider.storeObject(obj, writer);

gluonObservable.exceptionProperty().addListener((obsValue, oldException,  newException) -> showDialog());

gluonObservable.stateProperty().addListener((obsValue, oldState, newState) -> {
                if (newState == ConnectState.FAILED) {
                    showDialog();
                }
            } );