net.sf.saxon.serialize

## Class HTMLIndenter

- java.lang.Object
- - net.sf.saxon.event.SequenceReceiver
  - - net.sf.saxon.event.ProxyReceiver
    - - net.sf.saxon.serialize.HTMLIndenter

- All Implemented Interfaces:
    Result, Receiver
  Direct Known Subclasses:
    HTMLIndenterPE

      public class HTMLIndenter
      extends ProxyReceiver

  HTMLIndenter: This ProxyEmitter indents HTML elements, by adding whitespace character data where appropriate. The character data is never added when within an inline element. The string used for indentation defaults to three spaces
  Author:
    Michael Kay

- - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.event.ProxyReceiver

      `nextReceiver`

    - ### Fields inherited from class net.sf.saxon.event.SequenceReceiver

      `pipelineConfiguration, previousAtomic, systemId`

    - ### Fields inherited from interface javax.xml.transform.Result

      `PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HTMLIndenter(Receiver next, String method)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `characters(CharSequence chars, int locationId, int properties)` Output character data
    `void` | `comment(CharSequence chars, int locationId, int properties)` Output a comment
    `void` | `endElement()` Output element end tag
    `protected int` | `getIndentation()` Get the number of spaces to be used for indentation
    `protected int` | `getLineLength()` Get the maximum length of lines, after which long lines will be word-wrapped
    `void` | `startElement(NodeName nameCode, SchemaType typeCode, int locationId, int properties)` Output element start tag

    - ### Methods inherited from class net.sf.saxon.event.ProxyReceiver

      `append, attribute, close, endDocument, getNamePool, getUnderlyingReceiver, namespace, open, processingInstruction, setPipelineConfiguration, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument, usesTypeAnnotations`

    - ### Methods inherited from class net.sf.saxon.event.SequenceReceiver

      `append, getConfiguration, getPipelineConfiguration, getSystemId`

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

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

- - ### Constructor Detail

    - #### HTMLIndenter

          public HTMLIndenter(Receiver next,
                      String method)

  - ### Method Detail

    - #### startElement

          public void startElement(NodeName nameCode,
                          SchemaType typeCode,
                          int locationId,
                          int properties)
                            throws XPathException

      Output element start tag
      Specified by:
        `startElement` in interface `Receiver`
      Overrides:
        `startElement` in class `ProxyReceiver`
      Parameters:
        `nameCode` - integer code identifying the name of the element within the name pool.
        `typeCode` - integer code identifying the element's type within the name pool.
        `locationId` - an integer which can be interpreted using a `LocationProvider` to return information such as line number and system ID. If no location information is available, the value zero is supplied.
        `properties` - properties of the element node
      Throws:
        `XPathException` - if an error occurs

    - #### endElement

          public void endElement()
                          throws XPathException

      Output element end tag
      Specified by:
        `endElement` in interface `Receiver`
      Overrides:
        `endElement` in class `ProxyReceiver`
      Throws:
        `XPathException` - if an error occurs

    - #### characters

          public void characters(CharSequence chars,
                        int locationId,
                        int properties)
                          throws XPathException

      Output character data
      Specified by:
        `characters` in interface `Receiver`
      Overrides:
        `characters` in class `ProxyReceiver`
      Parameters:
        `chars` - The characters
        `locationId` - an integer which can be interpreted using a `LocationProvider` to return information such as line number and system ID. If no location information is available, the value zero is supplied.
        `properties` - Bit significant value. The following bits are defined:
      DISABLE_ESCAPING
        Disable escaping for this text node
      USE_CDATA
        Output as a CDATA section
      Throws:
        `XPathException` - if an error occurs

    - #### comment

          public void comment(CharSequence chars,
                     int locationId,
                     int properties)
                       throws XPathException

      Output a comment
      Specified by:
        `comment` in interface `Receiver`
      Overrides:
        `comment` in class `ProxyReceiver`
      Parameters:
        `chars` - The content of the comment
        `locationId` - an integer which can be interpreted using a `LocationProvider` to return information such as line number and system ID. If no location information is available, the value zero is supplied.
        `properties` - Additional information about the comment.
      Throws:
        `XPathException` - if an error occurs

    - #### getIndentation

          protected int getIndentation()

      Get the number of spaces to be used for indentation
      Returns:
        the number of spaces to be added to the indentation for each level

    - #### getLineLength

          protected int getLineLength()

      Get the maximum length of lines, after which long lines will be word-wrapped
      Returns:
        the maximum line length

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.