summaryrefslogtreecommitdiff
path: root/core/src/main
diff options
context:
space:
mode:
authorEzequiel <salaseze@gmail.com>2020-10-22 08:37:03 -0300
committerGitHub <noreply@github.com>2020-10-22 13:37:03 +0200
commit91f9c19baeb0349f6b11bb967ea22e58f6f935ee (patch)
tree352525ee76a12bcf52a1addbd8ee96a9ffd65bfd /core/src/main
parent3e147c97fe9f2ea477cf17dcc8db092215a64b84 (diff)
downloadAntennaPod-91f9c19baeb0349f6b11bb967ea22e58f6f935ee.zip
Remove episode from queue when gpodder notifies as played (#4562)
Diffstat (limited to 'core/src/main')
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/sync/SyncService.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/sync/SyncService.java b/core/src/main/java/de/danoeh/antennapod/core/sync/SyncService.java
index 16130ac9b..1f5d9b75f 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/sync/SyncService.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/sync/SyncService.java
@@ -39,6 +39,7 @@ import de.danoeh.antennapod.core.sync.model.ISyncService;
import de.danoeh.antennapod.core.sync.model.SubscriptionChanges;
import de.danoeh.antennapod.core.sync.model.SyncServiceException;
import de.danoeh.antennapod.core.sync.model.UploadChangesResponse;
+import de.danoeh.antennapod.core.util.LongList;
import de.danoeh.antennapod.core.util.URLChecker;
import de.danoeh.antennapod.core.util.gui.NotificationUtils;
import io.reactivex.Completable;
@@ -456,7 +457,7 @@ public class SyncService extends Worker {
break;
}
}
-
+ LongList queueToBeRemoved = new LongList();
List<FeedItem> updatedItems = new ArrayList<>();
for (EpisodeAction action : mostRecentPlayAction.values()) {
FeedItem playItem = DBReader.getFeedItemByUrl(action.getPodcast(), action.getEpisode());
@@ -467,10 +468,12 @@ public class SyncService extends Worker {
if (playItem.getMedia().hasAlmostEnded()) {
Log.d(TAG, "Marking as played");
playItem.setPlayed(true);
+ queueToBeRemoved.add(playItem.getId());
}
updatedItems.add(playItem);
}
}
+ DBWriter.removeQueueItem(getApplicationContext(), false, queueToBeRemoved.toArray());
DBWriter.setItemList(updatedItems);
}