com.sun.syndication.io
Class FeedInput

java.lang.Object
  extended bycom.sun.syndication.io.FeedInput

public class FeedInput
extends java.lang.Object

Parses an XML document (File, InputStream, Reader, W3C SAX InputSource, W3C DOM Document or JDom DOcument) into an AbstractFeed (RSS/Atom).

It accepts all flavors of RSS (0.90, 0.91, 0.92, 0.93, 0.94, 1.0 and 2.0) and Atom 0.3 feeds. Parsers are plugable (they must implement the FeedParser interface).

The FeedInput useds liberal parsers.

Author:
Alejandro Abdelnur

Constructor Summary
FeedInput(boolean validate)
          Creates a FeedInput instance.
 
Method Summary
 AbstractFeed build(org.w3c.dom.Document document)
          Builds an AbstractFeed (RSS or Atom) from an W3C DOM document.
 AbstractFeed build(org.jdom.Document document)
          Builds an AbstractFeed (RSS or Atom) from an JDOM document.
 AbstractFeed build(java.io.File file)
          Builds an AbstractFeed (RSS or Atom) from a file.
 AbstractFeed build(org.xml.sax.InputSource is)
          Builds an AbstractFeed (RSS or Atom) from an W3C SAX InputSource.
 AbstractFeed build(java.io.InputStream is)
          Builds an AbstractFeed (RSS or Atom) from an InputStream.
 AbstractFeed build(java.io.Reader reader)
          Builds an AbstractFeed (RSS or Atom) from an Reader.
static java.util.List getSupportedFeedTypes()
          Returns the list of supported input feed types.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FeedInput

public FeedInput(boolean validate)
Creates a FeedInput instance.

Parameters:
validate - indicates if the input should be validated. NOT IMPLEMENTED YET (validation does not happen)
Method Detail

getSupportedFeedTypes

public static java.util.List getSupportedFeedTypes()
Returns the list of supported input feed types.

Returns:
a list of String elements with the supported input feed types.
See Also:
for details on the format of these strings.


build

public AbstractFeed build(java.io.File file)
                   throws java.io.FileNotFoundException,
                          java.io.IOException,
                          java.lang.IllegalArgumentException,
                          FeedException
Builds an AbstractFeed (RSS or Atom) from a file.

NOTE: This method delages to the 'AsbtractFeed FeedInput#build(org.jdom.Document)'.

Parameters:
file - file to read to create the AbstractFeed.
Returns:
the AbstractFeed read from the file.
Throws:
java.io.FileNotFoundException - thrown if the file could not be found.
java.io.IOException - thrown if there is problem reading the file.
java.lang.IllegalArgumentException - thrown if feed type could not be understood by any of the underlying parsers.
FeedException - if the feed could not be parsed

build

public AbstractFeed build(java.io.InputStream is)
                   throws java.lang.IllegalArgumentException,
                          FeedException
Builds an AbstractFeed (RSS or Atom) from an InputStream.

NOTE: This method delages to the 'AsbtractFeed FeedInput#build(org.jdom.Document)'.

Parameters:
is - InputStream to read to create the AbstractFeed.
Returns:
the AbstractFeed read from the InputStream.
Throws:
java.lang.IllegalArgumentException - thrown if feed type could not be understood by any of the underlying parsers.
FeedException - if the feed could not be parsed

build

public AbstractFeed build(java.io.Reader reader)
                   throws java.lang.IllegalArgumentException,
                          FeedException
Builds an AbstractFeed (RSS or Atom) from an Reader.

NOTE: This method delages to the 'AsbtractFeed FeedInput#build(org.jdom.Document)'.

Parameters:
reader - Reader to read to create the AbstractFeed.
Returns:
the AbstractFeed read from the Reader.
Throws:
java.lang.IllegalArgumentException - thrown if feed type could not be understood by any of the underlying parsers.
FeedException - if the feed could not be parsed

build

public AbstractFeed build(org.xml.sax.InputSource is)
                   throws java.lang.IllegalArgumentException,
                          FeedException
Builds an AbstractFeed (RSS or Atom) from an W3C SAX InputSource.

NOTE: This method delages to the 'AsbtractFeed FeedInput#build(org.jdom.Document)'.

Parameters:
is - W3C SAX InputSource to read to create the AbstractFeed.
Returns:
the AbstractFeed read from the W3C SAX InputSource.
Throws:
java.lang.IllegalArgumentException - thrown if feed type could not be understood by any of the underlying parsers.
FeedException - if the feed could not be parsed

build

public AbstractFeed build(org.w3c.dom.Document document)
                   throws java.lang.IllegalArgumentException,
                          FeedException
Builds an AbstractFeed (RSS or Atom) from an W3C DOM document.

NOTE: This method delages to the 'AsbtractFeed FeedInput#build(org.jdom.Document)'.

Parameters:
document - W3C DOM document to read to create the AbstractFeed.
Returns:
the AbstractFeed read from the W3C DOM document.
Throws:
java.lang.IllegalArgumentException - thrown if feed type could not be understood by any of the underlying parsers.
FeedException - if the feed could not be parsed

build

public AbstractFeed build(org.jdom.Document document)
                   throws java.lang.IllegalArgumentException,
                          FeedException
Builds an AbstractFeed (RSS or Atom) from an JDOM document.

NOTE: All other build methods delegate to this method.

Parameters:
document - JDOM document to read to create the AbstractFeed.
Returns:
the AbstractFeed read from the JDOM document.
Throws:
java.lang.IllegalArgumentException - thrown if feed type could not be understood by any of the underlying parsers.
FeedException - if the feed could not be parsed


Copyright © 2004 Sun Microsystems. All Rights Reserved.