org.apache.xml.serializer
Interface SerializationHandler

All Known Implementing Classes:
EmptySerializer, SerializerBase

public interface SerializationHandler
extends ExtendedContentHandler, ExtendedLexicalHandler, org.apache.xml.serializer.XSLOutputAttributes, DeclHandler, DTDHandler, ErrorHandler, DOMSerializer, Serializer

This interface is the one that a serializer implements. It is a group of other interfaces, such as ExtendedContentHandler, ExtendedLexicalHandler etc. In addition there are other methods, such as reset(). This class is public only because it is used in another package, it is not a public API.

Usage:
**For internal use only**

Fields inherited from class org.apache.xml.serializer.ExtendedContentHandler
HTML_ATTREMPTY, HTML_ATTRURL, NO_BAD_CHARS
 
Method Summary
 void close()
           
 void flushPending()
          A SerializationHandler accepts SAX-like events, so it can accumulate attributes or namespace nodes after a startElement().
 Transformer getTransformer()
          Get the transformer associated with the serializer.
 void serialize(Node node)
          Notify that the serializer should take this DOM node as input to be serialized.
 void setContentHandler(ContentHandler ch)
          Set the SAX Content handler that the serializer sends its output to.
 void setDTDEntityExpansion(boolean expand)
          Default behavior is to expand DTD entities, that is the initall default value is true.
 boolean setEscaping(boolean escape)
          Turns special character escaping on/off.
 void setIndentAmount(int spaces)
          Set the number of spaces to indent for each indentation level.
 void setNamespaceMappings(NamespaceMappings mappings)
          Used only by TransformerSnapshotImpl to restore the serialization to a previous state.
 void setTransformer(Transformer transformer)
          Set the transformer associated with the serializer.
 
Methods inherited from interface org.apache.xml.serializer.ExtendedContentHandler
addAttribute, addAttribute, addAttribute, addAttributes, addUniqueAttribute, addXSLAttribute, characters, characters, endElement, entityReference, getNamespaceMappings, getNamespaceURI, getNamespaceURIFromPrefix, getPrefix, namespaceAfterStartElement, setSourceLocator, startElement, startElement, startPrefixMapping
 
Methods inherited from interface org.apache.xml.serializer.ExtendedLexicalHandler
comment
 
Methods inherited from interface org.apache.xml.serializer.XSLOutputAttributes
getDoctypePublic, getDoctypeSystem, getEncoding, getIndent, getIndentAmount, getMediaType, getOmitXMLDeclaration, getOutputProperty, getOutputPropertyDefault, getStandalone, getVersion, setCdataSectionElements, setDoctype, setDoctypePublic, setDoctypeSystem, setEncoding, setIndent, setMediaType, setOmitXMLDeclaration, setOutputProperty, setOutputPropertyDefault, setStandalone, setVersion
 
Methods inherited from interface org.xml.sax.ext.DeclHandler
attributeDecl, elementDecl, externalEntityDecl, internalEntityDecl
 
Methods inherited from interface org.xml.sax.DTDHandler
notationDecl, unparsedEntityDecl
 
Methods inherited from interface org.xml.sax.ErrorHandler
error, fatalError, warning
 
Methods inherited from interface org.apache.xml.serializer.Serializer
asContentHandler, asDOM3Serializer, asDOMSerializer, getOutputFormat, getOutputStream, getWriter, reset, setOutputFormat, setOutputStream, setWriter
 
Methods inherited from interface org.xml.sax.ContentHandler
characters, endDocument, endElement, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping
 
Methods inherited from interface org.xml.sax.ext.LexicalHandler
comment, endCDATA, endDTD, endEntity, startCDATA, startDTD, startEntity
 

Method Detail

setContentHandler

public void setContentHandler(ContentHandler ch)
Set the SAX Content handler that the serializer sends its output to. This method only applies to a ToSAXHandler, not to a ToStream serializer.
See Also:
Serializer.asContentHandler(), ToSAXHandler

close

public void close()

serialize

public void serialize(Node node)
               throws java.io.IOException
Notify that the serializer should take this DOM node as input to be serialized.
Specified by:
serialize in interface DOMSerializer
Parameters:
node - the DOM node to be serialized.
Throws:
java.io.IOException -  

setEscaping

public boolean setEscaping(boolean escape)
                    throws SAXException
Turns special character escaping on/off. Note that characters will never, even if this option is set to 'true', be escaped within CDATA sections in output XML documents.
Parameters:
escape - true if escaping is to be set on.

setIndentAmount

public void setIndentAmount(int spaces)
Set the number of spaces to indent for each indentation level.
Parameters:
spaces - the number of spaces to indent for each indentation level.

setTransformer

public void setTransformer(Transformer transformer)
Set the transformer associated with the serializer.
Parameters:
transformer - the transformer associated with the serializer.

getTransformer

public Transformer getTransformer()
Get the transformer associated with the serializer.
Returns:
Transformer the transformer associated with the serializer.

setNamespaceMappings

public void setNamespaceMappings(NamespaceMappings mappings)
Used only by TransformerSnapshotImpl to restore the serialization to a previous state.
Parameters:
mappings - NamespaceMappings

flushPending

public void flushPending()
                  throws SAXException
A SerializationHandler accepts SAX-like events, so it can accumulate attributes or namespace nodes after a startElement().

If the SerializationHandler has a Writer or OutputStream, a call to this method will flush such accumulated events as a closed start tag for an element.

If the SerializationHandler wraps a ContentHandler, a call to this method will flush such accumulated events as a SAX (not SAX-like) calls to startPrefixMapping() and startElement().

If one calls endDocument() then one need not call this method since a call to endDocument() will do what this method does. However, in some circumstances, such as with document fragments, endDocument() is not called and it may be necessary to call this method to flush any pending events.

For performance reasons this method should not be called very often.


setDTDEntityExpansion

public void setDTDEntityExpansion(boolean expand)
Default behavior is to expand DTD entities, that is the initall default value is true.
Parameters:
expand - true if DTD entities are to be expanded, false if they are to be left as DTD entity references.


Copyright 2006 Apache XML Project. All Rights Reserved.