com.novell.xsl.result
Class DefaultSerializer

java.lang.Object
  extended bycom.novell.xsl.result.DefaultSerializer
All Implemented Interfaces:
ResultHandler, Serializer

public class DefaultSerializer
extends Object
implements ResultHandler, Serializer

A class that implements the default serializer behavior: i.e., it decides to use XML or HTML based on the rules described in the XSLT spec


Constructor Summary
DefaultSerializer()
           
DefaultSerializer(OutputStream stream)
           
 
Method Summary
 void attribute(String name, String value)
          Receive notification of an attribute.
 void characters(String data)
          Receive notification of character data.
 void comment(String value)
          Receive notification of a comment.
 void endDocument()
          Receive notification of the end of a document.
 void endElement(String name)
          Receive notification of the end of an element.
 SerializerOptions getOptions()
          Get the options currently in effect for this serializer
 OutputStream getStream()
          Return the stream to which the serializer is writing the output bytes.
 void namespace(String name, NamespaceName value)
          Receive notification of a namespace node.
 void noTextEscaping(boolean noEscape)
          Tell Serializer to do no text escaping
 void processingInstruction(String target, String value)
          Receive notification of a processing instruction.
 void setOptions(SerializerOptions options)
          Set the options for this serializer
 void setStream(OutputStream stream)
          Set the output stream to which the serializer will write the bytes
 void startDocument()
          Receive notification of the beginning of a document.
 void startElement(String name, String namespaceURI)
          Receive notification of the beginning of an element.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultSerializer

public DefaultSerializer()

DefaultSerializer

public DefaultSerializer(OutputStream stream)
Method Detail

startDocument

public void startDocument()
                   throws ResultException
Receive notification of the beginning of a document.

Specified by:
startDocument in interface ResultHandler
Throws:
ResultException - if an implementation-dependent error occurs

endDocument

public void endDocument()
                 throws ResultException
Receive notification of the end of a document.

Specified by:
endDocument in interface ResultHandler
Throws:
ResultException - if an implementation-dependent error occurs

startElement

public void startElement(String name,
                         String namespaceURI)
                  throws IllegalNameException,
                         IllegalNodeException,
                         ResultException
Receive notification of the beginning of an element.

Specified by:
startElement in interface ResultHandler
Parameters:
name - the element's name
namespaceURI - the element's namespace uri
Throws:
IllegalNameException - if the specified element name is illegal
IllegalNodeException - if the current node cannot contain elements
ResultException - if an implementation-dependent error occurs

endElement

public void endElement(String name)
                throws ResultException
Receive notification of the end of an element.

Specified by:
endElement in interface ResultHandler
Throws:
ResultException - if an implementation-dependent error occurs

attribute

public void attribute(String name,
                      String value)
               throws AttributeAfterChildException,
                      IllegalNameException,
                      IllegalNodeException,
                      ResultException
Receive notification of an attribute.

Specified by:
attribute in interface ResultHandler
Parameters:
name - the attribute's name
value - the attribute's value
Throws:
AttributeAfterChildException - if the current node is an element with children (attributes cannot be added to an element after children have been added to it)
IllegalNameException - if the specified attribute name is illegal
IllegalNodeException - if the current node is not an element
ResultException - if an implementation-dependent error occurs

characters

public void characters(String data)
                throws IllegalNodeException,
                       ResultException
Receive notification of character data.

Specified by:
characters in interface ResultHandler
Parameters:
data - the character data
Throws:
IllegalNodeException - if the current node cannot contain character data
ResultException - if an implementation-dependent error occurs

processingInstruction

public void processingInstruction(String target,
                                  String value)
                           throws IllegalNameException,
                                  IllegalNodeException,
                                  ResultException
Receive notification of a processing instruction.

Specified by:
processingInstruction in interface ResultHandler
Parameters:
target - the processing instruction's target
value - the processing instruction's value, or null if there is no value
Throws:
IllegalNameException - if the specified target name is illegal
IllegalNodeException - if the current node cannot contain processing instructions
ResultException - if an implementation-dependent error occurs

comment

public void comment(String value)
             throws IllegalNodeException,
                    ResultException
Receive notification of a comment.

Specified by:
comment in interface ResultHandler
Parameters:
value - the comment's value
Throws:
IllegalNodeException - if the current node cannot contain comments
ResultException - if an implementation-dependent error occurs

namespace

public void namespace(String name,
                      NamespaceName value)
               throws IllegalNodeException,
                      ResultException
Receive notification of a namespace node. An implementation should keep track of what namespace attributes are in scope in the xml representation to avoid placing redundant attributes on elements.

Specified by:
namespace in interface ResultHandler
Parameters:
name - the namespace prefix
value - the namespace name (URI)
Throws:
IllegalNodeException - if the current node cannot contain namespaces
ResultException - if an implementation-dependent error occurs

getOptions

public SerializerOptions getOptions()
Get the options currently in effect for this serializer

Specified by:
getOptions in interface Serializer
Returns:
The options object for this serializer

setOptions

public void setOptions(SerializerOptions options)
Set the options for this serializer

Specified by:
setOptions in interface Serializer
Parameters:
options - The options object for this serializer

getStream

public OutputStream getStream()
Return the stream to which the serializer is writing the output bytes.

Specified by:
getStream in interface Serializer
Returns:
The output stream

setStream

public void setStream(OutputStream stream)
Set the output stream to which the serializer will write the bytes

Specified by:
setStream in interface Serializer
Parameters:
stream - The output stream

noTextEscaping

public void noTextEscaping(boolean noEscape)
Tell Serializer to do no text escaping

Specified by:
noTextEscaping in interface Serializer
Parameters:
noEscape - True if no escaping should be performed, false if escaping should be performed