Class NewsXMLParser


  • public class NewsXMLParser
    extends Object
    Parse out the news.xml file which is in Atom format (RFC4287). We use the XML parser from the UPnP library.
    Since:
    0.9.17
    • Constructor Detail

    • Method Detail

      • setXHTMLMode

        public void setXHTMLMode​(NewsXMLParser.XHTMLMode mode)
        Sets the action taken when encountering a non-whitelisted XHTML element in the feed content. Must be set before parse(). Default REMOVE_ELEMENT.
      • parse

        public Node parse​(File file)
                   throws IOException
        Process the XML file.
        Parameters:
        file - XML content only. Any su3 or gunzip handling must have already happened.
        Returns:
        the root node
        Throws:
        IOException - on any parse error
      • parse

        public Node parse​(InputStream in)
                   throws IOException
        Process the XML input stream.
        Parameters:
        in - XML content only. Any su3 or gunzip handling must have already happened.
        Returns:
        the root node
        Throws:
        IOException - on any parse error
      • getEntries

        public List<NewsEntry> getEntries()
        The news entries. Must call parse() first.
        Returns:
        sorted, newest first, null if parse failed
      • getMetadata

        public NewsMetadata getMetadata()
        The news metatdata. Must call parse() first.
        Returns:
        null if parse failed
      • getCRLEntries

        public List<CRLEntry> getCRLEntries()
        The news CRL entries. Must call parse() first.
        Returns:
        unsorted, null if none
        Since:
        0.9.26
      • getBlocklistEntries

        public BlocklistEntries getBlocklistEntries()
        The blocklist entries. Must call parse() first.
        Returns:
        null if none
        Since:
        0.9.28
      • getNodes

        public static List<Node> getNodes​(Node node,
                                          String name)
        Helper to get all Nodes matching the name
        Returns:
        non-null
      • main

        public static void main​(String[] args)