diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2013-09-05 15:24:50 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2013-09-05 15:24:50 +0200 |
commit | 02926a6e5ffa968d08efeae5012a0ecf41a6f33a (patch) | |
tree | f9cfef6a7569b82301ea1d1aa7066cefc7cd1146 /src/de/danoeh/antennapod/storage/DBTasks.java | |
parent | 862b8db20b8003691b2a40693275c2390dd9a4e7 (diff) | |
parent | eb7addaaf07e5ede3c1bc730b33aee6541c78290 (diff) | |
download | AntennaPod-02926a6e5ffa968d08efeae5012a0ecf41a6f33a.zip |
Merge branch 'gpoddernet' into develop
Conflicts:
AndroidManifest.xml
res/values/arrays.xml
res/values/strings.xml
res/xml/preferences.xml
src/de/danoeh/antennapod/activity/PreferenceActivity.java
Diffstat (limited to 'src/de/danoeh/antennapod/storage/DBTasks.java')
-rw-r--r-- | src/de/danoeh/antennapod/storage/DBTasks.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/de/danoeh/antennapod/storage/DBTasks.java b/src/de/danoeh/antennapod/storage/DBTasks.java index ba2e743a8..b9a1fd002 100644 --- a/src/de/danoeh/antennapod/storage/DBTasks.java +++ b/src/de/danoeh/antennapod/storage/DBTasks.java @@ -23,6 +23,7 @@ import de.danoeh.antennapod.feed.FeedImage; import de.danoeh.antennapod.feed.FeedItem; import de.danoeh.antennapod.feed.FeedMedia; import de.danoeh.antennapod.preferences.UserPreferences; +import de.danoeh.antennapod.service.GpodnetSyncService; import de.danoeh.antennapod.service.PlaybackService; import de.danoeh.antennapod.service.download.DownloadStatus; import de.danoeh.antennapod.util.DownloadError; @@ -41,6 +42,39 @@ public final class DBTasks { } /** + * Removes the feed with the given download url. This method should NOT be executed on the GUI thread. + * @param context Used for accessing the db + * @param downloadUrl URL of the feed. + * */ + public static void removeFeedWithDownloadUrl(Context context, String downloadUrl) { + PodDBAdapter adapter = new PodDBAdapter(context); + adapter.open(); + Cursor cursor = adapter.getFeedCursorDownloadUrls(); + long feedID = 0; + if (cursor.moveToFirst()) { + do { + if (cursor.getString(1).equals(downloadUrl)) { + feedID = cursor.getLong(0); + } + } while (cursor.moveToNext()); + } + cursor.close(); + adapter.close(); + + if (feedID != 0) { + try { + DBWriter.deleteFeed(context, feedID).get(); + } catch (InterruptedException e) { + e.printStackTrace(); + } catch (ExecutionException e) { + e.printStackTrace(); + } + } else { + Log.w(TAG, "removeFeedWithDownloadUrl: Could not find feed with url: " + downloadUrl); + } + } + + /** * Starts playback of a FeedMedia object's file. This method will build an Intent based on the given parameters to * start the {@link PlaybackService}. * @@ -111,6 +145,8 @@ public final class DBTasks { refreshFeeds(context, DBReader.getFeedList(context)); } isRefreshing.set(false); + + GpodnetSyncService.sendSyncIntent(context); } }.start(); } else { |