Java Code Examples for com.rometools.rome.feed.synd.SyndEntry#getUri()
The following examples show how to use
com.rometools.rome.feed.synd.SyndEntry#getUri() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ConverterForRSS10.java From rome with Apache License 2.0 | 6 votes |
@Override protected Item createRSSItem(final SyndEntry sEntry) { final Item item = super.createRSSItem(sEntry); final SyndContent desc = sEntry.getDescription(); if (desc != null) { item.setDescription(createItemDescription(desc)); } final List<SyndContent> contents = sEntry.getContents(); if (Lists.isNotEmpty(contents)) { item.setContent(createItemContent(contents.get(0))); } final String uri = sEntry.getUri(); if (uri != null) { item.setUri(uri); } return item; }
Example 2
Source File: ConverterForRSS090.java From rome with Apache License 2.0 | 4 votes |
protected Item createRSSItem(final SyndEntry sEntry) { final Item item = new Item(); item.setModules(ModuleUtils.cloneModules(sEntry.getModules())); item.setTitle(sEntry.getTitle()); item.setLink(sEntry.getLink()); final List<Element> foreignMarkup = sEntry.getForeignMarkup(); if (!foreignMarkup.isEmpty()) { item.setForeignMarkup(foreignMarkup); } item.setSource(createSource(sEntry.getSource())); final String uri = sEntry.getUri(); if (uri != null) { item.setUri(uri); } return item; }
Example 3
Source File: FeedParserBolt.java From storm-crawler with Apache License 2.0 | 4 votes |
private List<Outlink> parseFeed(String url, byte[] content, Metadata parentMetadata) throws Exception { List<Outlink> links = new ArrayList<>(); SyndFeed feed = null; try (ByteArrayInputStream is = new ByteArrayInputStream(content)) { SyndFeedInput input = new SyndFeedInput(); feed = input.build(new InputSource(is)); } URL sURL = new URL(url); List<SyndEntry> entries = feed.getEntries(); for (SyndEntry entry : entries) { String targetURL = entry.getLink(); // targetURL can be null?!? // e.g. feed does not use links but guid if (StringUtils.isBlank(targetURL)) { targetURL = entry.getUri(); if (StringUtils.isBlank(targetURL)) { continue; } } Outlink newLink = filterOutlink(sURL, targetURL, parentMetadata); if (newLink == null) continue; String title = entry.getTitle(); if (StringUtils.isNotBlank(title)) { newLink.getMetadata().setValue("feed.title", title.trim()); } Date publishedDate = entry.getPublishedDate(); if (publishedDate != null) { // filter based on the published date if (filterHoursSincePub != -1) { Calendar rightNow = Calendar.getInstance(); rightNow.add(Calendar.HOUR, -filterHoursSincePub); if (publishedDate.before(rightNow.getTime())) { LOG.info( "{} has a published date {} which is more than {} hours old", targetURL, publishedDate.toString(), filterHoursSincePub); continue; } } newLink.getMetadata().setValue("feed.publishedDate", publishedDate.toString()); } SyndContent description = entry.getDescription(); if (description != null && StringUtils.isNotBlank(description.getValue())) { newLink.getMetadata().setValue("feed.description", description.getValue()); } links.add(newLink); } return links; }