summaryrefslogtreecommitdiff
path: root/src/de/danoeh/antennapod/syndication/namespace/NSITunes.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/de/danoeh/antennapod/syndication/namespace/NSITunes.java')
-rw-r--r--src/de/danoeh/antennapod/syndication/namespace/NSITunes.java77
1 files changed, 44 insertions, 33 deletions
diff --git a/src/de/danoeh/antennapod/syndication/namespace/NSITunes.java b/src/de/danoeh/antennapod/syndication/namespace/NSITunes.java
index cd7fef509..d8cbe040b 100644
--- a/src/de/danoeh/antennapod/syndication/namespace/NSITunes.java
+++ b/src/de/danoeh/antennapod/syndication/namespace/NSITunes.java
@@ -1,40 +1,51 @@
package de.danoeh.antennapod.syndication.namespace;
-import org.xml.sax.Attributes;
-
import de.danoeh.antennapod.feed.FeedImage;
import de.danoeh.antennapod.syndication.handler.HandlerState;
+import org.xml.sax.Attributes;
+
+public class NSITunes extends Namespace {
+ public static final String NSTAG = "itunes";
+ public static final String NSURI = "http://www.itunes.com/dtds/podcast-1.0.dtd";
+
+ private static final String IMAGE = "image";
+ private static final String IMAGE_TITLE = "image";
+ private static final String IMAGE_HREF = "href";
+
+ private static final String AUTHOR = "author";
+
+
+ @Override
+ public SyndElement handleElementStart(String localName, HandlerState state,
+ Attributes attributes) {
+ if (localName.equals(IMAGE)) {
+ FeedImage image = new FeedImage();
+ image.setTitle(IMAGE_TITLE);
+ image.setDownload_url(attributes.getValue(IMAGE_HREF));
+
+ if (state.getCurrentItem() != null) {
+ // this is an items image
+ image.setTitle(state.getCurrentItem().getTitle() + IMAGE_TITLE);
+ state.getCurrentItem().setImage(image);
+
+ } else {
+ // this is the feed image
+ if (state.getFeed().getImage() == null) {
+ state.getFeed().setImage(image);
+ }
+ }
+
+ }
+
+ return new SyndElement(localName, this);
+ }
+
+ @Override
+ public void handleElementEnd(String localName, HandlerState state) {
+ if (localName.equals(AUTHOR)) {
+ state.getFeed().setAuthor(state.getContentBuf().toString());
+ }
-public class NSITunes extends Namespace{
- public static final String NSTAG = "itunes";
- public static final String NSURI = "http://www.itunes.com/dtds/podcast-1.0.dtd";
-
- private static final String IMAGE = "image";
- private static final String IMAGE_TITLE = "image";
- private static final String IMAGE_HREF = "href";
-
- private static final String AUTHOR = "author";
-
-
- @Override
- public SyndElement handleElementStart(String localName, HandlerState state,
- Attributes attributes) {
- if (localName.equals(IMAGE) && state.getFeed().getImage() == null) {
- FeedImage image = new FeedImage();
- image.setTitle(IMAGE_TITLE);
- image.setDownload_url(attributes.getValue(IMAGE_HREF));
- state.getFeed().setImage(image);
- }
-
- return new SyndElement(localName, this);
- }
-
- @Override
- public void handleElementEnd(String localName, HandlerState state) {
- if (localName.equals(AUTHOR)) {
- state.getFeed().setAuthor(state.getContentBuf().toString());
- }
-
- }
+ }
}