Package net.sf.saxon.event
Class HTMLIndenter
- java.lang.Object
-
- net.sf.saxon.event.SequenceReceiver
-
- net.sf.saxon.event.ProxyReceiver
-
- net.sf.saxon.event.HTMLIndenter
-
- All Implemented Interfaces:
javax.xml.transform.Result
,Receiver
- Direct Known Subclasses:
XHTMLIndenter
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, but may be set using the indent-chars property- Author:
- Michael Kay
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.String[]
formattedTags
protected static java.lang.String[]
inlineTags
protected static int
IS_FORMATTED
protected static int
IS_INLINE
-
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()
-
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 dataprotected int
classifyTag(int nameCode)
Classify an element name as inline, formatted, or both or neither.void
comment(java.lang.CharSequence chars, int locationId, int properties)
Output a commentvoid
endElement()
Output element end tagvoid
setOutputProperties(java.util.Properties props)
Set the properties for this indentervoid
startElement(int nameCode, int typeCode, int locationId, int properties)
Output element start tag-
Methods inherited from class net.sf.saxon.event.ProxyReceiver
append, attribute, close, endDocument, getConfiguration, getDocumentLocator, getNamePool, getUnderlyingReceiver, namespace, open, processingInstruction, setPipelineConfiguration, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument
-
Methods inherited from class net.sf.saxon.event.SequenceReceiver
getPipelineConfiguration, getSystemId
-
-
-
-
Field Detail
-
inlineTags
protected static java.lang.String[] inlineTags
-
IS_INLINE
protected static final int IS_INLINE
- See Also:
- Constant Field Values
-
IS_FORMATTED
protected static final int IS_FORMATTED
- See Also:
- Constant Field Values
-
formattedTags
protected static java.lang.String[] formattedTags
-
-
Method Detail
-
classifyTag
protected int classifyTag(int nameCode)
Classify an element name as inline, formatted, or both or neither. This method is overridden in the XHTML indenter- Parameters:
nameCode
- the element name- Returns:
- a bit-significant integer containing flags IS_INLINE and/or IS_FORMATTED
-
setOutputProperties
public void setOutputProperties(java.util.Properties props)
Set the properties for this indenter
-
startElement
public void startElement(int nameCode, int 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
-
endElement
public void endElement() throws XPathException
Output element end tag- Specified by:
endElement
in interfaceReceiver
- Overrides:
endElement
in classProxyReceiver
- Throws:
XPathException
-
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
-
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. The following bits are defined:- CHECKED
- Comment is known to be legal (e.g. doesn't contain "--")
- Throws:
XPathException
-
-