Package org.ametys.plugins.syndication
Class FeedGenerator
- java.lang.Object
-
- org.apache.avalon.framework.logger.AbstractLogEnabled
-
- org.apache.cocoon.xml.AbstractXMLProducer
-
- org.apache.cocoon.generation.AbstractGenerator
-
- org.apache.cocoon.generation.ServiceableGenerator
-
- org.ametys.plugins.syndication.FeedGenerator
-
- All Implemented Interfaces:
Poolable,Recyclable,Disposable,Component,LogEnabled,Serviceable,Generator,SitemapModelComponent,XMLProducer
public class FeedGenerator extends ServiceableGenerator
Generates the contents of an external RSS of Atom feed.
This implementation is based on the ROME API.
-
-
Field Summary
Fields Modifier and Type Field Description protected FeedCache_feedCacheThe feed cacheprotected RenderingContextHandler_renderingContextThe rendering context handler.-
Fields inherited from class org.apache.cocoon.generation.ServiceableGenerator
manager
-
Fields inherited from class org.apache.cocoon.generation.AbstractGenerator
objectModel, parameters, resolver, source
-
Fields inherited from class org.apache.cocoon.xml.AbstractXMLProducer
contentHandler, EMPTY_CONTENT_HANDLER, lexicalHandler, xmlConsumer
-
-
Constructor Summary
Constructors Constructor Description FeedGenerator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void_addAttribute(AttributesImpl atts, String name, Object value)private boolean_checkForInfiniteLoop(String src)private String_enclosureName(String url)private void_saxEnclosures(com.rometools.rome.feed.synd.SyndEntry entry)private void_saxErrorFeed(String errorName, String url, String name, String messageError)private void_saxFeeds(com.rometools.rome.feed.synd.SyndFeed feed, long length, String url, Boolean isCustom, Boolean isSelected)private void_saxLength(long length)private void_saxMediaContent(com.rometools.modules.mediarss.types.MediaContent content, boolean inGroup)private void_saxMediaRSS(com.rometools.rome.feed.synd.SyndEntry entry)voidgenerate()private voidsaxMediaMetadata(com.rometools.modules.mediarss.types.Metadata metadata)voidservice(ServiceManager serviceManager)-
Methods inherited from class org.apache.cocoon.generation.ServiceableGenerator
dispose
-
Methods inherited from class org.apache.cocoon.generation.AbstractGenerator
recycle, setup
-
Methods inherited from class org.apache.cocoon.xml.AbstractXMLProducer
setConsumer, setContentHandler, setLexicalHandler
-
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.cocoon.xml.XMLProducer
setConsumer
-
-
-
-
Field Detail
-
_feedCache
protected FeedCache _feedCache
The feed cache
-
_renderingContext
protected RenderingContextHandler _renderingContext
The rendering context handler.
-
-
Constructor Detail
-
FeedGenerator
public FeedGenerator()
-
-
Method Detail
-
service
public void service(ServiceManager serviceManager) throws ServiceException
- Specified by:
servicein interfaceServiceable- Overrides:
servicein classServiceableGenerator- Throws:
ServiceException
-
generate
public void generate() throws IOException, SAXException, ProcessingException
-
_saxErrorFeed
private void _saxErrorFeed(String errorName, String url, String name, String messageError) throws SAXException
- Throws:
SAXException
-
_saxFeeds
private void _saxFeeds(com.rometools.rome.feed.synd.SyndFeed feed, long length, String url, Boolean isCustom, Boolean isSelected) throws SAXException
- Throws:
SAXException
-
_saxEnclosures
private void _saxEnclosures(com.rometools.rome.feed.synd.SyndEntry entry) throws SAXException
- Throws:
SAXException
-
_saxMediaRSS
private void _saxMediaRSS(com.rometools.rome.feed.synd.SyndEntry entry) throws SAXException
- Throws:
SAXException
-
_saxMediaContent
private void _saxMediaContent(com.rometools.modules.mediarss.types.MediaContent content, boolean inGroup) throws SAXException
- Throws:
SAXException
-
saxMediaMetadata
private void saxMediaMetadata(com.rometools.modules.mediarss.types.Metadata metadata) throws SAXException
- Throws:
SAXException
-
_checkForInfiniteLoop
private boolean _checkForInfiniteLoop(String src)
-
_enclosureName
private String _enclosureName(String url)
-
_addAttribute
private void _addAttribute(AttributesImpl atts, String name, Object value)
-
_saxLength
private void _saxLength(long length) throws SAXException
- Throws:
SAXException
-
-