/** * Invokes {@link #buildFeedItems(Map, HttpServletRequest, HttpServletResponse)} * to get a list of feed items. */ @Override protected final void buildFeedEntries(Map<String, Object> model, Channel channel, HttpServletRequest request, HttpServletResponse response) throws Exception { List<Item> items = buildFeedItems(model, request, response); channel.setItems(items); }
public AbstractRssFeedView() { setContentType(MediaType.APPLICATION_RSS_XML_VALUE); }
/** * Sets meta data for the whole RSS feed * * @param model RSS model * @param feed RSS feed * @param request http request */ @Override protected void buildFeedMetadata(Map<String, Object> model, Channel feed, HttpServletRequest request) { String title = (String)model.get("feedTitle"); if (title == null) { title = DEFAULT_FEED_TITLE; } String description = (String)model.get("feedDescription"); if (description == null) { description = DEFAULT_FEED_DESCRIPTION; } String link = buildURL(request); String suffix = (String)model.get("urlSuffix"); if (suffix != null) { link += suffix; } feed.setTitle(title); feed.setDescription(description); feed.setLink(link); super.buildFeedMetadata(model, feed, request); }
@Test public void render() throws Exception { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); Map<String, String> model = new LinkedHashMap<>(); model.put("2", "This is entry 2"); model.put("1", "This is entry 1"); view.render(model, request, response); assertEquals("Invalid content-type", "application/rss+xml", response.getContentType()); String expected = "<rss version=\"2.0\">" + "<channel><title>Test Feed</title>" + "<link>http://example.com</link>" + "<description>Test feed description</description>" + "<item><title>2</title><description>This is entry 2</description></item>" + "<item><title>1</title><description>This is entry 1</description></item>" + "</channel></rss>"; assertThat(response.getContentAsString(), isSimilarTo(expected).ignoreWhitespace()); }
@Override protected void buildFeedMetadata(Map<String, Object> model, com.rometools.rome.feed.rss.Channel feed, HttpServletRequest request) { feed.setTitle(title); feed.setDescription(description); feed.setLink((String) model.get(RssViewerConstants.RSS_LINK)); feed.setTtl(ttl); feed.setEncoding("UTF-8"); feed.setCopyright(copyright); super.buildFeedMetadata(model, feed, request); }
/** * Invokes {@link #buildFeedItems(Map, HttpServletRequest, HttpServletResponse)} * to get a list of feed items. */ @Override protected final void buildFeedEntries(Map<String, Object> model, Channel channel, HttpServletRequest request, HttpServletResponse response) throws Exception { List<Item> items = buildFeedItems(model, request, response); channel.setItems(items); }
public AbstractRssFeedView() { setContentType(MediaType.APPLICATION_RSS_XML_VALUE); }
/** * Set meta data for all RSS feed * * @param newsComponents components of the RSS feed * @param feed news feed * @param request http request */ @Override protected void buildFeedMetadata(Map<String, Object> newsComponents, Channel feed, HttpServletRequest request) { Component component = (Component)newsComponents.get("forumComponent"); String feedTitle = DEFAULT_FEED_TITLE; String feedDescription = DEFAULT_FEED_DESCRIPTION; if (component != null) { feedTitle = component.getName(); feedDescription = component.getDescription(); } feed.setTitle(feedTitle); feed.setDescription(feedDescription); feed.setLink(buildURL(request)); super.buildFeedMetadata(newsComponents, feed, request); }
/** * Invokes {@link #buildFeedItems(Map, HttpServletRequest, HttpServletResponse)} * to get a list of feed items. */ @Override protected final void buildFeedEntries(Map<String, Object> model, Channel channel, HttpServletRequest request, HttpServletResponse response) throws Exception { List<Item> items = buildFeedItems(model, request, response); channel.setItems(items); }
public AbstractRssFeedView() { setContentType(MediaType.APPLICATION_RSS_XML_VALUE); }