org.springframework.web.servlet.view.feed
Class AbstractAtomFeedView
java.lang.Object
  
org.springframework.context.support.ApplicationObjectSupport
      
org.springframework.web.context.support.WebApplicationObjectSupport
          
org.springframework.web.servlet.view.AbstractView
              
org.springframework.web.servlet.view.feed.AbstractFeedView<com.sun.syndication.feed.atom.Feed>
                  
org.springframework.web.servlet.view.feed.AbstractAtomFeedView
- All Implemented Interfaces: 
 - BeanNameAware, ApplicationContextAware, ServletContextAware, View
 
public abstract class AbstractAtomFeedView
- extends AbstractFeedView<com.sun.syndication.feed.atom.Feed>
 
Abstract superclass for Atom Feed views, using java.net's
 ROME package.
 
Application-specific view classes will extend this class.
 The view will be held in the subclass itself, not in a template.
 
Main entry points are the AbstractFeedView.buildFeedMetadata(Map, WireFeed, HttpServletRequest) and
 buildFeedEntries(Map, HttpServletRequest, HttpServletResponse).
 
Thanks to Jettro Coenradie and Sergio Bossa for the original feed view prototype!
- Since:
 
  - 3.0
 
- Author:
 
  - Arjen Poutsma, Juergen Hoeller
 
- See Also:
 AbstractFeedView.buildFeedMetadata(Map, WireFeed, HttpServletRequest), 
buildFeedEntries(Map, HttpServletRequest, HttpServletResponse), 
Atom Syndication Format
 
 
 
 
 
| 
Method Summary | 
protected  void | 
buildFeedEntries(Map<String,Object> model,
                 com.sun.syndication.feed.atom.Feed feed,
                 HttpServletRequest request,
                 HttpServletResponse response)
 
          Invokes buildFeedEntries(Map, HttpServletRequest, HttpServletResponse)
 to get a list of feed entries. | 
protected abstract  List<com.sun.syndication.feed.atom.Entry> | 
buildFeedEntries(Map<String,Object> model,
                 HttpServletRequest request,
                 HttpServletResponse response)
 
          Subclasses must implement this method to build feed entries, given the model. | 
protected  com.sun.syndication.feed.atom.Feed | 
newFeed()
 
          Create a new Feed instance to hold the entries. | 
 void | 
setFeedType(String feedType)
 
          Sets the Rome feed type to use. | 
 
 
| Methods inherited from class org.springframework.web.servlet.view.AbstractView | 
addStaticAttribute, createRequestContext, createTemporaryOutputStream, exposeModelAsRequestAttributes, generatesDownloadContent, getAttributesMap, getBeanName, getContentType, getRequestContextAttribute, getStaticAttributes, prepareResponse, render, setAttributes, setAttributesCSV, setAttributesMap, setBeanName, setContentType, setRequestContextAttribute, toString, writeToResponse | 
 
 
 
 
DEFAULT_FEED_TYPE
public static final String DEFAULT_FEED_TYPE
- See Also:
 - Constant Field Values
 
AbstractAtomFeedView
public AbstractAtomFeedView()
setFeedType
public void setFeedType(String feedType)
- Sets the Rome feed type to use.
 
Defaults to Atom 1.0.
- See Also:
 WireFeed.setFeedType(String), 
DEFAULT_FEED_TYPE
 
 
newFeed
protected com.sun.syndication.feed.atom.Feed newFeed()
- Create a new Feed instance to hold the entries.
 
By default returns an Atom 1.0 feed, but the subclass can specify any Feed.
- Specified by:
 newFeed in class AbstractFeedView<com.sun.syndication.feed.atom.Feed>
 
- Returns:
 - the newly created Feed instance
 - See Also:
 setFeedType(String)
 
 
buildFeedEntries
protected final void buildFeedEntries(Map<String,Object> model,
                                      com.sun.syndication.feed.atom.Feed feed,
                                      HttpServletRequest request,
                                      HttpServletResponse response)
                               throws Exception
- Invokes 
buildFeedEntries(Map, HttpServletRequest, HttpServletResponse)
 to get a list of feed entries.
- Specified by:
 buildFeedEntries in class AbstractFeedView<com.sun.syndication.feed.atom.Feed>
 
- Parameters:
 model - the model Mapfeed - the feed to add entries torequest - in case we need locale etc. Shouldn't look at attributes.response - in case we need to set cookies. Shouldn't write to it.
- Throws:
 Exception - any exception that occured during building
 
 
buildFeedEntries
protected abstract List<com.sun.syndication.feed.atom.Entry> buildFeedEntries(Map<String,Object> model,
                                                                              HttpServletRequest request,
                                                                              HttpServletResponse response)
                                                                       throws Exception
- Subclasses must implement this method to build feed entries, given the model.
 
Note that the passed-in HTTP response is just supposed to be used for
 setting cookies or other HTTP headers. The built feed itself will automatically
 get written to the response after this method returns.
- Parameters:
 model - the model Maprequest - in case we need locale etc. Shouldn't look at attributes.response - in case we need to set cookies. Shouldn't write to it.
- Returns:
 - the feed entries to be added to the feed
 - Throws:
 Exception - any exception that occured during document building- See Also:
 Entry