diff options
author | Martin Fietz <Martin.Fietz@gmail.com> | 2015-06-23 18:34:03 +0200 |
---|---|---|
committer | Martin Fietz <Martin.Fietz@gmail.com> | 2015-06-29 12:54:00 +0200 |
commit | 5178de86810594342b283565584cbc21f0983a5d (patch) | |
tree | 812b9e07609203eab11359217a6127b92bdea26a /app/src | |
parent | cff363e474d5527a18a05cec0ce81fcb05be2d3c (diff) | |
download | AntennaPod-5178de86810594342b283565584cbc21f0983a5d.zip |
Make new explicit
Diffstat (limited to 'app/src')
19 files changed, 92 insertions, 94 deletions
diff --git a/app/src/androidTest/java/de/test/antennapod/handler/FeedHandlerTest.java b/app/src/androidTest/java/de/test/antennapod/handler/FeedHandlerTest.java index 52067c971..738ec488f 100644 --- a/app/src/androidTest/java/de/test/antennapod/handler/FeedHandlerTest.java +++ b/app/src/androidTest/java/de/test/antennapod/handler/FeedHandlerTest.java @@ -2,15 +2,9 @@ package de.test.antennapod.handler; import android.content.Context; import android.test.InstrumentationTestCase; -import de.danoeh.antennapod.core.feed.*; -import de.danoeh.antennapod.core.syndication.handler.FeedHandler; -import de.danoeh.antennapod.core.syndication.handler.UnsupportedFeedtypeException; -import de.test.antennapod.util.syndication.feedgenerator.AtomGenerator; -import de.test.antennapod.util.syndication.feedgenerator.FeedGenerator; -import de.test.antennapod.util.syndication.feedgenerator.RSS2Generator; + import org.xml.sax.SAXException; -import javax.xml.parsers.ParserConfigurationException; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; @@ -19,6 +13,19 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import javax.xml.parsers.ParserConfigurationException; + +import de.danoeh.antennapod.core.feed.Chapter; +import de.danoeh.antennapod.core.feed.Feed; +import de.danoeh.antennapod.core.feed.FeedImage; +import de.danoeh.antennapod.core.feed.FeedItem; +import de.danoeh.antennapod.core.feed.FeedMedia; +import de.danoeh.antennapod.core.syndication.handler.FeedHandler; +import de.danoeh.antennapod.core.syndication.handler.UnsupportedFeedtypeException; +import de.test.antennapod.util.syndication.feedgenerator.AtomGenerator; +import de.test.antennapod.util.syndication.feedgenerator.FeedGenerator; +import de.test.antennapod.util.syndication.feedgenerator.RSS2Generator; + /** * Tests for FeedHandler */ @@ -162,7 +169,7 @@ public class FeedHandlerTest extends InstrumentationTestCase { for (int i = 0; i < numItems; i++) { FeedItem item = new FeedItem(0, "item-" + i, "http://example.com/item-" + i, - "http://example.com/items/" + i, new Date(i*60000), false, feed); + "http://example.com/items/" + i, new Date(i*60000), FeedItem.UNPLAYED, feed); feed.getItems().add(item); if (withFeedMedia) { item.setMedia(new FeedMedia(0, item, 4711, 0, 100, "audio/mp3", null, "http://example.com/media-" + i, diff --git a/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceMediaPlayerTest.java b/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceMediaPlayerTest.java index aac4c245a..9281cb319 100644 --- a/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceMediaPlayerTest.java +++ b/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceMediaPlayerTest.java @@ -3,15 +3,9 @@ package de.test.antennapod.service.playback; import android.content.Context; import android.media.RemoteControlClient; import android.test.InstrumentationTestCase; -import de.danoeh.antennapod.core.feed.Feed; -import de.danoeh.antennapod.core.feed.FeedItem; -import de.danoeh.antennapod.core.feed.FeedMedia; -import de.danoeh.antennapod.core.service.playback.PlaybackServiceMediaPlayer; -import de.danoeh.antennapod.core.service.playback.PlayerStatus; -import de.danoeh.antennapod.core.storage.PodDBAdapter; -import de.danoeh.antennapod.core.util.playback.Playable; -import de.test.antennapod.util.service.download.HTTPBin; + import junit.framework.AssertionFailedError; + import org.apache.commons.io.IOUtils; import java.io.File; @@ -23,6 +17,15 @@ import java.util.Date; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; +import de.danoeh.antennapod.core.feed.Feed; +import de.danoeh.antennapod.core.feed.FeedItem; +import de.danoeh.antennapod.core.feed.FeedMedia; +import de.danoeh.antennapod.core.service.playback.PlaybackServiceMediaPlayer; +import de.danoeh.antennapod.core.service.playback.PlayerStatus; +import de.danoeh.antennapod.core.storage.PodDBAdapter; +import de.danoeh.antennapod.core.util.playback.Playable; +import de.test.antennapod.util.service.download.HTTPBin; + /** * Test class for PlaybackServiceMediaPlayer */ @@ -114,7 +117,7 @@ public class PlaybackServiceMediaPlayerTest extends InstrumentationTestCase { final Context c = getInstrumentation().getTargetContext(); Feed f = new Feed(0, new Date(), "f", "l", "d", null, null, null, null, "i", null, null, "l", false); f.setItems(new ArrayList<FeedItem>()); - FeedItem i = new FeedItem(0, "t", "i", "l", new Date(), false, f); + FeedItem i = new FeedItem(0, "t", "i", "l", new Date(), FeedItem.UNPLAYED, f); f.getItems().add(i); FeedMedia media = new FeedMedia(0, i, 0, 0, 0, "audio/wav", fileUrl, downloadUrl, fileUrl != null, null, 0); i.setMedia(media); diff --git a/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceTaskManagerTest.java b/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceTaskManagerTest.java index d74128c2f..edb576249 100644 --- a/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceTaskManagerTest.java +++ b/app/src/androidTest/java/de/test/antennapod/service/playback/PlaybackServiceTaskManagerTest.java @@ -51,7 +51,7 @@ public class PlaybackServiceTaskManagerTest extends InstrumentationTestCase { Feed f = new Feed(0, new Date(), "title", "link", "d", null, null, null, null, "id", null, "null", "url", false); f.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - f.getItems().add(new FeedItem(0, pref + i, pref + i, "link", new Date(), true, f)); + f.getItems().add(new FeedItem(0, pref + i, pref + i, "link", new Date(), FeedItem.PLAYED, f)); } PodDBAdapter adapter = new PodDBAdapter(c); adapter.open(); diff --git a/app/src/androidTest/java/de/test/antennapod/storage/DBReaderTest.java b/app/src/androidTest/java/de/test/antennapod/storage/DBReaderTest.java index 95d2ce58a..0bc534924 100644 --- a/app/src/androidTest/java/de/test/antennapod/storage/DBReaderTest.java +++ b/app/src/androidTest/java/de/test/antennapod/storage/DBReaderTest.java @@ -277,7 +277,7 @@ public class DBReaderTest extends InstrumentationTestCase { int i = random.nextInt(numItems); if (!unread.contains(items.get(i))) { FeedItem item = items.get(i); - item.setRead(false); + item.setPlayed(false); unread.add(item); } } @@ -297,7 +297,7 @@ public class DBReaderTest extends InstrumentationTestCase { assertNotNull(unreadSaved); assertTrue(unread.size() == unreadSaved.size()); for (FeedItem item : unreadSaved) { - assertFalse(item.isRead()); + assertFalse(item.isPlayed()); } } @@ -391,7 +391,7 @@ public class DBReaderTest extends InstrumentationTestCase { adapter.open(); for (int i = 0; i < NUM_UNREAD; i++) { FeedItem item = feeds.get(0).getItems().get(i); - item.setRead(false); + item.setPlayed(false); adapter.setSingleFeedItem(item); } List<FeedItem> queue = new ArrayList<FeedItem>(); diff --git a/app/src/androidTest/java/de/test/antennapod/storage/DBTasksTest.java b/app/src/androidTest/java/de/test/antennapod/storage/DBTasksTest.java index 356933367..a176ef69a 100644 --- a/app/src/androidTest/java/de/test/antennapod/storage/DBTasksTest.java +++ b/app/src/androidTest/java/de/test/antennapod/storage/DBTasksTest.java @@ -78,7 +78,7 @@ public class DBTasksTest extends InstrumentationTestCase { feed.setItems(items); List<File> files = new ArrayList<File>(); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), true, feed); + FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), FeedItem.PLAYED, feed); File f = new File(destFolder, "file " + i); assertTrue(f.createNewFile()); @@ -116,7 +116,7 @@ public class DBTasksTest extends InstrumentationTestCase { feed.setItems(items); List<File> files = new ArrayList<File>(); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), false, feed); + FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), FeedItem.UNPLAYED, feed); File f = new File(destFolder, "file " + i); assertTrue(f.createNewFile()); @@ -151,7 +151,7 @@ public class DBTasksTest extends InstrumentationTestCase { feed.setItems(items); List<File> files = new ArrayList<File>(); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), true, feed); + FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), FeedItem.PLAYED, feed); File f = new File(destFolder, "file " + i); assertTrue(f.createNewFile()); @@ -208,14 +208,14 @@ public class DBTasksTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - feed.getItems().add(new FeedItem(0, "item " + i, "id " + i, "link " + i, new Date(), false, feed)); + feed.getItems().add(new FeedItem(0, "item " + i, "id " + i, "link " + i, new Date(), FeedItem.UNPLAYED, feed)); } Feed newFeed = DBTasks.updateFeed(context, feed)[0]; assertTrue(newFeed == feed); assertTrue(feed.getId() != 0); for (FeedItem item : feed.getItems()) { - assertFalse(item.isRead()); + assertFalse(item.isPlayed()); assertTrue(item.getId() != 0); } } @@ -242,7 +242,7 @@ public class DBTasksTest extends InstrumentationTestCase { final Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS_OLD; i++) { - feed.getItems().add(new FeedItem(0, "item " + i, "id " + i, "link " + i, new Date(i), true, feed)); + feed.getItems().add(new FeedItem(0, "item " + i, "id " + i, "link " + i, new Date(i), FeedItem.PLAYED, feed)); } PodDBAdapter adapter = new PodDBAdapter(context); adapter.open(); @@ -261,7 +261,7 @@ public class DBTasksTest extends InstrumentationTestCase { } for (int i = NUM_ITEMS_OLD; i < NUM_ITEMS_NEW + NUM_ITEMS_OLD; i++) { - feed.getItems().add(0, new FeedItem(0, "item " + i, "id " + i, "link " + i, new Date(i), true, feed)); + feed.getItems().add(0, new FeedItem(0, "item " + i, "id " + i, "link " + i, new Date(i), FeedItem.PLAYED, feed)); } final Feed newFeed = DBTasks.updateFeed(context, feed)[0]; @@ -285,7 +285,7 @@ public class DBTasksTest extends InstrumentationTestCase { FeedItem item = newFeed.getItems().get(i); assertTrue(item.getFeed() == newFeed); assertTrue(item.getId() == itemIDs.get(i)); - assertTrue(item.isRead()); + assertTrue(item.isPlayed()); assertTrue(item.getPubDate().getTime() >= lastDate.getTime()); lastDate = item.getPubDate(); } @@ -293,7 +293,7 @@ public class DBTasksTest extends InstrumentationTestCase { FeedItem item = newFeed.getItems().get(i); assertTrue(item.getFeed() == newFeed); assertTrue(item.getId() != 0); - assertFalse(item.isRead()); + assertFalse(item.isPlayed()); assertTrue(item.getPubDate().getTime() >= lastDate.getTime()); lastDate = item.getPubDate(); } diff --git a/app/src/androidTest/java/de/test/antennapod/storage/DBTestUtils.java b/app/src/androidTest/java/de/test/antennapod/storage/DBTestUtils.java index 4f33cd798..c6f702f3d 100644 --- a/app/src/androidTest/java/de/test/antennapod/storage/DBTestUtils.java +++ b/app/src/androidTest/java/de/test/antennapod/storage/DBTestUtils.java @@ -51,7 +51,7 @@ public class DBTestUtils { f.setItems(new ArrayList<FeedItem>()); for (int j = 0; j < numItems; j++) { FeedItem item = new FeedItem(0, "item " + j, "id" + j, "link" + j, new Date(), - true, f, withChapters); + FeedItem.PLAYED, f, withChapters); if (withMedia) { FeedMedia media = new FeedMedia(item, "url" + j, 1, "audio/mp3"); item.setMedia(media); diff --git a/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java b/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java index f3b0c9165..c5fa2f131 100644 --- a/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java +++ b/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java @@ -65,7 +65,7 @@ public class DBWriterTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); List<FeedItem> items = new ArrayList<FeedItem>(); feed.setItems(items); - FeedItem item = new FeedItem(0, "Item", "Item", "url", new Date(), true, feed); + FeedItem item = new FeedItem(0, "Item", "Item", "url", new Date(), FeedItem.PLAYED, feed); FeedMedia media = new FeedMedia(0, item, 1, 1, 1, "mime_type", dest.getAbsolutePath(), "download_url", true, null, 0); item.setMedia(media); @@ -104,7 +104,7 @@ public class DBWriterTest extends InstrumentationTestCase { List<File> itemFiles = new ArrayList<File>(); // create items with downloaded media files for (int i = 0; i < 10; i++) { - FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), true, feed, true); + FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), FeedItem.PLAYED, feed, true); feed.getItems().add(item); File enc = new File(destFolder, "file " + i); @@ -171,7 +171,7 @@ public class DBWriterTest extends InstrumentationTestCase { List<File> itemFiles = new ArrayList<File>(); // create items with downloaded media files for (int i = 0; i < 10; i++) { - FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), true, feed); + FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); File enc = new File(destFolder, "file " + i); @@ -268,7 +268,7 @@ public class DBWriterTest extends InstrumentationTestCase { // create items for (int i = 0; i < 10; i++) { - FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), true, feed); + FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); } @@ -320,7 +320,7 @@ public class DBWriterTest extends InstrumentationTestCase { // create items with images for (int i = 0; i < 10; i++) { - FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), true, feed); + FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); File itemImageFile = new File(destFolder, "item-image-" + i); FeedImage itemImage = new FeedImage(0, "item-image" + i, itemImageFile.getAbsolutePath(), "url", true); @@ -378,7 +378,7 @@ public class DBWriterTest extends InstrumentationTestCase { List<File> itemFiles = new ArrayList<File>(); // create items with downloaded media files for (int i = 0; i < 10; i++) { - FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), true, feed); + FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); File enc = new File(destFolder, "file " + i); @@ -450,7 +450,7 @@ public class DBWriterTest extends InstrumentationTestCase { List<File> itemFiles = new ArrayList<File>(); // create items with downloaded media files for (int i = 0; i < 10; i++) { - FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), true, feed); + FeedItem item = new FeedItem(0, "Item " + i, "Item" + i, "url", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); File enc = new File(destFolder, "file " + i); @@ -496,7 +496,7 @@ public class DBWriterTest extends InstrumentationTestCase { final Context context = getInstrumentation().getTargetContext(); Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); - FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), true, feed); + FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), FeedItem.PLAYED, feed); FeedMedia media = new FeedMedia(0, item, 10, 0, 1, "mime", null, "url", false, playbackCompletionDate, 0); feed.getItems().add(item); item.setMedia(media); @@ -543,7 +543,7 @@ public class DBWriterTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), true, feed); + FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); } @@ -569,7 +569,7 @@ public class DBWriterTest extends InstrumentationTestCase { final Context context = getInstrumentation().getTargetContext(); Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); - FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), true, feed); + FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); PodDBAdapter adapter = new PodDBAdapter(context); @@ -593,7 +593,7 @@ public class DBWriterTest extends InstrumentationTestCase { final Context context = getInstrumentation().getTargetContext(); Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); - FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), true, feed); + FeedItem item = new FeedItem(0, "title", "id", "link", new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); PodDBAdapter adapter = new PodDBAdapter(context); @@ -661,7 +661,7 @@ public class DBWriterTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), true, feed); + FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); } @@ -707,7 +707,7 @@ public class DBWriterTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), true, feed); + FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), FeedItem.PLAYED, feed); feed.getItems().add(item); } @@ -754,7 +754,7 @@ public class DBWriterTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), false, feed); + FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), FeedItem.UNPLAYED, feed); feed.getItems().add(item); } @@ -771,7 +771,7 @@ public class DBWriterTest extends InstrumentationTestCase { DBWriter.markFeedRead(context, feed.getId()).get(TIMEOUT, TimeUnit.SECONDS); List<FeedItem> loadedItems = DBReader.getFeedItemList(context, feed); for (FeedItem item : loadedItems) { - assertTrue(item.isRead()); + assertTrue(item.isPlayed()); } } @@ -781,7 +781,7 @@ public class DBWriterTest extends InstrumentationTestCase { Feed feed = new Feed("url", new Date(), "title"); feed.setItems(new ArrayList<FeedItem>()); for (int i = 0; i < NUM_ITEMS; i++) { - FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), false, feed); + FeedItem item = new FeedItem(0, "title " + i, "id " + i, "link " + i, new Date(), FeedItem.UNPLAYED, feed); feed.getItems().add(item); } @@ -798,7 +798,7 @@ public class DBWriterTest extends InstrumentationTestCase { DBWriter.markAllItemsRead(context).get(TIMEOUT, TimeUnit.SECONDS); List<FeedItem> loadedItems = DBReader.getFeedItemList(context, feed); for (FeedItem item : loadedItems) { - assertTrue(item.isRead()); + assertTrue(item.isPlayed()); } } diff --git a/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java b/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java index 613826932..675ed4a61 100644 --- a/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java +++ b/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java @@ -142,7 +142,7 @@ public class UITestUtils { List<FeedItem> items = new ArrayList<FeedItem>(); for (int j = 0; j < NUM_ITEMS_PER_FEED; j++) { FeedItem item = new FeedItem(j, "Feed " + (i+1) + ": Item " + (j+1), "item" + j, - "http://example.com/feed" + i + "/item/" + j, new Date(), false, feed); + "http://example.com/feed" + i + "/item/" + j, new Date(), FeedItem.UNPLAYED, feed); items.add(item); File mediaFile = newMediaFile("feed-" + i + "-episode-" + j + ".mp3"); diff --git a/app/src/androidTest/java/de/test/antennapod/util/playback/TimelineTest.java b/app/src/androidTest/java/de/test/antennapod/util/playback/TimelineTest.java index 2c56b71cc..7e535e12c 100644 --- a/app/src/androidTest/java/de/test/antennapod/util/playback/TimelineTest.java +++ b/app/src/androidTest/java/de/test/antennapod/util/playback/TimelineTest.java @@ -31,7 +31,7 @@ public class TimelineTest extends InstrumentationTestCase { } private Playable newTestPlayable(List<Chapter> chapters, String shownotes) { - FeedItem item = new FeedItem(0, "Item", "item-id", "http://example.com/item", new Date(), true, null); + FeedItem item = new FeedItem(0, "Item", "item-id", "http://example.com/item", new Date(), FeedItem.PLAYED, null); item.setChapters(chapters); item.setContentEncoded(shownotes); FeedMedia media = new FeedMedia(item, "http://example.com/episode", 100, "audio/mp3"); diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/ActionButtonUtils.java b/app/src/main/java/de/danoeh/antennapod/adapter/ActionButtonUtils.java index 8e347a819..aca2b359a 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/ActionButtonUtils.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/ActionButtonUtils.java @@ -88,7 +88,7 @@ public class ActionButtonUtils { butSecondary.setContentDescription(context.getString(labels[0])); } } else { - if (item.isRead()) { + if (item.isPlayed()) { butSecondary.setVisibility(View.INVISIBLE); } else { butSecondary.setVisibility(View.VISIBLE); diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/AllEpisodesListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/AllEpisodesListAdapter.java index d96326053..bc3d3abbc 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/AllEpisodesListAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/AllEpisodesListAdapter.java @@ -91,7 +91,7 @@ public class AllEpisodesListAdapter extends BaseAdapter { holder.title.setText(item.getTitle()); holder.pubDate.setText(DateUtils.formatDateTime(context, item.getPubDate().getTime(), DateUtils.FORMAT_ABBREV_ALL)); - if (showOnlyNewEpisodes || item.isRead() || false == itemAccess.isNew(item)) { + if (showOnlyNewEpisodes || false == item.isNew()) { holder.statusUnread.setVisibility(View.INVISIBLE); } else { holder.statusUnread.setVisibility(View.VISIBLE); @@ -179,7 +179,5 @@ public class AllEpisodesListAdapter extends BaseAdapter { boolean isInQueue(FeedItem item); - boolean isNew(FeedItem item); - } } diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/DefaultActionButtonCallback.java b/app/src/main/java/de/danoeh/antennapod/adapter/DefaultActionButtonCallback.java index 4d6279560..c34d90a30 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/DefaultActionButtonCallback.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/DefaultActionButtonCallback.java @@ -95,7 +95,7 @@ public class DefaultActionButtonCallback implements ActionButtonCallback { } } } else { - if (!item.isRead()) { + if (!item.isPlayed()) { DBWriter.markItemRead(context, item, true, true); } } diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistAdapter.java index b39e23d42..1ecc45210 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistAdapter.java @@ -112,12 +112,12 @@ public class FeedItemlistAdapter extends BaseAdapter { } holder.title.setText(buffer.toString()); - if(false == item.isRead() && itemAccess.isNew(item)) { + if(item.isNew()) { holder.statusUnread.setVisibility(View.VISIBLE); } else { holder.statusUnread.setVisibility(View.INVISIBLE); } - if(item.isRead()) { + if(item.isPlayed()) { ViewHelper.setAlpha(convertView, 0.5f); } else { ViewHelper.setAlpha(convertView, 1.0f); @@ -221,8 +221,6 @@ public class FeedItemlistAdapter extends BaseAdapter { FeedItem getItem(int position); - boolean isNew(FeedItem item); - } } diff --git a/app/src/main/java/de/danoeh/antennapod/config/StorageCallbacksImpl.java b/app/src/main/java/de/danoeh/antennapod/config/StorageCallbacksImpl.java index d8fab34c8..e27828e35 100644 --- a/app/src/main/java/de/danoeh/antennapod/config/StorageCallbacksImpl.java +++ b/app/src/main/java/de/danoeh/antennapod/config/StorageCallbacksImpl.java @@ -8,13 +8,14 @@ import android.media.MediaMetadataRetriever; import android.util.Log; import de.danoeh.antennapod.core.StorageCallbacks; +import de.danoeh.antennapod.core.feed.FeedItem; import de.danoeh.antennapod.core.storage.PodDBAdapter; public class StorageCallbacksImpl implements StorageCallbacks { @Override public int getDatabaseVersion() { - return 16; + return 17; } @Override @@ -181,5 +182,25 @@ public class StorageCallbacksImpl implements StorageCallbacks { } c.close(); } + if(oldVersion <= 17) { + String selectNew = "SELECT " + PodDBAdapter.TABLE_NAME_FEED_ITEMS + "." + PodDBAdapter.KEY_ID + + " FROM " + PodDBAdapter.TABLE_NAME_FEED_ITEMS + + " INNER JOIN " + PodDBAdapter.TABLE_NAME_FEED_MEDIA + " ON " + + PodDBAdapter.TABLE_NAME_FEED_ITEMS + "." + PodDBAdapter.KEY_ID + "=" + + PodDBAdapter.TABLE_NAME_FEED_MEDIA + "." + PodDBAdapter.KEY_FEEDITEM + + " LEFT OUTER JOIN " + PodDBAdapter.TABLE_NAME_QUEUE + " ON " + + PodDBAdapter.TABLE_NAME_FEED_ITEMS + "." + PodDBAdapter.KEY_ID + "=" + + PodDBAdapter.TABLE_NAME_QUEUE + "." + PodDBAdapter.KEY_FEEDITEM + + " WHERE " + + PodDBAdapter.TABLE_NAME_FEED_ITEMS + "." + PodDBAdapter.KEY_READ + " = 0 AND " // unplayed + + PodDBAdapter.TABLE_NAME_FEED_MEDIA + "." + PodDBAdapter.KEY_DOWNLOADED + " = 0 AND " // undownloaded + + PodDBAdapter.TABLE_NAME_FEED_MEDIA + "." + PodDBAdapter.KEY_POSITION + " = 0 AND " // not partially played + + PodDBAdapter.TABLE_NAME_QUEUE + "." + PodDBAdapter.KEY_ID + " IS NULL"; // not in queue + String sql = "UPDATE " + PodDBAdapter.TABLE_NAME_FEED_ITEMS + + " SET " + PodDBAdapter.KEY_READ + "=" + FeedItem.NEW + + " WHERE " + PodDBAdapter.KEY_ID + " IN (" + selectNew + ")"; + Log.d("Migration", "SQL: " + sql); + db.execSQL(sql); + } } } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/AllEpisodesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/AllEpisodesFragment.java index e48b175e8..b4c4f1822 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/AllEpisodesFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/AllEpisodesFragment.java @@ -76,7 +76,6 @@ public class AllEpisodesFragment extends Fragment { private List<FeedItem> episodes; private LongList queuedItemsIds; - private LongList newItemsIds; private List<Downloader> downloaderList; private boolean itemsLoaded = false; @@ -432,18 +431,6 @@ public class AllEpisodesFragment extends Fragment { return false; } } - - @Override - public boolean isNew(FeedItem item) { - if (itemsLoaded) { - // should actually never be called in NewEpisodesFragment, but better safe than sorry - return showOnlyNewEpisodes || newItemsIds.contains(item.getId()); - } else { - return false; - } - } - - }; private EventDistributor.EventListener contentUpdate = new EventDistributor.EventListener() { @@ -508,8 +495,7 @@ public class AllEpisodesFragment extends Fragment { } else { return new Object[]{ DBReader.getRecentlyPublishedEpisodes(context, RECENT_EPISODES_LIMIT), - DBReader.getQueueIDList(context), - DBReader.getNewItemIds(context) + DBReader.getQueueIDList(context) }; } } else { @@ -526,7 +512,6 @@ public class AllEpisodesFragment extends Fragment { if (lists != null) { episodes = (List<FeedItem>) lists[0]; queuedItemsIds = (LongList) lists[1]; - newItemsIds = (LongList) lists[2]; itemsLoaded = true; if (viewsCreated && activity.get() != null) { onFragmentLoaded(); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java index 65b1c8f80..438208467 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java @@ -355,7 +355,7 @@ public class ItemFragment extends Fragment implements LoaderManager.LoaderCallba TypedArray drawables = getActivity().obtainStyledAttributes(new int[]{R.attr.navigation_accept, R.attr.location_web_site}); - if (!item.isRead()) { + if (!item.isPlayed()) { butAction1.setCompoundDrawablesWithIntrinsicBounds(drawables.getDrawable(0), null, null, null); butAction1.setText(getActivity().getString(R.string.mark_read_label)); butAction1.setVisibility(View.VISIBLE); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ItemlistFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ItemlistFragment.java index 797e5fb82..5862e248b 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/ItemlistFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/ItemlistFragment.java @@ -92,8 +92,6 @@ public class ItemlistFragment extends ListFragment { private long feedID; private Feed feed; private LongList queuedItemsIds; - private LongList newItemsIds; - private boolean itemsLoaded = false; private boolean viewsCreated = false; @@ -580,11 +578,6 @@ public class ItemlistFragment extends ListFragment { } @Override - public boolean isNew(FeedItem item) { - return (newItemsIds != null) && newItemsIds.contains(item.getId()); - } - - @Override public int getItemDownloadProgressPercent(FeedItem item) { if (downloaderList != null) { for (Downloader downloader : downloaderList) { @@ -626,8 +619,7 @@ public class ItemlistFragment extends ListFragment { feed.setItems(filter.filter(context, feed.getItems())); } LongList queuedItemsIds = DBReader.getQueueIDList(context); - LongList newItemsIds = DBReader.getNewItemIds(context); - return new Object[] { feed, queuedItemsIds, newItemsIds }; + return new Object[] { feed, queuedItemsIds }; } else { return null; } @@ -639,7 +631,6 @@ public class ItemlistFragment extends ListFragment { if (res != null) { feed = (Feed) res[0]; queuedItemsIds = (LongList) res[1]; - newItemsIds = res[2] == null ? null : (LongList) res[2]; itemsLoaded = true; if (viewsCreated) { onFragmentLoaded(); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/PlaybackHistoryFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/PlaybackHistoryFragment.java index fc8bf2fbb..67f454fa0 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/PlaybackHistoryFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/PlaybackHistoryFragment.java @@ -219,11 +219,6 @@ public class PlaybackHistoryFragment extends ListFragment { } @Override - public boolean isNew(FeedItem item) { - return false; - } - - @Override public int getItemDownloadProgressPercent(FeedItem item) { if (downloaderList != null) { for (Downloader downloader : downloaderList) { diff --git a/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java b/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java index e3285fd53..3e2fdf24f 100644 --- a/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java +++ b/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java @@ -154,7 +154,7 @@ public class FeedItemMenuHandler { DBWriter.deleteFeedMediaOfItem(context, selectedItem.getMedia().getId()); break; case R.id.mark_read_item: - selectedItem.setRead(true); + selectedItem.setPlayed(true); DBWriter.markItemRead(context, selectedItem, true, false); if(GpodnetPreferences.loggedIn()) { FeedMedia media = selectedItem.getMedia(); @@ -172,7 +172,7 @@ public class FeedItemMenuHandler { } break; case R.id.mark_unread_item: - selectedItem.setRead(false); + selectedItem.setPlayed(false); DBWriter.markItemRead(context, selectedItem, false, false); if(GpodnetPreferences.loggedIn()) { GpodnetEpisodeAction actionNew = new GpodnetEpisodeAction.Builder(selectedItem, Action.NEW) |