diff options
author | ByteHamster <ByteHamster@users.noreply.github.com> | 2021-07-11 19:12:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-11 19:12:35 +0200 |
commit | 07cd141bdf95ff53d5a11def4b6ad4dc3701deed (patch) | |
tree | 334295187df7c1ab7450825dc9698060324f895a /core/src/main/java/de | |
parent | e45f62c727a9d1b6936c7a5b86626264e0d8d31e (diff) | |
parent | 4f5449a0d3c8540b32a8d54c3c770d5fe91e554e (diff) | |
download | AntennaPod-07cd141bdf95ff53d5a11def4b6ad4dc3701deed.zip |
Merge pull request #4833 from Thom-Merrilin/fix-auto-download-on-subscribe
Check Auto Download preference on the feed before auto downloading
Diffstat (limited to 'core/src/main/java/de')
4 files changed, 3 insertions, 47 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java b/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java index 2456a3917..b5202d79c 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java @@ -7,7 +7,6 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; -import de.danoeh.antennapod.model.feed.FeedFilter; import de.danoeh.antennapod.model.feed.FeedItem; import de.danoeh.antennapod.model.feed.FeedPreferences; import de.danoeh.antennapod.core.preferences.UserPreferences; @@ -55,8 +54,9 @@ public class AutomaticDownloadAlgorithm { candidates.addAll(queue); for (FeedItem newItem : newItems) { FeedPreferences feedPrefs = newItem.getFeed().getPreferences(); - FeedFilter feedFilter = feedPrefs.getFilter(); - if (!candidates.contains(newItem) && feedFilter.shouldAutoDownload(newItem)) { + if (feedPrefs.getAutoDownload() + && !candidates.contains(newItem) + && feedPrefs.getFilter().shouldAutoDownload(newItem)) { candidates.add(newItem); } } diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java b/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java index ee3cf31a1..efd8a716e 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java @@ -440,7 +440,6 @@ public final class DBTasks { if (oldItem == null) { // item is new item.setFeed(savedFeed); - item.setAutoDownload(savedFeed.getPreferences().getAutoDownload()); if (idx >= savedFeed.getItems().size()) { savedFeed.getItems().add(item); diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java index 3231c3779..8517b73a2 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java @@ -945,23 +945,6 @@ public class DBWriter { }); } - /** - * Sets the 'auto_download'-attribute of specific FeedItem. - * - * @param feedItem FeedItem. - * @param autoDownload true enables auto download, false disables it - */ - public static Future<?> setFeedItemAutoDownload(final FeedItem feedItem, - final boolean autoDownload) { - return dbExec.submit(() -> { - final PodDBAdapter adapter = PodDBAdapter.getInstance(); - adapter.open(); - adapter.setFeedItemAutoDownload(feedItem, autoDownload ? 1 : 0); - adapter.close(); - EventBus.getDefault().post(new UnreadItemsUpdateEvent()); - }); - } - public static Future<?> saveFeedItemAutoDownloadFailed(final FeedItem feedItem) { return dbExec.submit(() -> { int failedAttempts = feedItem.getFailedAutoDownloadAttempts() + 1; @@ -982,25 +965,6 @@ public class DBWriter { } /** - * Sets the 'auto_download'-attribute of specific FeedItem. - * - * @param feed This feed's episodes will be processed. - * @param autoDownload If true, auto download will be enabled for the feed's episodes. Else, - */ - public static Future<?> setFeedsItemsAutoDownload(final Feed feed, - final boolean autoDownload) { - Log.d(TAG, (autoDownload ? "Enabling" : "Disabling") + " auto download for items of feed " + feed.getId()); - return dbExec.submit(() -> { - final PodDBAdapter adapter = PodDBAdapter.getInstance(); - adapter.open(); - adapter.setFeedsItemsAutoDownload(feed, autoDownload); - adapter.close(); - EventBus.getDefault().post(new UnreadItemsUpdateEvent()); - }); - } - - - /** * Set filter of the feed * * @param feedId The feed's ID diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java index 18810aff9..21ca1043f 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java @@ -768,13 +768,6 @@ public class PodDBAdapter { new String[]{String.valueOf(feedItem.getId())}); } - public void setFeedsItemsAutoDownload(Feed feed, boolean autoDownload) { - final String sql = "UPDATE " + TABLE_NAME_FEED_ITEMS - + " SET " + KEY_AUTO_DOWNLOAD + "=" + (autoDownload ? "1" : "0") - + " WHERE " + KEY_FEED + "=" + feed.getId(); - db.execSQL(sql); - } - public void setFavorites(List<FeedItem> favorites) { ContentValues values = new ContentValues(); try { |