public class LocationStepQueryNode extends NAryQueryNode<QueryNode>
/foo -> descendants = false, nameTest = foo
//foo -> descendants = true, nameTest = foo
//* -> descendants = true, nameTest = null
/* -> descendants = false, nameTest = null
/ -> descendants = false, nameTest = ""
Modifier and Type | Field and Description |
---|---|
static Name |
EMPTY_NAME
The empty name used in matching the root node.
|
static int |
LAST
Constant value for position index = last()
|
static int |
NONE
Constant value to indicate no position index
|
operands
TYPE_AND, TYPE_DEREF, TYPE_EXACT, TYPE_LOCATION, TYPE_NODETYPE, TYPE_NOT, TYPE_OR, TYPE_ORDER, TYPE_PATH, TYPE_PROP_FUNCTION, TYPE_RELATION, TYPE_ROOT, TYPE_TEXTSEARCH
Modifier | Constructor and Description |
---|---|
protected |
LocationStepQueryNode(QueryNode parent)
Creates a new
LocationStepQueryNode that matches only the
empty name (the repository root). |
Modifier and Type | Method and Description |
---|---|
Object |
accept(QueryNodeVisitor visitor,
Object data)
Accepts a
QueryNodeVisitor and calls the appropriate visit
method on the visitor depending on the concrete implementation of
this QueryNode . |
void |
addPredicate(QueryNode predicate)
Adds a predicate node to this location step.
|
boolean |
equals(Object obj)
Returns
true if obj is the same type of
QueryNode as this node and is equal to
this node. |
boolean |
getIncludeDescendants()
Returns
true if this location step uses the
descendant-or-self axis, false if this step uses the child
axis. |
int |
getIndex()
Returns the position index for this step.
|
Name |
getNameTest()
Returns the label of the node for this location step, or
null
if the name test is '*'. |
QueryNode[] |
getPredicates()
Returns the predicate nodes for this location step.
|
int |
getType()
Returns the type of this query node.
|
void |
setIncludeDescendants(boolean include)
Sets a new value for the includeDescendants property.
|
void |
setIndex(int index)
Sets the position index for this step.
|
void |
setNameTest(Name nameTest)
Sets a new name test.
|
acceptOperands, addOperand, getNumOperands, getOperands, needsSystemTree, removeOperand
public static final int LAST
public static final int NONE
public static final Name EMPTY_NAME
protected LocationStepQueryNode(QueryNode parent)
LocationStepQueryNode
that matches only the
empty name (the repository root). The created location step uses only the
child axis.parent
- the parent of this query node.public Name getNameTest()
null
if the name test is '*'.public void setNameTest(Name nameTest)
nameTest
- the name test or null
to match all names.public boolean getIncludeDescendants()
true
if this location step uses the
descendant-or-self axis, false
if this step uses the child
axis.true
if this step uses the descendant-or-self axis.public void setIncludeDescendants(boolean include)
include
- the new value.getIncludeDescendants()
public void addPredicate(QueryNode predicate)
predicate
- the node to add.public QueryNode[] getPredicates()
public void setIndex(int index)
NONE
indicates
that this location step has no position index assigned. That is, the
step selects all same name siblings.index
- the position index.public int getIndex()
NONE
indicates
that this location step has no position index assigned. That is, the
step selects all same name siblings.public Object accept(QueryNodeVisitor visitor, Object data) throws RepositoryException
QueryNodeVisitor
and calls the appropriate visit
method on the visitor depending on the concrete implementation of
this QueryNode
.accept
in class QueryNode
visitor
- the visitor to call back.data
- arbitrary data for the visitor.visitor.visit()
call.RepositoryException
public int getType()
public boolean equals(Object obj)
true
if obj
is the same type of
QueryNode
as this
node and is equal to
this
node.equals
in class NAryQueryNode<QueryNode>
obj
- the reference object with which to compare.true
if obj
is equal to
this
; false
otherwise.Copyright © 2004–2022 The Apache Software Foundation. All rights reserved.