Interface HierarchicalStreamWriter

    • Method Detail

      • startNode

        void startNode​(java.lang.String name)
      • addAttribute

        void addAttribute​(java.lang.String name,
                          java.lang.String value)
      • setValue

        void setValue​(java.lang.String text)
        Write the value (text content) of the current node.
      • endNode

        void endNode()
      • flush

        void flush()
        Flush the writer, if necessary.
      • close

        void close()
        Close the writer, if necessary.
      • underlyingWriter

        HierarchicalStreamWriter underlyingWriter()
        Return the underlying HierarchicalStreamWriter implementation.

        If a Converter needs to access methods of a specific HierarchicalStreamWriter implementation that are not defined in the HierarchicalStreamWriter interface, it should call this method before casting. This is because the writer passed to the Converter is often wrapped/decorated by another implementation to provide additional functionality (such as XPath tracking).

        For example:

        MySpecificWriter mySpecificWriter = (MySpecificWriter)writer; // INCORRECT!
         mySpecificWriter.doSomethingSpecific();
        MySpecificWriter mySpecificWriter = (MySpecificWriter)writer.underlyingWriter();  // CORRECT!
         mySpecificWriter.doSomethingSpecific();

        Implementations of HierarchicalStreamWriter should return 'this', unless they are a decorator, in which case they should delegate to whatever they are wrapping.