Replace deprecated method

This commit is contained in:
Martin Fietz 2018-01-10 22:15:47 +01:00
parent 5bacbff10b
commit 74b2d439c3

View File

@ -271,10 +271,10 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
true, null); true, null);
download = Observable.fromCallable(() -> { download = Observable.fromCallable(() -> {
feeds = DBReader.getFeedList(); feeds = DBReader.getFeedList();
downloader = new HttpDownloader(request); downloader = new HttpDownloader(request);
downloader.call(); downloader.call();
return downloader.getResult(); return downloader.getResult();
}) })
.subscribeOn(Schedulers.newThread()) .subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
@ -314,35 +314,33 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
} }
Log.d(TAG, "Parsing feed"); Log.d(TAG, "Parsing feed");
parser = Observable.create(new Observable.OnSubscribe<FeedHandlerResult>() { parser = Observable.fromCallable(() -> {
@Override FeedHandler handler = new FeedHandler();
public void call(Subscriber<? super FeedHandlerResult> subscriber) { try {
FeedHandler handler = new FeedHandler(); return handler.parseFeed(feed);
try { } catch (UnsupportedFeedtypeException e) {
FeedHandlerResult result = handler.parseFeed(feed); Log.d(TAG, "Unsupported feed type detected");
subscriber.onNext(result); if (TextUtils.equals("html", e.getRootElement().toLowerCase())) {
} catch (UnsupportedFeedtypeException e) { showFeedDiscoveryDialog(new File(feed.getFile_url()), feed.getDownload_url());
Log.d(TAG, "Unsupported feed type detected"); return null;
if (TextUtils.equals("html", e.getRootElement().toLowerCase())) { } else {
showFeedDiscoveryDialog(new File(feed.getFile_url()), feed.getDownload_url()); throw e;
} else {
subscriber.onError(e);
}
} catch (Exception e) {
Log.e(TAG, Log.getStackTraceString(e));
subscriber.onError(e);
} finally {
boolean rc = new File(feed.getFile_url()).delete();
Log.d(TAG, "Deleted feed source file. Result: " + rc);
subscriber.onCompleted();
} }
} catch (Exception e) {
Log.e(TAG, Log.getStackTraceString(e));
throw e;
} finally {
boolean rc = new File(feed.getFile_url()).delete();
Log.d(TAG, "Deleted feed source file. Result: " + rc);
} }
}) })
.subscribeOn(Schedulers.newThread()) .subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
.subscribe(result -> { .subscribe(result -> {
beforeShowFeedInformation(result.feed); if(result != null) {
showFeedInformation(result.feed, result.alternateFeedUrls); beforeShowFeedInformation(result.feed);
showFeedInformation(result.feed, result.alternateFeedUrls);
}
}, error -> { }, error -> {
String errorMsg = DownloadError.ERROR_PARSER_EXCEPTION.getErrorString( String errorMsg = DownloadError.ERROR_PARSER_EXCEPTION.getErrorString(
OnlineFeedViewActivity.this) + " (" + error.getMessage() + ")"; OnlineFeedViewActivity.this) + " (" + error.getMessage() + ")";