diff options
Diffstat (limited to 'core/src/main/java/de/danoeh/antennapod')
3 files changed, 22 insertions, 21 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/feed/Feed.java b/core/src/main/java/de/danoeh/antennapod/core/feed/Feed.java index 73e414c6a..29ba721fe 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/feed/Feed.java +++ b/core/src/main/java/de/danoeh/antennapod/core/feed/Feed.java @@ -2,6 +2,7 @@ package de.danoeh.antennapod.core.feed; import android.content.Context; import android.net.Uri; +import android.support.annotation.Nullable; import org.apache.commons.lang3.StringUtils; @@ -188,21 +189,16 @@ public class Feed extends FeedFile implements FlattrThing, PicassoImageResource /** * Returns the number of FeedItems. * - * @param enableEpisodeFilter true if this method should only count items with episodes if - * the 'display only episodes' - preference is set to true by the - * user. */ - public int getNumOfItems(boolean enableEpisodeFilter) { + public int getNumOfItems() { return items.size(); } /** * Returns the item at the specified index. * - * @param enableEpisodeFilter true if this method should ignore items without episdodes if - * the episodes filter has been enabled by the user. */ - public FeedItem getItemAtIndex(boolean enableEpisodeFilter, int position) { + public FeedItem getItemAtIndex(int position) { return items.get(position); } @@ -481,14 +477,14 @@ public class Feed extends FeedFile implements FlattrThing, PicassoImageResource this.nextPageLink = nextPageLink; } - + @Nullable public FeedItemFilter getItemFilter() { return itemfilter; } - public void setFeedItemsFilter(String[] filter) { - if (filter != null) { - this.itemfilter = new FeedItemFilter(filter); + public void setHiddenItemProperties(String[] properties) { + if (properties != null) { + this.itemfilter = new FeedItemFilter(properties); } } diff --git a/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java b/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java index be84eacc7..4ad084b39 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java @@ -11,7 +11,7 @@ import de.danoeh.antennapod.core.storage.DBReader; public class FeedItemFilter { - private final String[] filter; + private final String[] properties; private boolean hideUnplayed = false; private boolean hidePaused = false; @@ -21,15 +21,15 @@ public class FeedItemFilter { private boolean hideDownloaded = false; private boolean hideNotDownloaded = false; - public FeedItemFilter(String filter) { - this(StringUtils.split(filter, ',')); + public FeedItemFilter(String properties) { + this(StringUtils.split(properties, ',')); } - public FeedItemFilter(String[] filter) { - this.filter = filter; - for(String f : filter) { + public FeedItemFilter(String[] properties) { + this.properties = properties; + for(String property : properties) { // see R.arrays.feed_filter_values - switch(f) { + switch(property) { case "unplayed": hideUnplayed = true; break; @@ -56,7 +56,7 @@ public class FeedItemFilter { } public List<FeedItem> filter(Context context, List<FeedItem> items) { - if(filter.length == 0) { + if(properties.length == 0) { return items; } List<FeedItem> result = new ArrayList<FeedItem>(); @@ -76,7 +76,7 @@ public class FeedItemFilter { } public String[] getValues() { - return filter.clone(); + return properties.clone(); } } diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java index a1c8d96f0..6d31b565f 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java @@ -434,7 +434,11 @@ public class PodDBAdapter { values.put(KEY_FLATTR_STATUS, feed.getFlattrStatus().toLong()); values.put(KEY_IS_PAGED, feed.isPaged()); values.put(KEY_NEXT_PAGE_LINK, feed.getNextPageLink()); - values.put(KEY_HIDE, StringUtils.join(feed.getItemFilter(), ",")); + if(feed.getItemFilter() != null && feed.getItemFilter().getValues().length > 0) { + values.put(KEY_HIDE, StringUtils.join(feed.getItemFilter().getValues(), ",")); + } else { + values.put(KEY_HIDE, ""); + } values.put(KEY_LAST_UPDATE_FAILED, feed.hasLastUpdateFailed()); if (feed.getId() == 0) { // Create new entry @@ -1464,6 +1468,7 @@ public class PodDBAdapter { db.execSQL(CREATE_INDEX_FEEDMEDIA_FEEDITEM); db.execSQL(CREATE_INDEX_QUEUE_FEEDITEM); db.execSQL(CREATE_INDEX_SIMPLECHAPTERS_FEEDITEM); + } @Override |