Interface XMLOutput

  • All Known Implementing Classes:
    Dom4JXMLOutput, OutputStreamXMLOutput

    @CleanupObligation
    public interface XMLOutput
    Interface to generate an XML document in some form. E.g., writing it to a stream, generating SAX events, etc.
    Author:
    David Hovemeyer
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void addAttribute​(java.lang.String name, java.lang.String value)
      Add an attribute to a started tag.
      void beginDocument()
      Begin the XML document.
      void closeTag​(java.lang.String tagName)
      Close tag with given name.
      void finish()
      Finish writing XML output, closing any underlying resources (such as output streams).
      void openCloseTag​(java.lang.String tagName)
      Open and close tag with given name.
      void openCloseTag​(java.lang.String tagName, XMLAttributeList attributeList)
      Open and close tag with given name and given attributes.
      void openTag​(java.lang.String tagName)
      Open a tag with given name.
      void openTag​(java.lang.String tagName, XMLAttributeList attributeList)
      Open a tag with given name and given attributes.
      void startTag​(java.lang.String tagName)
      Start a tag, with the intention of adding attributes.
      void stopTag​(boolean close)
      End a started tag.
      void writeCDATA​(java.lang.String cdata)
      Write a CDATA section to the XML document.
      void writeText​(java.lang.String text)
      Write text to the XML document.
    • Method Detail

      • beginDocument

        void beginDocument()
                    throws java.io.IOException
        Begin the XML document.
        Throws:
        java.io.IOException
      • openTag

        void openTag​(java.lang.String tagName)
              throws java.io.IOException
        Open a tag with given name.
        Parameters:
        tagName - the tag name
        Throws:
        java.io.IOException
      • openTag

        void openTag​(java.lang.String tagName,
                     XMLAttributeList attributeList)
              throws java.io.IOException
        Open a tag with given name and given attributes.
        Parameters:
        tagName - the tag name
        attributeList - the attributes
        Throws:
        java.io.IOException
      • startTag

        void startTag​(java.lang.String tagName)
               throws java.io.IOException
        Start a tag, with the intention of adding attributes. Must be followed by stopTag after zero or more addAttribute calls.
        Parameters:
        tagName - the tag name
        Throws:
        java.io.IOException
      • addAttribute

        void addAttribute​(java.lang.String name,
                          java.lang.String value)
                   throws java.io.IOException
        Add an attribute to a started tag. Must follow a call to startTag.
        Parameters:
        name - the attribute name.
        value - the attribute value, unescaped.
        Throws:
        java.io.IOException
      • stopTag

        void stopTag​(boolean close)
              throws java.io.IOException
        End a started tag. Must follow a call to startTag.
        Parameters:
        close - true if the element has no content.
        Throws:
        java.io.IOException
      • openCloseTag

        void openCloseTag​(java.lang.String tagName)
                   throws java.io.IOException
        Open and close tag with given name.
        Parameters:
        tagName - the tag name
        Throws:
        java.io.IOException
      • openCloseTag

        void openCloseTag​(java.lang.String tagName,
                          XMLAttributeList attributeList)
                   throws java.io.IOException
        Open and close tag with given name and given attributes.
        Parameters:
        tagName - the tag name
        attributeList - the attributes
        Throws:
        java.io.IOException
      • closeTag

        void closeTag​(java.lang.String tagName)
               throws java.io.IOException
        Close tag with given name.
        Parameters:
        tagName - the tag name
        Throws:
        java.io.IOException
      • writeText

        void writeText​(java.lang.String text)
                throws java.io.IOException
        Write text to the XML document. XML metacharacters are automatically escaped.
        Parameters:
        text - the text to write
        Throws:
        java.io.IOException
      • writeCDATA

        void writeCDATA​(java.lang.String cdata)
                 throws java.io.IOException
        Write a CDATA section to the XML document. The characters are not escaped in any way.
        Parameters:
        cdata - the character data to write
        Throws:
        java.io.IOException
      • finish

        @DischargesObligation
        void finish()
             throws java.io.IOException
        Finish writing XML output, closing any underlying resources (such as output streams). A call to this method should always be made, even if one of the XML-generation methods throws an exception. Therefore, a call to this method should be performed in a finally block.
        Throws:
        java.io.IOException