org.codehaus.plexus.util.xml

## 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.
  Version:
    $Id$

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static String` | `LS` Line separator ("\n" on UNIX)

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PrettyPrintXMLWriter(PrintWriter writer)`
    `PrettyPrintXMLWriter(PrintWriter writer, String lineIndenter)`
    `PrettyPrintXMLWriter(PrintWriter writer, String encoding, String doctype)`
    `PrettyPrintXMLWriter(PrintWriter writer, String lineIndenter, String encoding, String doctype)`
    `PrettyPrintXMLWriter(PrintWriter writer, String lineIndenter, String lineSeparator, String encoding, String doctype)`
    `PrettyPrintXMLWriter(Writer writer)`
    `PrettyPrintXMLWriter(Writer writer, String lineIndenter)`
    `PrettyPrintXMLWriter(Writer writer, String encoding, String doctype)`
    `PrettyPrintXMLWriter(Writer writer, String lineIndenter, String encoding, String doctype)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addAttribute(String key, String value)`
    `void` | `endElement()`
    `protected void` | `endOfLine()` Write the end of line character (using specified line separator) and start new line with indentation
    `protected int` | `getDepth()` Get the current depth in the xml indentation
    `protected String` | `getDocType()` Get the docType in the xml
    `protected LinkedList<String>` | `getElementStack()`
    `protected String` | `getEncoding()` Get the current encoding in the xml
    `protected String` | `getLineIndenter()` Get the string used as line indenter
    `protected String` | `getLineSeparator()` Get the string used as line separator or LS if not set.
    `protected PrintWriter` | `getWriter()` Get the underlying writer
    `protected void` | `setDepth(int depth)` Set the depth in the xml indentation
    `protected void` | `setDocType(String docType)` Set the docType in the xml
    `protected void` | `setEncoding(String encoding)` Set the encoding in the xml
    `protected void` | `setLineIndenter(String lineIndenter)` Set the string used as line indenter
    `protected void` | `setLineSeparator(String lineSeparator)` Set the string used as line separator
    `protected void` | `setWriter(PrintWriter writer)` Set the underlying writer
    `void` | `startElement(String name)`
    `void` | `writeMarkup(String text)`
    `void` | `writeText(String text)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### LS

          protected static final String LS

      Line separator ("\n" on UNIX)

  - ### Constructor Detail

    - #### 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 Detail

    - #### 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:
        `LS`

    - #### 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:
        `getLineIndenter()`, `getLineSeparator()`

    - #### 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 LinkedList<String> getElementStack()

      Returns:
        the current elementStack;

Copyright © 2015. All rights reserved.