Class PrettyPrintXMLWriter

java.lang.Object
org.codehaus.plexus.util.xml.PrettyPrintXMLWriter
All Implemented Interfaces:
XMLWriter
Direct Known Subclasses:
CompactXMLWriter

public class PrettyPrintXMLWriter extends Object implements XMLWriter

Implementation of XMLWriter which emits nicely formatted documents.

C0n control characters except \n, \r, and \t are omitted from output

  • Field Details

    • LS

      protected static final String LS
      Line separator ("\n" on UNIX)
  • Constructor Details

    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(PrintWriter writer, String lineIndenter)
      Parameters:
      writer - not null
      lineIndenter - could be null, but the normal way is some spaces.
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(Writer writer, String lineIndenter)
      Parameters:
      writer - not null
      lineIndenter - could be null, but the normal way is some spaces.
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(PrintWriter writer)
      Parameters:
      writer - not null
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(Writer writer)
      Parameters:
      writer - not null
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(PrintWriter writer, String lineIndenter, String encoding, String doctype)
      Parameters:
      writer - not null
      lineIndenter - could be null, but the normal way is some spaces.
      encoding - could be null or invalid.
      doctype - could be null.
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(Writer writer, String lineIndenter, String encoding, String doctype)
      Parameters:
      writer - not null
      lineIndenter - could be null, but the normal way is some spaces.
      encoding - could be null or invalid.
      doctype - could be null.
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(PrintWriter writer, String encoding, String doctype)
      Parameters:
      writer - not null
      encoding - could be null or invalid.
      doctype - could be null.
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(Writer writer, String encoding, String doctype)
      Parameters:
      writer - not null
      encoding - could be null or invalid.
      doctype - could be null.
    • PrettyPrintXMLWriter

      public PrettyPrintXMLWriter(PrintWriter writer, String lineIndenter, String lineSeparator, String encoding, String doctype)
      Parameters:
      writer - not null
      lineIndenter - could be null, but the normal way is some spaces.
      lineSeparator - could be null, but the normal way is valid line separator ("\n" on UNIX).
      encoding - could be null or invalid.
      doctype - could be null.
  • Method Details

    • startElement

      public void startElement(String name)
      Specified by:
      startElement in interface XMLWriter
    • writeText

      public void writeText(String text)
      Specified by:
      writeText in interface XMLWriter
    • writeMarkup

      public void writeMarkup(String text)
      Specified by:
      writeMarkup in interface XMLWriter
    • addAttribute

      public void addAttribute(String key, String value)
      Specified by:
      addAttribute in interface XMLWriter
    • endElement

      public void endElement()
      Specified by:
      endElement in interface XMLWriter
    • getLineIndenter

      protected String getLineIndenter()
      Get the string used as line indenter
      Returns:
      the line indenter
    • setLineIndenter

      protected void setLineIndenter(String lineIndenter)
      Set the string used as line indenter
      Parameters:
      lineIndenter - new line indenter, could be null, but the normal way is some spaces.
    • getLineSeparator

      protected String getLineSeparator()
      Get the string used as line separator or LS if not set.
      Returns:
      the line separator
      See Also:
    • setLineSeparator

      protected void setLineSeparator(String lineSeparator)
      Set the string used as line separator
      Parameters:
      lineSeparator - new line separator, could be null but the normal way is valid line separator ("\n" on UNIX).
    • endOfLine

      protected void endOfLine()
      Write the end of line character (using specified line separator) and start new line with indentation
      See Also:
    • setWriter

      protected void setWriter(PrintWriter writer)
      Set the underlying writer
      Parameters:
      writer - not null writer
    • getWriter

      protected PrintWriter getWriter()
      Get the underlying writer
      Returns:
      the underlying writer
    • setDepth

      protected void setDepth(int depth)
      Set the depth in the xml indentation
      Parameters:
      depth - new depth
    • getDepth

      protected int getDepth()
      Get the current depth in the xml indentation
      Returns:
      the current depth
    • setEncoding

      protected void setEncoding(String encoding)
      Set the encoding in the xml
      Parameters:
      encoding - new encoding
    • getEncoding

      protected String getEncoding()
      Get the current encoding in the xml
      Returns:
      the current encoding
    • setDocType

      protected void setDocType(String docType)
      Set the docType in the xml
      Parameters:
      docType - new docType
    • getDocType

      protected String getDocType()
      Get the docType in the xml
      Returns:
      the current docType
    • getElementStack

      protected Deque<String> getElementStack()
      Returns:
      the current elementStack;