Package nu.validator.htmlparser.sax
Class XmlSerializer
- java.lang.Object
-
- nu.validator.htmlparser.sax.XmlSerializer
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler
,org.xml.sax.ext.LexicalHandler
- Direct Known Subclasses:
NameCheckingXmlSerializer
public class XmlSerializer extends java.lang.Object implements org.xml.sax.ContentHandler, org.xml.sax.ext.LexicalHandler
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
XmlSerializer.PrefixMapping
private class
XmlSerializer.StackNode
-
Field Summary
Fields Modifier and Type Field Description private java.util.LinkedList<XmlSerializer.StackNode>
stack
private static java.util.Map<java.lang.String,java.lang.String>
WELL_KNOWN_ATTRIBUTE_PREFIXES
private static java.util.Map<java.lang.String,java.lang.String>
WELL_KNOWN_ELEMENT_PREFIXES
private java.io.Writer
writer
-
Constructor Summary
Constructors Constructor Description XmlSerializer(java.io.OutputStream out)
XmlSerializer(java.io.Writer out)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
characters(char[] ch, int start, int length)
protected void
checkNCName(java.lang.String name)
void
comment(char[] ch, int start, int length)
void
endCDATA()
void
endDocument()
void
endDTD()
void
endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
void
endEntity(java.lang.String name)
void
endPrefixMapping(java.lang.String prefix)
private void
generatePrefix(java.lang.String uri)
void
ignorableWhitespace(char[] ch, int start, int length)
private java.lang.String
lookupPrefixAttribute(java.lang.String ns)
private java.lang.String
lookupUri(java.lang.String prefix)
private java.lang.String
pop()
void
processingInstruction(java.lang.String target, java.lang.String data)
private void
push(java.lang.String uri, java.lang.String local, java.lang.String prefix)
void
setDocumentLocator(org.xml.sax.Locator locator)
void
skippedEntity(java.lang.String name)
void
startCDATA()
void
startDocument()
void
startDTD(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
void
startElement(java.lang.String uri, java.lang.String localName, java.lang.String q, org.xml.sax.Attributes atts)
void
startEntity(java.lang.String name)
void
startPrefixMapping(java.lang.String prefix, java.lang.String uri)
void
startPrefixMappingPrivate(java.lang.String prefix, java.lang.String uri)
private static java.io.Writer
wrap(java.io.OutputStream out)
private void
writeAttributeValue(java.lang.String val)
private boolean
xmlNsQname(java.lang.String name)
-
-
-
Field Detail
-
WELL_KNOWN_ATTRIBUTE_PREFIXES
private static final java.util.Map<java.lang.String,java.lang.String> WELL_KNOWN_ATTRIBUTE_PREFIXES
-
WELL_KNOWN_ELEMENT_PREFIXES
private static final java.util.Map<java.lang.String,java.lang.String> WELL_KNOWN_ELEMENT_PREFIXES
-
stack
private final java.util.LinkedList<XmlSerializer.StackNode> stack
-
writer
private final java.io.Writer writer
-
-
Method Detail
-
wrap
private static final java.io.Writer wrap(java.io.OutputStream out)
-
checkNCName
protected void checkNCName(java.lang.String name) throws org.xml.sax.SAXException
- Throws:
org.xml.sax.SAXException
-
push
private final void push(java.lang.String uri, java.lang.String local, java.lang.String prefix)
-
pop
private final java.lang.String pop()
-
lookupPrefixAttribute
private final java.lang.String lookupPrefixAttribute(java.lang.String ns)
-
lookupUri
private final java.lang.String lookupUri(java.lang.String prefix)
-
xmlNsQname
private final boolean xmlNsQname(java.lang.String name)
-
writeAttributeValue
private final void writeAttributeValue(java.lang.String val) throws java.io.IOException
- Throws:
java.io.IOException
-
generatePrefix
private final void generatePrefix(java.lang.String uri) throws org.xml.sax.SAXException
- Throws:
org.xml.sax.SAXException
-
characters
public final void characters(char[] ch, int start, int length) throws org.xml.sax.SAXException
- Specified by:
characters
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
endDocument
public final void endDocument() throws org.xml.sax.SAXException
- Specified by:
endDocument
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
endElement
public final void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXException
- Specified by:
endElement
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
ignorableWhitespace
public final void ignorableWhitespace(char[] ch, int start, int length) throws org.xml.sax.SAXException
- Specified by:
ignorableWhitespace
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
processingInstruction
public final void processingInstruction(java.lang.String target, java.lang.String data) throws org.xml.sax.SAXException
- Specified by:
processingInstruction
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
setDocumentLocator
public final void setDocumentLocator(org.xml.sax.Locator locator)
- Specified by:
setDocumentLocator
in interfaceorg.xml.sax.ContentHandler
-
startDocument
public final void startDocument() throws org.xml.sax.SAXException
- Specified by:
startDocument
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
startElement
public final void startElement(java.lang.String uri, java.lang.String localName, java.lang.String q, org.xml.sax.Attributes atts) throws org.xml.sax.SAXException
- Specified by:
startElement
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
comment
public final void comment(char[] ch, int start, int length) throws org.xml.sax.SAXException
- Specified by:
comment
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
endCDATA
public final void endCDATA() throws org.xml.sax.SAXException
- Specified by:
endCDATA
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
endDTD
public final void endDTD() throws org.xml.sax.SAXException
- Specified by:
endDTD
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
endEntity
public final void endEntity(java.lang.String name) throws org.xml.sax.SAXException
- Specified by:
endEntity
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
startCDATA
public final void startCDATA() throws org.xml.sax.SAXException
- Specified by:
startCDATA
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
startDTD
public final void startDTD(java.lang.String name, java.lang.String publicId, java.lang.String systemId) throws org.xml.sax.SAXException
- Specified by:
startDTD
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
startEntity
public final void startEntity(java.lang.String name) throws org.xml.sax.SAXException
- Specified by:
startEntity
in interfaceorg.xml.sax.ext.LexicalHandler
- Throws:
org.xml.sax.SAXException
-
startPrefixMapping
public final void startPrefixMapping(java.lang.String prefix, java.lang.String uri) throws org.xml.sax.SAXException
- Specified by:
startPrefixMapping
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
startPrefixMappingPrivate
public final void startPrefixMappingPrivate(java.lang.String prefix, java.lang.String uri) throws org.xml.sax.SAXException
- Throws:
org.xml.sax.SAXException
-
endPrefixMapping
public final void endPrefixMapping(java.lang.String prefix) throws org.xml.sax.SAXException
- Specified by:
endPrefixMapping
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
skippedEntity
public final void skippedEntity(java.lang.String name) throws org.xml.sax.SAXException
- Specified by:
skippedEntity
in interfaceorg.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
-
-