Package 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:
javax.xml.transform.Result
,Receiver
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
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
HTMLIndenter.HTMLNameClassifier
Class to classify HTML names(package private) static interface
HTMLIndenter.NameClassifier
The NameClassifier classifies element names according to whether the element is (a) an inline element, and/or (b) a formatted element(package private) static class
HTMLIndenter.XHTMLNameClassifier
Class to classify XHTML names
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.String[]
formattedTags
-
Fields inherited from class net.sf.saxon.event.ProxyReceiver
nextReceiver
-
Fields inherited from class net.sf.saxon.event.SequenceReceiver
pipelineConfiguration, previousAtomic, systemId
-
-
Constructor Summary
Constructors Constructor Description HTMLIndenter(Receiver next, java.lang.String method)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
characters(java.lang.CharSequence chars, int locationId, int properties)
Output character datavoid
comment(java.lang.CharSequence chars, int locationId, int properties)
Output a commentvoid
endElement()
Output element end tagprotected int
getIndentation()
Get the number of spaces to be used for indentationprotected int
getLineLength()
Get the maximum length of lines, after which long lines will be word-wrappedvoid
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
-
-
-
-
Constructor Detail
-
HTMLIndenter
public HTMLIndenter(Receiver next, java.lang.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 interfaceReceiver
- Overrides:
startElement
in classProxyReceiver
- 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 aLocationProvider
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 interfaceReceiver
- Overrides:
endElement
in classProxyReceiver
- Throws:
XPathException
- if an error occurs
-
characters
public void characters(java.lang.CharSequence chars, int locationId, int properties) throws XPathException
Output character data- Specified by:
characters
in interfaceReceiver
- Overrides:
characters
in classProxyReceiver
- Parameters:
chars
- The characterslocationId
- an integer which can be interpreted using aLocationProvider
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(java.lang.CharSequence chars, int locationId, int properties) throws XPathException
Output a comment- Specified by:
comment
in interfaceReceiver
- Overrides:
comment
in classProxyReceiver
- Parameters:
chars
- The content of the commentlocationId
- an integer which can be interpreted using aLocationProvider
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
-
-