org.exist.dom
Class EmptyNodeSet

java.lang.Object
  extended by org.exist.xquery.value.AbstractSequence
      extended by org.exist.dom.AbstractNodeSet
          extended by org.exist.dom.EmptyNodeSet
All Implemented Interfaces:
NodeSet, Sequence, NodeList

public final class EmptyNodeSet
extends AbstractNodeSet


Field Summary
static org.exist.dom.EmptyNodeSet.EmptyNodeSetIterator EMPTY_ITERATOR
           
 
Fields inherited from interface org.exist.dom.NodeSet
ANCESTOR, DESCENDANT, EMPTY_SET, FOLLOWING, PRECEDING
 
Fields inherited from interface org.exist.xquery.value.Sequence
EMPTY_SEQUENCE
 
Constructor Summary
EmptyNodeSet()
           
 
Method Summary
 void add(DocumentImpl doc, long nodeId)
           
 void add(Node node)
           
 void add(NodeProxy proxy)
          Add a new proxy object to the node set.
 void addAll(NodeList other)
           
 void addAll(NodeSet other)
          Add all nodes from the given node set.
 boolean contains(DocumentImpl doc)
           
 boolean contains(DocumentImpl doc, long nodeId)
           
 boolean contains(NodeProxy proxy)
          Check if this node set contains a node matching the document and node-id of the given NodeProxy object.
 NodeSet deepIntersection(NodeSet other)
          Return a new node set, containing all nodes in this node set that are contained or have descendants in the other node set.
 NodeProxy get(DocumentImpl doc, NodeId nodeId)
           
 NodeProxy get(int pos)
          Get the node at position pos within this node set.
 NodeProxy get(NodeProxy proxy)
          Get a node from this node set matching the document and node id of the given NodeProxy.
 int getItemCount()
          Returns the number of items contained in the sequence.
 int getLength()
          Return the number of nodes contained in this node set.
 boolean hasOne()
          Returns whether the sequence has just one item or not.
 NodeSet intersection(NodeSet other)
          Return a new node set, which represents the intersection of the current node set with the given node set.
 boolean isEmpty()
          Returns whether the sequence is empty or not.
 Node item(int pos)
           
 Item itemAt(int pos)
          Returns the item located at the specified position within this sequence.
 SequenceIterator iterate()
          Returns an iterator over all items in the sequence.
 NodeSetIterator iterator()
          Return an iterator on the nodes in this list.
 NodeProxy parentWithChild(DocumentImpl doc, NodeId nodeId, boolean directParent, boolean includeSelf)
          Check if the node identified by its node id has an ancestor contained in this node set and return the ancestor found.
 void remove(NodeProxy node)
           
 NodeSet union(NodeSet other)
          Return a new node set which represents the union of the current node set and the given node set.
 SequenceIterator unorderedIterator()
          Returns an iterator over all items in the sequence.
 
Methods inherited from class org.exist.dom.AbstractNodeSet
add, add, addAll, clearContext, directSelectAttribute, except, filterDocuments, getAncestors, getCollectionIterator, getContextNodes, getDocumentSet, getIndexType, getItemType, getParents, getProcessInReverseOrder, getSizeHint, getState, hasChanged, hasMixedContent, hasTextIndex, isCached, isPersistentSet, nodeMoved, parentWithChild, removeDuplicates, selectAncestorDescendant, selectAncestors, selectFollowing, selectFollowingSiblings, selectParentChild, selectParentChild, selectPreceding, selectPrecedingSiblings, setIsCached, setProcessInReverseOrder, toNodeSet, toString
 
Methods inherited from class org.exist.xquery.value.AbstractSequence
conversionPreference, convertTo, effectiveBooleanValue, getCardinality, getStringValue, hasMany, isCacheable, setSelfAsContext, toJavaObject
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.exist.xquery.value.Sequence
conversionPreference, convertTo, effectiveBooleanValue, getCardinality, getStringValue, hasMany, isCacheable, setSelfAsContext, toJavaObject
 

Field Detail

EMPTY_ITERATOR

public static final org.exist.dom.EmptyNodeSet.EmptyNodeSetIterator EMPTY_ITERATOR
Constructor Detail

EmptyNodeSet

public EmptyNodeSet()
Method Detail

iterator

public NodeSetIterator iterator()
Description copied from class: AbstractNodeSet
Return an iterator on the nodes in this list. The iterator returns nodes according to the internal ordering of nodes (i.e. level first), not in document- order.

Specified by:
iterator in interface NodeSet
Specified by:
iterator in class AbstractNodeSet

iterate

public SequenceIterator iterate()
                         throws XPathException
Description copied from interface: Sequence
Returns an iterator over all items in the sequence. The items are returned in document order where applicable.

Specified by:
iterate in interface Sequence
Specified by:
iterate in class AbstractNodeSet
Throws:
XPathException - TODO

unorderedIterator

public SequenceIterator unorderedIterator()
Description copied from interface: Sequence
Returns an iterator over all items in the sequence. The returned items may - but need not - to be in document order.

Specified by:
unorderedIterator in interface Sequence
Specified by:
unorderedIterator in class AbstractNodeSet

contains

public boolean contains(DocumentImpl doc,
                        long nodeId)

contains

public boolean contains(NodeProxy proxy)
Description copied from class: AbstractNodeSet
Check if this node set contains a node matching the document and node-id of the given NodeProxy object.

Specified by:
contains in interface NodeSet
Specified by:
contains in class AbstractNodeSet

contains

public boolean contains(DocumentImpl doc)

isEmpty

public boolean isEmpty()
Description copied from interface: Sequence
Returns whether the sequence is empty or not.

Specified by:
isEmpty in interface Sequence
Specified by:
isEmpty in class AbstractSequence
Returns:
true is the sequence is empty

hasOne

public boolean hasOne()
Description copied from interface: Sequence
Returns whether the sequence has just one item or not.

Specified by:
hasOne in interface Sequence
Specified by:
hasOne in class AbstractSequence
Returns:
true is the sequence has just one item

add

public void add(DocumentImpl doc,
                long nodeId)

add

public void add(Node node)

add

public void add(NodeProxy proxy)
Description copied from class: AbstractNodeSet
Add a new proxy object to the node set. Please note: node set implementations may allow duplicates.

Specified by:
add in interface NodeSet
Specified by:
add in class AbstractNodeSet

addAll

public void addAll(NodeList other)

addAll

public void addAll(NodeSet other)
Description copied from class: AbstractNodeSet
Add all nodes from the given node set.

Specified by:
addAll in interface NodeSet
Specified by:
addAll in class AbstractNodeSet

remove

public void remove(NodeProxy node)

getLength

public int getLength()
Description copied from class: AbstractNodeSet
Return the number of nodes contained in this node set.

Specified by:
getLength in interface NodeList
Specified by:
getLength in class AbstractNodeSet

getItemCount

public int getItemCount()
Description copied from interface: Sequence
Returns the number of items contained in the sequence. Call this method only when necessary, since it can be resource consuming.

Specified by:
getItemCount in interface Sequence
Specified by:
getItemCount in class AbstractSequence
Returns:
The number of items in the sequence

item

public Node item(int pos)
Specified by:
item in interface NodeList
Specified by:
item in class AbstractNodeSet

itemAt

public Item itemAt(int pos)
Description copied from interface: Sequence
Returns the item located at the specified position within this sequence. Items are counted beginning at 0.

Specified by:
itemAt in interface Sequence
Specified by:
itemAt in class AbstractSequence

get

public NodeProxy get(int pos)
Description copied from class: AbstractNodeSet
Get the node at position pos within this node set.

Specified by:
get in interface NodeSet
Specified by:
get in class AbstractNodeSet

get

public NodeProxy get(DocumentImpl doc,
                     NodeId nodeId)

parentWithChild

public NodeProxy parentWithChild(DocumentImpl doc,
                                 NodeId nodeId,
                                 boolean directParent,
                                 boolean includeSelf)
Description copied from interface: NodeSet
Check if the node identified by its node id has an ancestor contained in this node set and return the ancestor found. If directParent is true, only immediate ancestors (parents) are considered. Otherwise the method will call itself recursively for all the node's parents. If includeSelf is true, the method returns also true if the node itself is contained in the node set.

Specified by:
parentWithChild in interface NodeSet
Overrides:
parentWithChild in class AbstractNodeSet

get

public NodeProxy get(NodeProxy proxy)
Description copied from class: AbstractNodeSet
Get a node from this node set matching the document and node id of the given NodeProxy.

Specified by:
get in interface NodeSet
Specified by:
get in class AbstractNodeSet

intersection

public NodeSet intersection(NodeSet other)
Description copied from class: AbstractNodeSet
Return a new node set, which represents the intersection of the current node set with the given node set.

Specified by:
intersection in interface NodeSet
Overrides:
intersection in class AbstractNodeSet

deepIntersection

public NodeSet deepIntersection(NodeSet other)
Description copied from interface: NodeSet
Return a new node set, containing all nodes in this node set that are contained or have descendants in the other node set.

Specified by:
deepIntersection in interface NodeSet
Overrides:
deepIntersection in class AbstractNodeSet

union

public NodeSet union(NodeSet other)
Description copied from class: AbstractNodeSet
Return a new node set which represents the union of the current node set and the given node set.

Specified by:
union in interface NodeSet
Overrides:
union in class AbstractNodeSet


Copyright (C) Wolfgang Meier. All rights reserved.