summaryrefslogtreecommitdiff
path: root/src/de/danoeh/antennapod/storage/PodDBAdapter.java
diff options
context:
space:
mode:
authordaniel oeh <daniel.oeh@gmail.com>2013-05-26 03:47:57 +0200
committerdaniel oeh <daniel.oeh@gmail.com>2013-05-26 03:47:57 +0200
commitc6545a5643886b653422fcd1f722fdb1d34f6f9e (patch)
treee2fa11c0d51cc7da8cdfa9c94cee2aeea3c0955f /src/de/danoeh/antennapod/storage/PodDBAdapter.java
parenta704a33e2b31a7312f35f33251faaf1017b982d9 (diff)
downloadAntennaPod-c6545a5643886b653422fcd1f722fdb1d34f6f9e.zip
Implemented refresh, auto-download, auto-cleanup methods
Diffstat (limited to 'src/de/danoeh/antennapod/storage/PodDBAdapter.java')
-rw-r--r--src/de/danoeh/antennapod/storage/PodDBAdapter.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/de/danoeh/antennapod/storage/PodDBAdapter.java b/src/de/danoeh/antennapod/storage/PodDBAdapter.java
index dcc9533a5..6ff22cb55 100644
--- a/src/de/danoeh/antennapod/storage/PodDBAdapter.java
+++ b/src/de/danoeh/antennapod/storage/PodDBAdapter.java
@@ -10,6 +10,7 @@ import android.database.DatabaseUtils;
import android.database.MergeCursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteStatement;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
@@ -574,6 +575,14 @@ public class PodDBAdapter {
return c;
}
+ public final Cursor getExpiredFeedsCursor(long expirationTime) {
+ open();
+ Cursor c = db.query(TABLE_NAME_FEEDS, null, "?<?", new String[] {
+ KEY_LASTUPDATE, Long.toString(expirationTime) }, null, null,
+ null);
+ return c;
+ }
+
/**
* Returns a cursor with all FeedItems of a Feed. Uses SEL_FI_SMALL
*
@@ -680,6 +689,17 @@ public class PodDBAdapter {
}
+ public Cursor getDownloadedItemsCursor() {
+ open();
+ Cursor c = db.rawQuery("SELECT ? FROM " + TABLE_NAME_FEED_ITEMS
+ + "FULL JOIN " + TABLE_NAME_FEED_MEDIA + " ON "
+ + TABLE_NAME_FEED_ITEMS + "." + KEY_ID + "="
+ + TABLE_NAME_FEED_MEDIA + "." + KEY_ID + " WHERE "
+ + TABLE_NAME_FEED_MEDIA + "." + KEY_DOWNLOADED + ">0",
+ SEL_FI_SMALL);
+ return c;
+ }
+
/**
* Returns a cursor which contains feed media objects with a playback
* completion date in descending order.
@@ -766,6 +786,16 @@ public class PodDBAdapter {
}
+ public final int getNumberOfDownloadedEpisodes() {
+
+ Cursor c = db.rawQuery(
+ "SELECT COUNT(DISTINCT ?) AS count FROM ? WHERE ?>0",
+ new String[] { KEY_ID, TABLE_NAME_FEED_MEDIA, KEY_DOWNLOADED });
+ final int result = c.getInt(0);
+ c.close();
+ return result;
+ }
+
/**
* Uses DatabaseUtils to escape a search query and removes ' at the
* beginning and the end of the string returned by the escape method.