com.fatdog.xmlEngine
Class NodeTree
java.lang.Object
com.fatdog.xmlEngine.NodeTree
- Direct Known Subclasses:
- ConstructedNodes, QueryDocumentTree
- public class NodeTree
- extends java.lang.Object
A dynamic array structure for storing a collection of nodes from a single indexed document.
- Version:
- 0.66
- Author:
- Howard Katz, howardk@fatdog.com
Constructor Summary |
NodeTree(IndexManager indexManager,
int numInitialEntries,
int allocationPolicy)
|
Method Summary |
void |
addAttributeNode(int namespaceIx,
int[] key,
java.lang.String text,
int parent)
|
void |
addElementNode(int namespaceIx,
int[] key,
int parent,
int priorSibling)
|
int |
addElementTextNode(char[] buff,
int start,
int numChars,
int parent,
int priorSibling)
|
java.lang.StringBuffer |
asString(int node)
|
java.lang.StringBuffer |
asString(int node,
boolean addInterTextSpaces)
|
java.lang.String |
attributeText(int base)
|
int[] |
countNodeTypes()
|
boolean |
elementHasContent(int elementNodeIx)
|
void |
emitXml(int node,
java.io.PrintWriter w,
boolean prettyPrint)
|
DocItems |
evalAncestor(DocItems descDoc,
DocItems ancestorDoc,
IntList newDescList)
|
DocItems |
evalAncestor(DocItems descDoc,
DocItems ancestorDoc,
IntList newDescList,
boolean allowSelfMatches)
|
DocItems |
evalParent_(DocItems childDoc,
DocItems parentDoc,
boolean isPredicate)
|
DocItems |
evalParent(DocItems childDoc,
DocItems parentDoc,
boolean isPredicate)
|
java.lang.String |
getAttributeName(int nodeID)
|
java.lang.String |
getAttributeText(int attrNode)
|
java.lang.StringBuffer |
getAttrTextBuffer()
|
java.lang.String |
getElementName(int nodeID)
|
java.lang.String |
getElementText(int node)
|
java.lang.StringBuffer |
getElemTextBuffer()
|
int |
getId()
|
IndexManager |
getIndexManager()
|
int[] |
getKeys(int node)
|
int |
getLastAddedNode()
|
int |
getLocalKey(int node)
|
int[] |
getNameKeys_base(int base)
|
int[] |
getNameKeys(int node)
|
int |
getNamespaceIndex(int node)
|
int |
getNodeCount()
|
int |
getParent_BASE(int base)
|
int |
getParent(int i)
|
short |
getPrefixKey(int node)
|
int[] |
getRawTree()
|
int |
getType(int i)
|
boolean |
isFirstSibling_BASE(int base)
|
boolean |
isLastSibling(int node)
|
int |
namedAncestor(int[] ancestKey,
int nodeType,
IntList descendList)
|
DocItems |
namedChildOfParent(int[] key,
int childType,
DocItems parents,
boolean isPredicate)
|
DocItems |
newLeafNodeList(int nodeType,
int[] key)
|
DocItems |
newNamedNodesAtRoot(int[] keys)
|
DocItems |
newNamedParentOfNamedChild(int[] parentKeys,
int[] childKeys,
int nodeType,
boolean isPredicate)
|
DocItems |
newParentOf(int type,
int[] key)
|
DocItems |
newSiblingList(int siblingType,
int[] keys)
|
int |
numAttributesOnElement(int elementNodeIx)
|
void |
printNode(int level,
int base,
int type,
java.lang.StringBuffer sb)
|
void |
printNode(int base,
int type,
java.lang.StringBuffer sb)
|
long |
serialize(java.io.DataOutputStream out)
|
void |
setElemTextBuffer(java.lang.StringBuffer textBuffer)
|
void |
setId(int id)
|
void |
singleNewline(int node,
boolean atStart)
|
int |
sizeTextBuffer(int bufferType)
|
java.lang.String |
string(int[] valueType)
|
java.lang.String |
string(int[] valueType,
boolean addInterTextSpaces)
|
DocItems |
subscript(int subscript)
|
java.lang.String |
toString()
|
void |
trim()
|
int |
type(int i)
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
NS_SHIFT
public static int NS_SHIFT
NS_MASK
public static int NS_MASK
DOC_NODE
public static final int DOC_NODE
- See Also:
- Constant Field Values
ELEM
public static final int ELEM
- See Also:
- Constant Field Values
ATTR
public static final int ATTR
- See Also:
- Constant Field Values
TEXT
public static final int TEXT
- See Also:
- Constant Field Values
ALL_NODES
public static final int ALL_NODES
- See Also:
- Constant Field Values
ATEXT_IX_TYPE
public static final int ATEXT_IX_TYPE
- See Also:
- Constant Field Values
TYPE
public static final int TYPE
- See Also:
- Constant Field Values
PREFIX_KEY
public static final int PREFIX_KEY
- See Also:
- Constant Field Values
LOCAL_KEY
public static final int LOCAL_KEY
- See Also:
- Constant Field Values
E_TEXT_FROM_CHAR
public static final int E_TEXT_FROM_CHAR
- See Also:
- Constant Field Values
E_TEXT_TO_CHAR
public static final int E_TEXT_TO_CHAR
- See Also:
- Constant Field Values
PARENT
public static final int PARENT
- See Also:
- Constant Field Values
VOIDED_NODE
public static final int VOIDED_NODE
- See Also:
- Constant Field Values
INTS_PER_ENTRY
public static final int INTS_PER_ENTRY
- See Also:
- Constant Field Values
NodeTree
public NodeTree(IndexManager indexManager,
int numInitialEntries,
int allocationPolicy)
getIndexManager
public IndexManager getIndexManager()
setId
public void setId(int id)
getId
public int getId()
getType
public int getType(int i)
type
public int type(int i)
getKeys
public int[] getKeys(int node)
getNameKeys_base
public int[] getNameKeys_base(int base)
getNameKeys
public int[] getNameKeys(int node)
getNamespaceIndex
public int getNamespaceIndex(int node)
getPrefixKey
public short getPrefixKey(int node)
getLocalKey
public int getLocalKey(int node)
getParent
public int getParent(int i)
getParent_BASE
public int getParent_BASE(int base)
isFirstSibling_BASE
public boolean isFirstSibling_BASE(int base)
isLastSibling
public boolean isLastSibling(int node)
getAttributeName
public java.lang.String getAttributeName(int nodeID)
getElementName
public java.lang.String getElementName(int nodeID)
getRawTree
public int[] getRawTree()
addElementNode
public void addElementNode(int namespaceIx,
int[] key,
int parent,
int priorSibling)
addAttributeNode
public void addAttributeNode(int namespaceIx,
int[] key,
java.lang.String text,
int parent)
addElementTextNode
public int addElementTextNode(char[] buff,
int start,
int numChars,
int parent,
int priorSibling)
singleNewline
public void singleNewline(int node,
boolean atStart)
getLastAddedNode
public int getLastAddedNode()
getNodeCount
public int getNodeCount()
countNodeTypes
public int[] countNodeTypes()
getElemTextBuffer
public java.lang.StringBuffer getElemTextBuffer()
getAttrTextBuffer
public java.lang.StringBuffer getAttrTextBuffer()
setElemTextBuffer
public void setElemTextBuffer(java.lang.StringBuffer textBuffer)
sizeTextBuffer
public int sizeTextBuffer(int bufferType)
printNode
public void printNode(int level,
int base,
int type,
java.lang.StringBuffer sb)
printNode
public void printNode(int base,
int type,
java.lang.StringBuffer sb)
trim
public void trim()
attributeText
public java.lang.String attributeText(int base)
getAttributeText
public java.lang.String getAttributeText(int attrNode)
numAttributesOnElement
public int numAttributesOnElement(int elementNodeIx)
elementHasContent
public boolean elementHasContent(int elementNodeIx)
getElementText
public java.lang.String getElementText(int node)
namedAncestor
public int namedAncestor(int[] ancestKey,
int nodeType,
IntList descendList)
namedChildOfParent
public DocItems namedChildOfParent(int[] key,
int childType,
DocItems parents,
boolean isPredicate)
newNamedParentOfNamedChild
public DocItems newNamedParentOfNamedChild(int[] parentKeys,
int[] childKeys,
int nodeType,
boolean isPredicate)
newNamedNodesAtRoot
public DocItems newNamedNodesAtRoot(int[] keys)
newLeafNodeList
public DocItems newLeafNodeList(int nodeType,
int[] key)
newSiblingList
public DocItems newSiblingList(int siblingType,
int[] keys)
newParentOf
public DocItems newParentOf(int type,
int[] key)
toString
public java.lang.String toString()
evalAncestor
public DocItems evalAncestor(DocItems descDoc,
DocItems ancestorDoc,
IntList newDescList)
evalAncestor
public DocItems evalAncestor(DocItems descDoc,
DocItems ancestorDoc,
IntList newDescList,
boolean allowSelfMatches)
evalParent
public DocItems evalParent(DocItems childDoc,
DocItems parentDoc,
boolean isPredicate)
evalParent_
public DocItems evalParent_(DocItems childDoc,
DocItems parentDoc,
boolean isPredicate)
emitXml
public void emitXml(int node,
java.io.PrintWriter w,
boolean prettyPrint)
subscript
public DocItems subscript(int subscript)
asString
public java.lang.StringBuffer asString(int node)
asString
public java.lang.StringBuffer asString(int node,
boolean addInterTextSpaces)
string
public java.lang.String string(int[] valueType)
string
public java.lang.String string(int[] valueType,
boolean addInterTextSpaces)
serialize
public long serialize(java.io.DataOutputStream out)
throws java.io.IOException
- Throws:
java.io.IOException