From: Santi B. <san...@us...> - 2008-01-12 00:46:42
|
Update of /cvsroot/babeldoc/babeldoc/modules/syndication/src/com/babeldoc/syndication/pipeline/stage In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv23392/modules/syndication/src/com/babeldoc/syndication/pipeline/stage Added Files: SyndicationReaderPipelineStage.java Log Message: Syndication module added. Documentation start updating process. --- NEW FILE: SyndicationReaderPipelineStage.java --- /** * */ package com.babeldoc.syndication.pipeline.stage; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; import java.util.ArrayList; import java.util.Collection; import com.babeldoc.core.option.ConfigOption; import com.babeldoc.core.option.IConfigOptionType; import com.babeldoc.core.pipeline.PipelineDocument; import com.babeldoc.core.pipeline.PipelineException; import com.babeldoc.core.pipeline.PipelineStage; import com.babeldoc.core.pipeline.PipelineStageInfo; import com.babeldoc.core.pipeline.PipelineStageResult; import com.sun.syndication.feed.synd.SyndFeed; import com.sun.syndication.io.FeedException; import com.sun.syndication.io.SyndFeedInput; import com.sun.syndication.io.XmlReader; /** * @author santi * */ public class SyndicationReaderPipelineStage extends PipelineStage { /* configuration options */ public static final String URL = "url"; /** * */ public SyndicationReaderPipelineStage() { super(new PipelineStageInfo() { public String getName() { return "SyndicationReader"; } public String getDescription() { return "Syndication feed pipeline reader"; } public Collection getTypeSpecificOptions() { Collection options = new ArrayList(); options.add(new ConfigOption("URL", IConfigOptionType.URL, null, true, "URL to read from")); return options; } }); } /* * (non-Javadoc) * * @see com.babeldoc.core.pipeline.PipelineStage#process() */ public PipelineStageResult[] process() throws PipelineException { PipelineDocument newDoc; String feedUrl = this.getOptions(URL); SyndFeedInput input = new SyndFeedInput(); SyndFeed feed = null; try { feed = input.build(new XmlReader(new URL(feedUrl))); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (FeedException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } newDoc = new PipelineDocument(feed.toString()); newDoc.put(PipelineDocument.NAME, feedUrl); return super.processHelper(newDoc); } } |