From df53c5bfe57e95211fd6e3f90b4c2480cf5f7bf9 Mon Sep 17 00:00:00 2001 From: Paul Ganssle <1377457+pganssle@users.noreply.github.com> Date: Thu, 9 Jun 2022 16:24:22 -0400 Subject: Convert playback history fragment to lazy loading (#5886) --- .../java/de/danoeh/antennapod/storage/database/PodDBAdapter.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'storage/database') diff --git a/storage/database/src/main/java/de/danoeh/antennapod/storage/database/PodDBAdapter.java b/storage/database/src/main/java/de/danoeh/antennapod/storage/database/PodDBAdapter.java index 41c8e051a..453d1c184 100644 --- a/storage/database/src/main/java/de/danoeh/antennapod/storage/database/PodDBAdapter.java +++ b/storage/database/src/main/java/de/danoeh/antennapod/storage/database/PodDBAdapter.java @@ -1076,18 +1076,23 @@ public class PodDBAdapter { * Returns a cursor which contains feed media objects with a playback * completion date in ascending order. * + * @param offset The row to start at. * @param limit The maximum row count of the returned cursor. Must be an * integer >= 0. * @throws IllegalArgumentException if limit < 0 */ - public final Cursor getCompletedMediaCursor(int limit) { + public final Cursor getCompletedMediaCursor(int offset, int limit) { if (limit < 0) { throw new IllegalArgumentException("Limit must be >= 0"); } return db.query(TABLE_NAME_FEED_MEDIA, null, KEY_PLAYBACK_COMPLETION_DATE + " > 0", null, null, - null, String.format(Locale.US, "%s DESC LIMIT %d", KEY_PLAYBACK_COMPLETION_DATE, limit)); + null, String.format(Locale.US, "%s DESC LIMIT %d, %d", KEY_PLAYBACK_COMPLETION_DATE, offset, limit)); + } + + public final long getCompletedMediaLength() { + return DatabaseUtils.queryNumEntries(db, TABLE_NAME_FEED_MEDIA, KEY_PLAYBACK_COMPLETION_DATE + "> 0"); } public final Cursor getSingleFeedMediaCursor(long id) { -- cgit v1.2.3