Package com.rometools.rome.feed.synd

Examples of com.rometools.rome.feed.synd.SyndFeed


      if (xmlString == null) {
        throw new FeedException("Input string is null for url " + feedUrl);
      }
      xmlString = FeedUtils.replaceHtmlEntitiesWithNumericEntities(xmlString);
      InputSource source = new InputSource(new StringReader(xmlString));
      SyndFeed rss = new SyndFeedInput().build(source);
      handleForeignMarkup(rss);

      fetchedFeed.setTitle(rss.getTitle());
      feed.setPushHub(findHub(rss));
      feed.setPushTopic(findSelf(rss));
      feed.setUrl(feedUrl);
      feed.setLink(rss.getLink());
      List<SyndEntry> items = rss.getEntries();

      for (SyndEntry item : items) {
        FeedEntry entry = new FeedEntry();

        String guid = item.getUri();
        if (StringUtils.isBlank(guid)) {
          guid = item.getLink();
        }
        if (StringUtils.isBlank(guid)) {
          // no guid and no link, skip entry
          continue;
        }
        entry.setGuid(FeedUtils.truncate(guid, 2048));
        entry.setUpdated(validateDate(getEntryUpdateDate(item), true));
        entry.setUrl(FeedUtils.truncate(FeedUtils.toAbsoluteUrl(item.getLink(), feed.getLink(), feed.getUrlAfterRedirect()), 2048));

        // if link is empty but guid is used as url
        if (StringUtils.isBlank(entry.getUrl()) && StringUtils.startsWith(entry.getGuid(), "http")) {
          entry.setUrl(entry.getGuid());
        }

        FeedEntryContent content = new FeedEntryContent();
        content.setContent(getContent(item));
        content.setTitle(getTitle(item));
        content.setAuthor(StringUtils.trimToNull(item.getAuthor()));
        SyndEnclosure enclosure = Iterables.getFirst(item.getEnclosures(), null);
        if (enclosure != null) {
          content.setEnclosureUrl(FeedUtils.truncate(enclosure.getUrl(), 2048));
          content.setEnclosureType(enclosure.getType());
        }
        entry.setContent(content);

        entries.add(entry);
      }
      Date lastEntryDate = null;
      Date publishedDate = validateDate(rss.getPublishedDate(), false);
      if (!entries.isEmpty()) {
        List<Long> sortedTimestamps = FeedUtils.getSortedTimestamps(entries);
        Long timestamp = sortedTimestamps.get(0);
        lastEntryDate = new Date(timestamp);
        publishedDate = (publishedDate == null || publishedDate.before(lastEntryDate)) ? lastEntryDate : publishedDate;
View Full Code Here


        syndEntry.setSource(createSource(item.getSource()));
        return syndEntry;
    }

    protected SyndFeed createSource(final Source source) {
        SyndFeed feed = null;
        if (source != null) {
            feed = new SyndFeedImpl();
            feed.setLink(source.getUrl());
            feed.setUri(source.getUrl());
            feed.setTitle(source.getValue());
        }
        return feed;
    }
View Full Code Here

        // Convert source element Feed into SyndFeed and assign as SyndEntry
        // source
        final Feed source = entry.getSource();
        if (source != null) {
            final SyndFeed syndSource = new SyndFeedImpl(source);
            syndEntry.setSource(syndSource);
        }

        return syndEntry;
    }
View Full Code Here

        final List<Element> foreignMarkup = sEntry.getForeignMarkup();
        if (!foreignMarkup.isEmpty()) {
            aEntry.setForeignMarkup(foreignMarkup);
        }

        final SyndFeed sSource = sEntry.getSource();
        if (sSource != null) {
            final Feed aSource = (Feed) sSource.createWireFeed(getType());
            aEntry.setSource(aSource);
        }
        return aEntry;
    }
View Full Code Here

    public TestSyndFeedAtom10Ruby() {
        super("atom_1.0_ruby.xml");
    }

    public void testFeedURI() throws Exception {
        final SyndFeed feed = getSyndFeed(false);
        assertEquals("http://www.example.com/blog", feed.getUri());
    }
View Full Code Here

        final SyndFeed feed = getSyndFeed(false);
        assertEquals("http://www.example.com/blog", feed.getUri());
    }

    public void testEntry1URI() throws Exception {
        final SyndFeed feed = getSyndFeed(false);
        final SyndEntry entry = feed.getEntries().get(0);
        assertEquals("http://www.example.com/blog/bloggy-blog", entry.getLink());
    }
View Full Code Here

        final SyndEntry entry = feed.getEntries().get(0);
        assertEquals("http://www.example.com/blog/bloggy-blog", entry.getLink());
    }

    public void testEntry2URI() throws Exception {
        final SyndFeed feed = getSyndFeed(false);
        final SyndEntry entry = feed.getEntries().get(1);
        assertEquals("http://www.example.com/frog/froggy-frog", entry.getLink());
    }
View Full Code Here

    public TestSyndFeedAtom10Bray() {
        super("atom_1.0_bray.xml");
    }

    public void testFeedURI() throws Exception {
        final SyndFeed feed = getSyndFeed(false);
        assertEquals("Bad URL: " + feed.getUri(), "http://www.example.com/blog", feed.getUri());
    }
View Full Code Here

        final SyndFeed feed = getSyndFeed(false);
        assertEquals("Bad URL: " + feed.getUri(), "http://www.example.com/blog", feed.getUri());
    }

    public void testEntry1URI() throws Exception {
        final SyndFeed feed = getSyndFeed(false);
        final SyndEntry entry = feed.getEntries().get(0);
        assertEquals("Bad URL: " + entry.getLink(), "http://www.example.com/blog/2006-11-05/entry1", entry.getLink());
    }
View Full Code Here

        final SyndEntry entry = feed.getEntries().get(0);
        assertEquals("Bad URL: " + entry.getLink(), "http://www.example.com/blog/2006-11-05/entry1", entry.getLink());
    }

    public void testEntry2URI() throws Exception {
        final SyndFeed feed = getSyndFeed(false);
        final SyndEntry entry = feed.getEntries().get(1);
        assertEquals("Bad URL: " + entry.getLink(), "http://www.example.com/blog/2006-11-02/entry2", entry.getLink());
    }
View Full Code Here

TOP

Related Classes of com.rometools.rome.feed.synd.SyndFeed

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.