## org.apache.xml.serialize
Class DOMSerializerImpl

    java.lang.Object
      |
      +--org.apache.xml.serialize.DOMSerializerImpl

All Implemented Interfaces:
  org.w3c.dom.DOMConfiguration, org.w3c.dom.ls.LSSerializer

Deprecated. Replaced by org.apache.xml.serializer.dom3.LSSerializerImpl in Xerces 2.9.0.

public class DOMSerializerImpl
extends java.lang.Object
implements org.w3c.dom.ls.LSSerializer, org.w3c.dom.DOMConfiguration

EXPERIMENTAL: Implemenatation of DOM Level 3 org.w3c.ls.LSSerializer by delegating serialization calls to `XMLSerializer`. LSSerializer provides an API for serializing (writing) a DOM document out in an XML document. The XML data is written to an output stream. During serialization of XML data, namespace fixup is done when possible as defined in DOM Level 3 Core, Appendix B.

Version:
  $Id: DOMSerializerImpl.java 476047 2006-11-17 04:27:45Z mrglavas $
Author:
  Elena Litani, IBM, Gopal Sharma, Sun Microsystems, Arun Yadav, Sun Microsystems

Field Summary
`protected static short` `CDATA` Deprecated.
`protected static short` `COMMENTS` Deprecated.
`protected static short` `DISCARDDEFAULT` Deprecated.
`protected static short` `DOM_ELEMENT_CONTENT_WHITESPACE` Deprecated.
`protected static short` `ENTITIES` Deprecated.
`protected short` `features` Deprecated. REVISIT: Currently we handle 3 different configurations, would be nice just have one configuration that has different recognized parameters depending if it is used in Core/LS.
`protected static short` `INFOSET` Deprecated.
`protected static short` `NAMESPACES` Deprecated.
`protected static short` `NSDECL` Deprecated.
`protected static short` `PRETTY_PRINT` Deprecated.
`protected static short` `SPLITCDATA` Deprecated.
`protected static short` `WELLFORMED` Deprecated.
`protected static short` `XMLDECL` Deprecated.

Constructor Summary
`DOMSerializerImpl()` Deprecated. Constructs a new LSSerializer.

Method Summary
`boolean` `canSetParameter(java.lang.String name, java.lang.Object state)` Deprecated. DOM L3-EXPERIMENTAL: Check if parameter can be set
`org.w3c.dom.DOMConfiguration` `getDomConfig()` Deprecated.
`org.w3c.dom.ls.LSSerializerFilter` `getFilter()` Deprecated. When the application provides a filter, the serializer will call out to the filter before serializing each Node.
`java.lang.String` `getNewLine()` Deprecated. DOM L3 EXPERIMENTAL: The end-of-line sequence of characters to be used in the XML being written out.
`java.lang.Object` `getParameter(java.lang.String name)` Deprecated. DOM L3-EXPERIMENTAL: Getter for boolean and object parameters
`org.w3c.dom.DOMStringList` `getParameterNames()` Deprecated. DOM Level 3 Core CR - Experimental.
`void` `setFilter(org.w3c.dom.ls.LSSerializerFilter filter)` Deprecated. When the application provides a filter, the serializer will call out to the filter before serializing each Node.
`void` `setNewLine(java.lang.String newLine)` Deprecated. DOM L3 EXPERIMENTAL: The end-of-line sequence of characters to be used in the XML being written out.
`void` `setParameter(java.lang.String name, java.lang.Object value)` Deprecated. DOM L3-EXPERIMENTAL: Setter for boolean and object parameters
`boolean` `write(org.w3c.dom.Node node, org.w3c.dom.ls.LSOutput destination)` Deprecated. Serialize the specified node as described above in the general description of the `LSSerializer` interface.
`java.lang.String` `writeToString(org.w3c.dom.Node wnode)` Deprecated. DOM L3 EXPERIMENTAL: Serialize the specified node as described above in the description of `LSSerializer`.
`boolean` `writeToURI(org.w3c.dom.Node node, java.lang.String URI)` Deprecated. Serialize the specified node as described above in the general description of the `LSSerializer` interface.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### features

    protected short features

  Deprecated.
  REVISIT: Currently we handle 3 different configurations, would be nice just have one configuration that has different recognized parameters depending if it is used in Core/LS.

### NAMESPACES

    protected static final short NAMESPACES

  Deprecated.

### WELLFORMED

    protected static final short WELLFORMED

  Deprecated.

### ENTITIES

    protected static final short ENTITIES

  Deprecated.

### CDATA

    protected static final short CDATA

  Deprecated.

### SPLITCDATA

    protected static final short SPLITCDATA

  Deprecated.

### COMMENTS

    protected static final short COMMENTS

  Deprecated.

### DISCARDDEFAULT

    protected static final short DISCARDDEFAULT

  Deprecated.

### INFOSET

    protected static final short INFOSET

  Deprecated.

### XMLDECL

    protected static final short XMLDECL

  Deprecated.

### NSDECL

    protected static final short NSDECL

  Deprecated.

### DOM_ELEMENT_CONTENT_WHITESPACE

    protected static final short DOM_ELEMENT_CONTENT_WHITESPACE

  Deprecated.

### PRETTY_PRINT

    protected static final short PRETTY_PRINT

  Deprecated.

Constructor Detail

### DOMSerializerImpl

    public DOMSerializerImpl()

  Deprecated.
  Constructs a new LSSerializer. The constructor turns on the namespace support in `XMLSerializer` and initializes the following fields: fNSBinder, fLocalNSBinder, fSymbolTable, fEmptySymbol, fXmlSymbol, fXmlnsSymbol, fNamespaceCounter, fFeatures.

Method Detail

### getDomConfig

    public org.w3c.dom.DOMConfiguration getDomConfig()

  Deprecated.
  Specified by:
    `getDomConfig` in interface `org.w3c.dom.ls.LSSerializer`

### setParameter

    public void setParameter(java.lang.String name,
                             java.lang.Object value)
                      throws org.w3c.dom.DOMException

  Deprecated.
  DOM L3-EXPERIMENTAL: Setter for boolean and object parameters
  Specified by:
    `setParameter` in interface `org.w3c.dom.DOMConfiguration`

### canSetParameter

    public boolean canSetParameter(java.lang.String name,
                                   java.lang.Object state)

  Deprecated.
  DOM L3-EXPERIMENTAL: Check if parameter can be set
  Specified by:
    `canSetParameter` in interface `org.w3c.dom.DOMConfiguration`

### getParameterNames

    public org.w3c.dom.DOMStringList getParameterNames()

  Deprecated.
  DOM Level 3 Core CR - Experimental. The list of the parameters supported by this `DOMConfiguration` object and for which at least one value can be set by the application. Note that this list can also contain parameter names defined outside this specification.
  Specified by:
    `getParameterNames` in interface `org.w3c.dom.DOMConfiguration`

### getParameter

    public java.lang.Object getParameter(java.lang.String name)
                                  throws org.w3c.dom.DOMException

  Deprecated.
  DOM L3-EXPERIMENTAL: Getter for boolean and object parameters
  Specified by:
    `getParameter` in interface `org.w3c.dom.DOMConfiguration`

### writeToString

    public java.lang.String writeToString(org.w3c.dom.Node wnode)
                                   throws org.w3c.dom.DOMException,
                                          org.w3c.dom.ls.LSException

  Deprecated.
  DOM L3 EXPERIMENTAL: Serialize the specified node as described above in the description of `LSSerializer`. The result of serializing the node is returned as a string. Writing a Document or Entity node produces a serialized form that is well formed XML. Writing other node types produces a fragment of text in a form that is not fully defined by this document, but that should be useful to a human for debugging or diagnostic purposes.
  Specified by:
    `writeToString` in interface `org.w3c.dom.ls.LSSerializer`
  Parameters:
    `wnode` - The node to be written.
  Returns:
    Returns the serialized data
  Throws:
    `org.w3c.dom.DOMException` - DOMSTRING_SIZE_ERR: The resulting string is too long to fit in a `DOMString`.
    `org.w3c.dom.ls.LSException` - SERIALIZE_ERR: Unable to serialize the node. DOM applications should attach a `DOMErrorHandler` using the parameter "error-handler" to get details on error.

### setNewLine

    public void setNewLine(java.lang.String newLine)

  Deprecated.
  DOM L3 EXPERIMENTAL: The end-of-line sequence of characters to be used in the XML being written out. The only permitted values are these:
  `null`
    Use a default end-of-line sequence. DOM implementations should choose the default to match the usual convention for text files in the environment being used. Implementations must choose a default sequence that matches one of those allowed by 2.11 "End-of-Line Handling".
  CR
    The carriage-return character (#xD).
  CR-LF
    The carriage-return and line-feed characters (#xD #xA).
  LF
    The line-feed character (#xA).
  The default value for this attribute is `null`.
  Specified by:
    `setNewLine` in interface `org.w3c.dom.ls.LSSerializer`

### getNewLine

    public java.lang.String getNewLine()

  Deprecated.
  DOM L3 EXPERIMENTAL: The end-of-line sequence of characters to be used in the XML being written out. The only permitted values are these:
  `null`
    Use a default end-of-line sequence. DOM implementations should choose the default to match the usual convention for text files in the environment being used. Implementations must choose a default sequence that matches one of those allowed by 2.11 "End-of-Line Handling".
  CR
    The carriage-return character (#xD).
  CR-LF
    The carriage-return and line-feed characters (#xD #xA).
  LF
    The line-feed character (#xA).
  The default value for this attribute is `null`.
  Specified by:
    `getNewLine` in interface `org.w3c.dom.ls.LSSerializer`

### getFilter

    public org.w3c.dom.ls.LSSerializerFilter getFilter()

  Deprecated.
  When the application provides a filter, the serializer will call out to the filter before serializing each Node. Attribute nodes are never passed to the filter. The filter implementation can choose to remove the node from the stream or to terminate the serialization early.
  Specified by:
    `getFilter` in interface `org.w3c.dom.ls.LSSerializer`

### setFilter

    public void setFilter(org.w3c.dom.ls.LSSerializerFilter filter)

  Deprecated.
  When the application provides a filter, the serializer will call out to the filter before serializing each Node. Attribute nodes are never passed to the filter. The filter implementation can choose to remove the node from the stream or to terminate the serialization early.
  Specified by:
    `setFilter` in interface `org.w3c.dom.ls.LSSerializer`

### write

    public boolean write(org.w3c.dom.Node node,
                         org.w3c.dom.ls.LSOutput destination)
                  throws org.w3c.dom.ls.LSException

  Deprecated.
  Serialize the specified node as described above in the general description of the `LSSerializer` interface. The output is written to the supplied `LSOutput`.
  When writing to a `LSOutput`, the encoding is found by looking at the encoding information that is reachable through the `LSOutput` and the item to be written (or its owner document) in this order:
  1. `LSOutput.encoding`,
  2. `Document.actualEncoding`,
  3. `Document.xmlEncoding`.
  If no encoding is reachable through the above properties, a default encoding of "UTF-8" will be used.
  If the specified encoding is not supported an "unsupported-encoding" error is raised.
  If no output is specified in the `LSOutput`, a "no-output-specified" error is raised.
  Specified by:
    `write` in interface `org.w3c.dom.ls.LSSerializer`
  Parameters:
    `node` - The node to serialize.
    `destination` - The destination for the serialized DOM.
  Returns:
    Returns `true` if `node` was successfully serialized and `false` in case the node couldn't be serialized.

### writeToURI

    public boolean writeToURI(org.w3c.dom.Node node,
                              java.lang.String URI)
                       throws org.w3c.dom.ls.LSException

  Deprecated.
  Serialize the specified node as described above in the general description of the `LSSerializer` interface. The output is written to the supplied URI.
  When writing to a URI, the encoding is found by looking at the encoding information that is reachable through the item to be written (or its owner document) in this order:
  1. `Document.inputEncoding`,
  2. `Document.xmlEncoding`.
  If no encoding is reachable through the above properties, a default encoding of "UTF-8" will be used.
  If the specified encoding is not supported an "unsupported-encoding" error is raised.
  Specified by:
    `writeToURI` in interface `org.w3c.dom.ls.LSSerializer`
  Parameters:
    `node` - The node to serialize.
    `URI` - The URI to write to.
  Returns:
    Returns `true` if `node` was successfully serialized and `false` in case the node couldn't be serialized.

Copyright © 1999-2007 The Apache Software Foundation. All Rights Reserved.