Class AbstractAtomFeedParser<T>

  • Type Parameters:
    T - feed type
    Direct Known Subclasses:
    AtomFeedParser

    @Beta
    public abstract class AbstractAtomFeedParser<T>
    extends java.lang.Object
    Beta
    Abstract base class for an Atom feed parser when the feed type is known in advance.

    Implementation is not thread-safe.

    Since:
    1.0
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected AbstractAtomFeedParser​(XmlNamespaceDictionary namespaceDictionary, org.xmlpull.v1.XmlPullParser parser, java.io.InputStream inputStream, java.lang.Class<T> feedClass)  
    • Field Detail

      • feedParsed

        private boolean feedParsed
        Whether the feed has been parsed.
      • parser

        private final org.xmlpull.v1.XmlPullParser parser
        XML pull parser to use.
      • inputStream

        private final java.io.InputStream inputStream
        Input stream to read.
      • feedClass

        private final java.lang.Class<T> feedClass
        Feed class to parse.
    • Constructor Detail

      • AbstractAtomFeedParser

        protected AbstractAtomFeedParser​(XmlNamespaceDictionary namespaceDictionary,
                                         org.xmlpull.v1.XmlPullParser parser,
                                         java.io.InputStream inputStream,
                                         java.lang.Class<T> feedClass)
        Parameters:
        namespaceDictionary - XML namespace dictionary
        parser - XML pull parser to use
        inputStream - input stream to read
        feedClass - feed class to parse
        Since:
        1.5
    • Method Detail

      • getParser

        public final org.xmlpull.v1.XmlPullParser getParser()
        Returns the XML pull parser to use.
        Since:
        1.5
      • getInputStream

        public final java.io.InputStream getInputStream()
        Returns the input stream to read.
        Since:
        1.5
      • getFeedClass

        public final java.lang.Class<T> getFeedClass()
        Returns the feed class to parse.
        Since:
        1.5
      • getNamespaceDictionary

        public final XmlNamespaceDictionary getNamespaceDictionary()
        Returns the XML namespace dictionary.
        Since:
        1.5
      • parseFeed

        public T parseFeed()
                    throws java.io.IOException,
                           org.xmlpull.v1.XmlPullParserException
        Parse the feed and return a new parsed instance of the feed type. This method can be skipped if all you want are the items.
        Throws:
        java.io.IOException - I/O exception
        org.xmlpull.v1.XmlPullParserException - XML pull parser exception
      • parseNextEntry

        public java.lang.Object parseNextEntry()
                                        throws java.io.IOException,
                                               org.xmlpull.v1.XmlPullParserException
        Parse the next item in the feed and return a new parsed instance of the item type. If there is no item to parse, it will return null and automatically close the parser (in which case there is no need to call close().
        Throws:
        java.io.IOException - I/O exception
        org.xmlpull.v1.XmlPullParserException - XML pull parser exception
      • close

        public void close()
                   throws java.io.IOException
        Closes the underlying parser.
        Throws:
        java.io.IOException
      • parseEntryInternal

        protected abstract java.lang.Object parseEntryInternal()
                                                        throws java.io.IOException,
                                                               org.xmlpull.v1.XmlPullParserException
        Parses a single entry.
        Returns:
        object representing the entry
        Throws:
        java.io.IOException - I/O exception
        org.xmlpull.v1.XmlPullParserException - XML pull parser exception