appendChild
public void appendChild(int parentIndex,
int childIndex)
Appends a child to the specified parent in the table.
binarySearch
protected static int binarySearch(values[] ,
int start,
int end,
int target)
Performs a binary search for a target value in an array of
values. The array of values must be in ascending sorted order
before calling this method and all array values must be
non-negative.
start
- The starting offset of the search.end
- The ending offset of the search.target
- The target value.
- This function will return the first occurrence
of the target value, or -1 if the target value cannot
be found.
cloneNode
public int cloneNode(int nodeIndex,
boolean deep)
Creates a clone of the specified node.
createDeferredAttribute
public int createDeferredAttribute(String attrName,
String attrURI,
String attrValue,
boolean specified)
Creates an attribute with a URI in the table.
createDeferredAttribute
public int createDeferredAttribute(String attrName,
String attrValue,
boolean specified)
Creates an attribute in the table.
createDeferredCDATASection
public int createDeferredCDATASection(String data)
Creates a CDATA section node in the table.
createDeferredComment
public int createDeferredComment(String data)
Creates a comment node in the table.
createDeferredDocument
public int createDeferredDocument()
Creates a document node in the table.
createDeferredDocumentType
public int createDeferredDocumentType(String rootElementName,
String publicId,
String systemId)
Creates a doctype.
createDeferredElement
public int createDeferredElement(String elementName)
createDeferredElement
public int createDeferredElement(String elementURI,
String elementName)
createDeferredElement
public int createDeferredElement(String elementURI,
String elementName,
Object type)
Creates an element node with a URI in the table and type information.
createDeferredElementDefinition
public int createDeferredElementDefinition(String elementName)
Creates an element definition in the table.
createDeferredEntity
public int createDeferredEntity(String entityName,
String publicId,
String systemId,
String notationName,
String baseURI)
Creates an entity in the table.
createDeferredEntityReference
public int createDeferredEntityReference(String name,
String baseURI)
Creates an entity reference node in the table.
createDeferredNotation
public int createDeferredNotation(String notationName,
String publicId,
String systemId,
String baseURI)
Creates a notation in the table.
createDeferredProcessingInstruction
public int createDeferredProcessingInstruction(String target,
String data)
Creates a processing instruction node in the table.
createDeferredTextNode
public int createDeferredTextNode(String data,
boolean ignorableWhitespace)
Creates a text node in the table.
createNode
protected int createNode(short nodeType)
Creates a node of the specified type.
ensureCapacity
protected void ensureCapacity(int chunk)
Ensures that the internal tables are large enough.
getAttribute
public String getAttribute(int elemIndex,
String name)
Returns the attribute value of the given name.
getDeferredEntityBaseURI
public String getDeferredEntityBaseURI(int entityIndex)
getImplementation
public DOMImplementation getImplementation()
Retrieve information describing the abilities of this particular
DOM implementation. Intended to support applications that may be
using DOMs retrieved from several different sources, potentially
with different underlying representations.
- getImplementation in interface DocumentImpl
getLastChild
public int getLastChild(int nodeIndex)
Returns the last child of the given node.
getLastChild
public int getLastChild(int nodeIndex,
boolean free)
Returns the last child of the given node.
free
- True to free child index.
getNodeExtra
public int getNodeExtra(int nodeIndex)
Returns the extra info of the given node.
Used by AttrImpl to store specified value (1 == true).
getNodeExtra
public int getNodeExtra(int nodeIndex,
boolean free)
Returns the extra info of the given node.
free
- True to free the value index.
getNodeName
public String getNodeName(int nodeIndex)
Returns the name of the given node.
getNodeName
public String getNodeName(int nodeIndex,
boolean free)
Returns the name of the given node.
free
- True to free the string index.
getNodeObject
public DeferredNode getNodeObject(int nodeIndex)
Instantiates the requested node object.
getNodeType
public short getNodeType(int nodeIndex)
Returns the type of the given node.
getNodeType
public short getNodeType(int nodeIndex,
boolean free)
Returns the type of the given node.
free
- True to free type index.
getNodeURI
public String getNodeURI(int nodeIndex)
Returns the URI of the given node.
getNodeURI
public String getNodeURI(int nodeIndex,
boolean free)
Returns the URI of the given node.
free
- True to free URI index.
getNodeValue
public String getNodeValue(int nodeIndex)
Returns the value of the given node.
getNodeValue
public String getNodeValue(int nodeIndex,
boolean free)
Returns the value of the given node.
free
- True to free the value index.
getNodeValueString
public String getNodeValueString(int nodeIndex)
Returns the real value of the given node.
getNodeValueString
public String getNodeValueString(int nodeIndex,
boolean free)
Returns the real value of the given node.
free
- True to free the string index.
getParentNode
public int getParentNode(int nodeIndex)
Returns the parent node of the given node.
Calling this method does not free the parent index.
getParentNode
public int getParentNode(int nodeIndex,
boolean free)
Returns the parent node of the given node.
free
- True to free parent node.
getPrevSibling
public int getPrevSibling(int nodeIndex)
Returns the prev sibling of the given node.
This is post-normalization of Text Nodes.
getPrevSibling
public int getPrevSibling(int nodeIndex,
boolean free)
Returns the prev sibling of the given node.
free
- True to free sibling index.
getRealPrevSibling
public int getRealPrevSibling(int nodeIndex)
Returns the real prev sibling of the given node,
directly from the data structures. Used by TextImpl#getNodeValue()
to normalize values.
getRealPrevSibling
public int getRealPrevSibling(int nodeIndex,
boolean free)
Returns the real prev sibling of the given node.
free
- True to free sibling index.
getTypeInfo
public Object getTypeInfo(int nodeIndex)
Clears the type info that is stored in the fNodeValue array
- Object - type information for the attribute/element node
insertBefore
public int insertBefore(int parentIndex,
int newChildIndex,
int refChildIndex)
Inserts a child before the specified node in the table.
lookupElementDefinition
public int lookupElementDefinition(String elementName)
Returns the index of the element definition in the table
with the specified name index, or -1 if no such definition
exists.
print
public void print()
Prints out the tables.
putIdentifier
public void putIdentifier(String name,
int elementNodeIndex)
Registers an identifier name with a specified element node.
setAsLastChild
public void setAsLastChild(int parentIndex,
int childIndex)
Sets the last child of the parentIndex to childIndex.
setAttributeNode
public int setAttributeNode(int elemIndex,
int attrIndex)
Adds an attribute node to the specified element.
setDeferredAttribute
public int setDeferredAttribute(int elementNodeIndex,
String attrName,
String attrURI,
String attrValue,
boolean specified)
setDeferredAttribute
public int setDeferredAttribute(int elementNodeIndex,
String attrName,
String attrURI,
String attrValue,
boolean specified,
boolean id,
Object type)
This method is used by the DOMParser to create attributes.
elementNodeIndex
- attrName
- attrURI
- attrValue
- specified
- id
- type
-
setEntityInfo
public void setEntityInfo(int currentEntityDecl,
String version,
String encoding)
setIdAttribute
public void setIdAttribute(int attrIndex)
Sets type of attribute
setIdAttributeNode
public void setIdAttributeNode(int elemIndex,
int attrIndex)
Adds an attribute node to the specified element.
setInputEncoding
public void setInputEncoding(int currentEntityDecl,
String value)
DOM Internal
An attribute specifying the actual encoding of this document. This is
null
otherwise.
This attribute represents the property [character encoding scheme]
defined in .
setInternalSubset
public void setInternalSubset(int doctypeIndex,
String subset)
synchronizeChildren
protected void synchronizeChildren()
Synchronizes the node's children with the internal structure.
Fluffing the children at once solves a lot of work to keep
the two structures in sync. The problem gets worse when
editing the tree -- this makes it a lot easier.
- synchronizeChildren in interface ParentNode
synchronizeChildren
protected final void synchronizeChildren(AttrImpl a,
int nodeIndex)
Synchronizes the node's children with the internal structure.
Fluffing the children at once solves a lot of work to keep
the two structures in sync. The problem gets worse when
editing the tree -- this makes it a lot easier.
This is not directly used in this class but this method is
here so that it can be shared by all deferred subclasses of AttrImpl.
synchronizeChildren
protected final void synchronizeChildren(ParentNode p,
int nodeIndex)
Synchronizes the node's children with the internal structure.
Fluffing the children at once solves a lot of work to keep
the two structures in sync. The problem gets worse when
editing the tree -- this makes it a lot easier.
This is not directly used in this class but this method is
here so that it can be shared by all deferred subclasses of ParentNode.