org.dom4j.tree
Class DefaultDocument

java.lang.Object
  extended byorg.dom4j.tree.AbstractNode
      extended byorg.dom4j.tree.AbstractBranch
          extended byorg.dom4j.tree.AbstractDocument
              extended byorg.dom4j.tree.DefaultDocument
All Implemented Interfaces:
Branch, Cloneable, Document, Node, Serializable
Direct Known Subclasses:
DOMDocument

public class DefaultDocument
extends AbstractDocument

DefaultDocument is the default DOM4J default implementation of an XML document.

Version:
$Revision: 1.34 $
Author:
James Strachan
See Also:
Serialized Form

Field Summary
protected static Iterator EMPTY_ITERATOR
           
protected static List EMPTY_LIST
           
 
Fields inherited from class org.dom4j.tree.AbstractDocument
encoding
 
Fields inherited from class org.dom4j.tree.AbstractBranch
DEFAULT_CONTENT_LIST_SIZE
 
Fields inherited from class org.dom4j.tree.AbstractNode
NODE_TYPE_NAMES
 
Fields inherited from interface org.dom4j.Node
ANY_NODE, ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, MAX_NODE_TYPE, NAMESPACE_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, UNKNOWN_NODE
 
Constructor Summary
DefaultDocument()
           
DefaultDocument(DocumentType docType)
           
DefaultDocument(Element rootElement)
           
DefaultDocument(Element rootElement, DocumentType docType)
           
DefaultDocument(String name)
           
DefaultDocument(String name, Element rootElement, DocumentType docType)
           
 
Method Summary
 Document addDocType(String docTypeName, String publicId, String systemId)
          Adds a DOCTYPE declaration to this document
protected  void addNode(int index, Node node)
           
protected  void addNode(Node node)
           
 void clearContent()
          Clears the content for this branch, removing any Node instances this branch may contain.
 Object clone()
           clone will return a deep clone or if this node is read-only then clone will return the same instance.
protected  List contentList()
          DOCUMENT ME!
 DocumentType getDocType()
          DOCUMENT ME!
protected  DocumentFactory getDocumentFactory()
           
 EntityResolver getEntityResolver()
          DOCUMENT ME!
 String getName()
           getName returns the name of this node.
 Element getRootElement()
          Returns the root Elementfor this document.
 String getXMLEncoding()
          Return the encoding of this document, as part of the XML declaration This is null when unspecified or when it is not known (such as when the Document was created in memory) or when the implementation does not support this operation.
 ProcessingInstruction processingInstruction(String target)
          DOCUMENT ME!
 List processingInstructions()
           Returns a list of all the processing instructions in this branch.
 List processingInstructions(String target)
           Returns a list of the processing instructions for the given target.
protected  boolean removeNode(Node node)
           
 boolean removeProcessingInstruction(String target)
          Removes the processing instruction for the given target if it exists
protected  void rootElementAdded(Element element)
          Called to set the root element variable
 void setContent(List content)
          Sets the contents of this branch as a List of Node instances.
 void setDocType(DocumentType docType)
          Sets the DocumentType property
 void setDocumentFactory(DocumentFactory documentFactory)
           
 void setEntityResolver(EntityResolver entityResolver)
          Sets the EntityResolver used to find resolve URIs such as for DTDs, or XML Schema documents
 void setName(String name)
           Sets the text data of this node or this method will throw an UnsupportedOperationException if it is read-only.
 
Methods inherited from class org.dom4j.tree.AbstractDocument
accept, add, addComment, addElement, addElement, addElement, addProcessingInstruction, addProcessingInstruction, asXML, asXPathResult, checkAddElementAllowed, childAdded, childRemoved, getDocument, getNodeType, getPath, getStringValue, getUniquePath, normalize, remove, setRootElement, setXMLEncoding, toString, write
 
Methods inherited from class org.dom4j.tree.AbstractBranch
add, add, add, addElement, appendContent, content, contentRemoved, createContentList, createContentList, createEmptyList, createResultList, createSingleResultList, elementByID, elementID, getContentAsStringValue, getContentAsText, getText, getTextTrim, hasContent, indexOf, invalidNodeTypeAddException, isReadOnly, node, nodeCount, nodeIterator, remove, remove, remove, setProcessingInstructions
 
Methods inherited from class org.dom4j.tree.AbstractNode
createPattern, createXPath, createXPathFilter, createXPathResult, detach, getNodeTypeName, getParent, getPath, getUniquePath, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setParent, setText, supportsParent, valueOf
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.dom4j.Branch
add, add, add, appendContent, content, elementByID, indexOf, node, nodeCount, nodeIterator, remove, remove, remove, setProcessingInstructions
 
Methods inherited from interface org.dom4j.Node
createXPath, detach, getNodeTypeName, getParent, getPath, getText, getUniquePath, hasContent, isReadOnly, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setParent, setText, supportsParent, valueOf
 

Field Detail

EMPTY_LIST

protected static final List EMPTY_LIST

EMPTY_ITERATOR

protected static final Iterator EMPTY_ITERATOR
Constructor Detail

DefaultDocument

public DefaultDocument()

DefaultDocument

public DefaultDocument(String name)

DefaultDocument

public DefaultDocument(Element rootElement)

DefaultDocument

public DefaultDocument(DocumentType docType)

DefaultDocument

public DefaultDocument(Element rootElement,
                       DocumentType docType)

DefaultDocument

public DefaultDocument(String name,
                       Element rootElement,
                       DocumentType docType)
Method Detail

getName

public String getName()
Description copied from interface: Node

getName returns the name of this node. This is the XML local name of the element, attribute, entity or processing instruction. For CDATA and Text nodes this method will return null.

Specified by:
getName in interface Node
Overrides:
getName in class AbstractNode

setName

public void setName(String name)
Description copied from interface: Node

Sets the text data of this node or this method will throw an UnsupportedOperationException if it is read-only.

Specified by:
setName in interface Node
Overrides:
setName in class AbstractNode

getRootElement

public Element getRootElement()
Description copied from interface: Document
Returns the root Elementfor this document.

Returns:
the root element for this document

getDocType

public DocumentType getDocType()
Description copied from interface: Document
DOCUMENT ME!

Returns:
the DocumentType property

setDocType

public void setDocType(DocumentType docType)
Description copied from interface: Document
Sets the DocumentType property

Parameters:
docType - DOCUMENT ME!

addDocType

public Document addDocType(String docTypeName,
                           String publicId,
                           String systemId)
Description copied from interface: Document
Adds a DOCTYPE declaration to this document

Parameters:
docTypeName - is the name of the root element
publicId - is the PUBLIC URI
systemId - is the SYSTEM URI
Returns:
this Document instance.

getXMLEncoding

public String getXMLEncoding()
Description copied from interface: Document
Return the encoding of this document, as part of the XML declaration This is null when unspecified or when it is not known (such as when the Document was created in memory) or when the implementation does not support this operation.

The way this encoding is retrieved also depends on the way the XML source is parsed. For instance, if the SAXReader is used and if the underlying XMLReader implementation support the org.xml.sax.ext.Locator2 interface, the result returned by this method is specified by the getEncoding() method of that interface.

Specified by:
getXMLEncoding in interface Document
Overrides:
getXMLEncoding in class AbstractDocument

getEntityResolver

public EntityResolver getEntityResolver()
Description copied from interface: Document
DOCUMENT ME!

Returns:
the EntityResolver used to find resolve URIs such as for DTDs, or XML Schema documents

setEntityResolver

public void setEntityResolver(EntityResolver entityResolver)
Description copied from interface: Document
Sets the EntityResolver used to find resolve URIs such as for DTDs, or XML Schema documents

Parameters:
entityResolver - DOCUMENT ME!

clone

public Object clone()
Description copied from interface: Node

clone will return a deep clone or if this node is read-only then clone will return the same instance.

Specified by:
clone in interface Node
Overrides:
clone in class AbstractNode

processingInstructions

public List processingInstructions()
Description copied from interface: Branch

Returns a list of all the processing instructions in this branch. The list is backed by this branch so that changes to the list will be reflected in the branch but the reverse is not the case.

Returns:
a backed list of the processing instructions

processingInstructions

public List processingInstructions(String target)
Description copied from interface: Branch

Returns a list of the processing instructions for the given target. The list is backed by this branch so that changes to the list will be reflected in the branch but the reverse is not the case.

Parameters:
target - DOCUMENT ME!
Returns:
a backed list of the processing instructions

processingInstruction

public ProcessingInstruction processingInstruction(String target)
Description copied from interface: Branch
DOCUMENT ME!

Parameters:
target - DOCUMENT ME!
Returns:
the processing instruction for the given target

removeProcessingInstruction

public boolean removeProcessingInstruction(String target)
Description copied from interface: Branch
Removes the processing instruction for the given target if it exists

Parameters:
target - DOCUMENT ME!
Returns:
true if a processing instruction was removed else false

setContent

public void setContent(List content)
Description copied from interface: Branch
Sets the contents of this branch as a List of Node instances.

Parameters:
content - is the list of nodes to use as the content for this branch.

clearContent

public void clearContent()
Description copied from interface: Branch
Clears the content for this branch, removing any Node instances this branch may contain.


setDocumentFactory

public void setDocumentFactory(DocumentFactory documentFactory)

contentList

protected List contentList()
Description copied from class: AbstractBranch
DOCUMENT ME!

Specified by:
contentList in class AbstractBranch
Returns:
the internal List used to manage the content

addNode

protected void addNode(Node node)
Specified by:
addNode in class AbstractBranch

addNode

protected void addNode(int index,
                       Node node)
Specified by:
addNode in class AbstractBranch

removeNode

protected boolean removeNode(Node node)
Specified by:
removeNode in class AbstractBranch

rootElementAdded

protected void rootElementAdded(Element element)
Description copied from class: AbstractDocument
Called to set the root element variable

Specified by:
rootElementAdded in class AbstractDocument
Parameters:
element - DOCUMENT ME!

getDocumentFactory

protected DocumentFactory getDocumentFactory()
Overrides:
getDocumentFactory in class AbstractNode


Copyright © 2001-2005 MetaStuff Ltd.. All Rights Reserved.