org.apache.jackrabbit.core.query
Class PathQueryNode

java.lang.Object
  extended byorg.apache.jackrabbit.core.query.QueryNode
      extended byorg.apache.jackrabbit.core.query.NAryQueryNode
          extended byorg.apache.jackrabbit.core.query.PathQueryNode

public class PathQueryNode
extends NAryQueryNode

Implements a query node that defines a path restriction.


Field Summary
 
Fields inherited from class org.apache.jackrabbit.core.query.NAryQueryNode
operands
 
Fields inherited from class org.apache.jackrabbit.core.query.QueryNode
TYPE_AND, TYPE_DEREF, TYPE_EXACT, TYPE_LOCATION, TYPE_NODETYPE, TYPE_NOT, TYPE_OR, TYPE_ORDER, TYPE_PATH, TYPE_RELATION, TYPE_ROOT, TYPE_TEXTSEARCH
 
Constructor Summary
PathQueryNode(QueryNode parent)
          Creates a relative PathQueryNode with no location steps.
 
Method Summary
 Object accept(QueryNodeVisitor visitor, Object data)
          Accepts a QueryNodeVisitor and calls the apropriate visit method on the visitor depending on the concrete implementation of this QueryNode.
 void addPathStep(LocationStepQueryNode step)
          Adds a path step to this PathQueryNode.
 boolean equals(Object obj)
          Returns true if obj is the same type of QueryNode as this node and is equal to this node.
 LocationStepQueryNode[] getPathSteps()
          Returns an array of all currently set location step nodes.
 int getType()
          Returns the type of this node.
 boolean isAbsolute()
          Returns true if this is an absolute path; false otherwise.
 void setAbsolute(boolean absolute)
          If absolute is true sets this PathQueryNode to an absolute path.
 
Methods inherited from class org.apache.jackrabbit.core.query.NAryQueryNode
acceptOperands, addOperand, getNumOperands, getOperands, removeOperand
 
Methods inherited from class org.apache.jackrabbit.core.query.QueryNode
dump, getParent
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PathQueryNode

public PathQueryNode(QueryNode parent)
Creates a relative PathQueryNode with no location steps.

Parameters:
parent - the parent query node.
Method Detail

accept

public Object accept(QueryNodeVisitor visitor,
                     Object data)
Accepts a QueryNodeVisitor and calls the apropriate visit method on the visitor depending on the concrete implementation of this QueryNode.

Specified by:
accept in class QueryNode
Parameters:
visitor - the visitor to call back.
data - arbitrary data for the visitor.
Returns:
the return value of the visitor.visit() call.

getType

public int getType()
Returns the type of this node.

Specified by:
getType in class QueryNode
Returns:
the type of this node.

addPathStep

public void addPathStep(LocationStepQueryNode step)
Adds a path step to this PathQueryNode.

Parameters:
step - the step to add.

getPathSteps

public LocationStepQueryNode[] getPathSteps()
Returns an array of all currently set location step nodes.

Returns:
an array of all currently set location step nodes.

setAbsolute

public void setAbsolute(boolean absolute)
If absolute is true sets this PathQueryNode to an absolute path. If absolute is false this path is considered relative.

Parameters:
absolute - sets the absolute property to this new value.

isAbsolute

public boolean isAbsolute()
Returns true if this is an absolute path; false otherwise.

Returns:
true if this is an absolute path; false otherwise.

equals

public boolean equals(Object obj)
Description copied from class: QueryNode
Returns true if obj is the same type of QueryNode as this node and is equal to this node.

Overrides:
equals in class NAryQueryNode


Copyright © 2004-2006 The Apache Software Foundation. All Rights Reserved.