From 355fc8114f61ed2ecde8f118c4d30d209ceb6198 Mon Sep 17 00:00:00 2001 From: daniel oeh Date: Sun, 4 Aug 2013 17:28:29 +0200 Subject: Ported playback classes to DB* classes --- src/de/danoeh/antennapod/storage/DBReader.java | 15 +++++++++++++++ src/de/danoeh/antennapod/storage/DBWriter.java | 14 ++++++++++++-- src/de/danoeh/antennapod/storage/PodDBAdapter.java | 11 +++++++++++ 3 files changed, 38 insertions(+), 2 deletions(-) (limited to 'src/de/danoeh/antennapod/storage') diff --git a/src/de/danoeh/antennapod/storage/DBReader.java b/src/de/danoeh/antennapod/storage/DBReader.java index c69607473..bf81ad7d4 100644 --- a/src/de/danoeh/antennapod/storage/DBReader.java +++ b/src/de/danoeh/antennapod/storage/DBReader.java @@ -476,6 +476,21 @@ public final class DBReader { return item; } + + public static void loadExtraInformationOfFeedItem(final Context context, final FeedItem item) { + PodDBAdapter adapter = new PodDBAdapter(context); + adapter.open(); + Cursor extraCursor = adapter.getExtraInformationOfItem(item); + if (extraCursor.moveToFirst()) { + String description = extraCursor + .getString(PodDBAdapter.IDX_FI_EXTRA_DESCRIPTION); + String contentEncoded = extraCursor + .getString(PodDBAdapter.IDX_FI_EXTRA_CONTENT_ENCODED); + item.setDescription(description); + item.setContentEncoded(contentEncoded); + } + adapter.close(); + } public static int getNumberOfDownloadedEpisodes(final Context context) { PodDBAdapter adapter = new PodDBAdapter(context); diff --git a/src/de/danoeh/antennapod/storage/DBWriter.java b/src/de/danoeh/antennapod/storage/DBWriter.java index a60694f35..3db0b8a33 100644 --- a/src/de/danoeh/antennapod/storage/DBWriter.java +++ b/src/de/danoeh/antennapod/storage/DBWriter.java @@ -529,10 +529,20 @@ public class DBWriter { adapter.setMedia(media); adapter.close(); }}); - - } + public static Future setFeedMediaPosition(final Context context, final FeedMedia media) { + return dbExec.submit(new Runnable(){ + @Override + public void run() { + PodDBAdapter adapter = new PodDBAdapter(context); + adapter.open(); + adapter.setFeedMediaPosition(media); + adapter.close(); + } + }); + } + public static Future setFeedItem(final Context context, final FeedItem item) { return dbExec.submit(new Runnable() { diff --git a/src/de/danoeh/antennapod/storage/PodDBAdapter.java b/src/de/danoeh/antennapod/storage/PodDBAdapter.java index 14ef07c34..4ef76fcd6 100644 --- a/src/de/danoeh/antennapod/storage/PodDBAdapter.java +++ b/src/de/danoeh/antennapod/storage/PodDBAdapter.java @@ -366,6 +366,17 @@ public class PodDBAdapter { return media.getId(); } + public void setFeedMediaPosition(FeedMedia media) { + if (media.getId() != 0) { + ContentValues values = new ContentValues(); + values.put(KEY_POSITION, media.getPosition()); + db.update(TABLE_NAME_FEED_MEDIA, values, KEY_ID + "=?", + new String[] { String.valueOf(media.getId()) }); + } else { + Log.e(TAG, "setFeedMediaPosition: ID of media was 0"); + } + } + /** * Insert all FeedItems of a feed and the feed object itself in a single * transaction -- cgit v1.2.3