summaryrefslogtreecommitdiff
path: root/app/src/main
diff options
context:
space:
mode:
authorMartin Fietz <Martin.Fietz@gmail.com>2016-06-29 10:10:46 +0200
committerMartin Fietz <Martin.Fietz@gmail.com>2016-06-29 10:10:46 +0200
commitb1bfbb9bc8180390080037a9a71e3cebca42e390 (patch)
tree61f4d675a855603747475073780c5b5bf645ebf4 /app/src/main
parent926f3912cfc774ebf89db9d668ec3d31c6634f70 (diff)
downloadAntennaPod-b1bfbb9bc8180390080037a9a71e3cebca42e390.zip
Add onError and refactor
Diffstat (limited to 'app/src/main')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java56
1 files changed, 31 insertions, 25 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
index a53f9bdb8..39acdb7fb 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
@@ -119,9 +119,12 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
updater = Observable.fromCallable(() -> DBReader.getFeedList())
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
- .subscribe(feeds -> {
+ .subscribe(
+ feeds -> {
OnlineFeedViewActivity.this.feeds = feeds;
setSubscribeButtonState(feed);
+ }, error -> {
+ Log.e(TAG, Log.getStackTraceString(error));
}
);
} else if ((arg & EVENTS) != 0) {
@@ -281,30 +284,33 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
})
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
- .subscribe(status -> {
- if (status != null) {
- if (!status.isCancelled()) {
- if (status.isSuccessful()) {
- parseFeed();
- } else if (status.getReason() == DownloadError.ERROR_UNAUTHORIZED) {
- if (!isFinishing() && !isPaused) {
- dialog = new FeedViewAuthenticationDialog(OnlineFeedViewActivity.this,
- R.string.authentication_notification_title, downloader.getDownloadRequest().getSource());
- dialog.show();
- }
- } else {
- String errorMsg = status.getReason().getErrorString(OnlineFeedViewActivity.this);
- if (errorMsg != null && status.getReasonDetailed() != null) {
- errorMsg += " (" + status.getReasonDetailed() + ")";
- }
- showErrorDialog(errorMsg);
- }
- }
- } else {
- Log.wtf(TAG, "DownloadStatus returned by Downloader was null");
- finish();
- }
- });
+ .subscribe(status -> checkDownloadResult(status),
+ error -> Log.e(TAG, Log.getStackTraceString(error)));
+ }
+
+ private void checkDownloadResult(DownloadStatus status) {
+ if (status == null) {
+ Log.wtf(TAG, "DownloadStatus returned by Downloader was null");
+ finish();
+ }
+ if (status.isCancelled()) {
+ return;
+ }
+ if (status.isSuccessful()) {
+ parseFeed();
+ } else if (status.getReason() == DownloadError.ERROR_UNAUTHORIZED) {
+ if (!isFinishing() && !isPaused) {
+ dialog = new FeedViewAuthenticationDialog(OnlineFeedViewActivity.this,
+ R.string.authentication_notification_title, downloader.getDownloadRequest().getSource());
+ dialog.show();
+ }
+ } else {
+ String errorMsg = status.getReason().getErrorString(OnlineFeedViewActivity.this);
+ if (errorMsg != null && status.getReasonDetailed() != null) {
+ errorMsg += " (" + status.getReasonDetailed() + ")";
+ }
+ showErrorDialog(errorMsg);
+ }
}
private void parseFeed() {