summaryrefslogtreecommitdiff
path: root/org.fox.ttrss/src/main/java/org
diff options
context:
space:
mode:
authorAndrew Dolgov <fox@fakecake.org>2025-05-20 09:41:10 +0300
committerAndrew Dolgov <fox@fakecake.org>2025-05-20 09:41:10 +0300
commit6ec4374010a98315560c0f18fcae38c0c1215c1c (patch)
tree5a6a66d1aa7a4f698572828c898386765e3f0043 /org.fox.ttrss/src/main/java/org
parent5df7780418cd450765c0e3e2a7742800bfde9bea (diff)
report model errors while processing JSON as other errors to UI
Diffstat (limited to 'org.fox.ttrss/src/main/java/org')
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleModel.java12
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsModel.java3
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/RootCategoriesModel.java3
3 files changed, 14 insertions, 4 deletions
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleModel.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleModel.java
index e90456b0..4b05f8f1 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleModel.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleModel.java
@@ -173,7 +173,7 @@ public class ArticleModel extends AndroidViewModel implements ApiCommon.ApiCalle
private void loadInBackground() {
Log.d(TAG, this + " loadInBackground append=" + m_append + " offset=" + m_offset + " lazyLoadEnabled=" + m_lazyLoadEnabled);
- ArticleList articlesWork = new ArticleList(m_articles.getValue());
+ final ArticleList articlesWork = new ArticleList(m_articles.getValue());
m_isLoading.postValue(true);
@@ -226,13 +226,14 @@ public class ArticleModel extends AndroidViewModel implements ApiCommon.ApiCalle
Log.d(TAG, "firstId=" + m_firstId + " append=" + m_append + " skip=" + skip + " localSize=" + articlesWork.size());
m_executor.execute(() -> {
- JsonElement result = ApiCommon.performRequest(getApplication(), params, this);
+ final JsonElement result = ApiCommon.performRequest(getApplication(), params, this);
Log.d(TAG, "got result=" + result);
if (result != null) {
try {
- JsonArray content = result.getAsJsonArray();
+ final JsonArray content = result.getAsJsonArray();
+
if (content != null) {
final List<Article> articlesJson;
final JsonObject header;
@@ -285,6 +286,9 @@ public class ArticleModel extends AndroidViewModel implements ApiCommon.ApiCalle
Log.d(TAG, this + " loaded headlines=" + m_amountLoaded + " resultingLocalSize=" + articlesWork.size());
}
} catch (Exception e) {
+ setLastError(ApiCommon.ApiError.OTHER_ERROR);
+ setLastErrorMessage(e.getMessage());
+
e.printStackTrace();
}
@@ -293,7 +297,7 @@ public class ArticleModel extends AndroidViewModel implements ApiCommon.ApiCalle
m_mainHandler.post(() -> {
m_articles.setValue(articlesWork);
m_lastUpdate.setValue(System.currentTimeMillis());
- m_isLoading.postValue(false);
+ m_isLoading.setValue(false);
});
});
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsModel.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsModel.java
index f1274f64..ac0b4f28 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsModel.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsModel.java
@@ -128,6 +128,9 @@ public class FeedsModel extends AndroidViewModel implements ApiCommon.ApiCaller
m_feeds.postValue(feedsJson);
}
} catch (Exception e) {
+ setLastError(ApiCommon.ApiError.OTHER_ERROR);
+ setLastErrorMessage(e.getMessage());
+
e.printStackTrace();
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/RootCategoriesModel.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/RootCategoriesModel.java
index d5668aa8..3355255b 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/RootCategoriesModel.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/RootCategoriesModel.java
@@ -133,6 +133,9 @@ public class RootCategoriesModel extends FeedsModel {
m_feeds.postValue(feedsCombined);
}
} catch (Exception e) {
+ setLastError(ApiCommon.ApiError.OTHER_ERROR);
+ setLastErrorMessage(e.getMessage());
+
e.printStackTrace();
}