Interface ExprNode
-
- All Superinterfaces:
Cloneable
- All Known Implementing Classes:
AbstractExprNode
,AndNode
,ApproximateNode
,AssertionNode
,BranchNode
,EqualityNode
,ExtensibleNode
,GreaterEqNode
,LeafNode
,LessEqNode
,NotNode
,ObjectClassNode
,OrNode
,PresenceNode
,ScopeNode
,SimpleNode
,SubstringNode
,UndefinedNode
public interface ExprNode extends Cloneable
Root expression node interface which all expression nodes in the filter expression tree implement.- Author:
- Apache Directory Project
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Object
accept(FilterVisitor visitor)
Element/node accept method for visitor pattern.ExprNode
clone()
Clone this expression node.Object
get(Object key)
Gets an annotation on the tree by key.AssertionType
getAssertionType()
Gets the assertion type of this node.boolean
isLeaf()
Tests to see if this node is a leaf or branch node.boolean
isSchemaAware()
Tells if this Node is Schema aware.StringBuilder
printRefinementToBuffer(StringBuilder buf)
Recursively appends the refinement string representation of this node and its descendants in prefix notation to a buffer.void
set(String key, Object value)
Sets a annotation key to a value.
-
-
-
Method Detail
-
get
Object get(Object key)
Gets an annotation on the tree by key.- Parameters:
key
- the annotation key.- Returns:
- the annotation value.
-
set
void set(String key, Object value)
Sets a annotation key to a value.- Parameters:
key
- the annotation key.value
- the annotation value.
-
isLeaf
boolean isLeaf()
Tests to see if this node is a leaf or branch node.- Returns:
- true if the node is a leaf,false otherwise
-
isSchemaAware
boolean isSchemaAware()
Tells if this Node is Schema aware.- Returns:
- true if the Node is SchemaAware
-
getAssertionType
AssertionType getAssertionType()
Gets the assertion type of this node. Make it possible to use switch statements on the node type.- Returns:
- the assertion type
-
printRefinementToBuffer
StringBuilder printRefinementToBuffer(StringBuilder buf)
Recursively appends the refinement string representation of this node and its descendants in prefix notation to a buffer.- Parameters:
buf
- the buffer to append to.- Returns:
- The buffer in which the refinement has been appended
- Throws:
UnsupportedOperationException
- if this node isn't a part of a refinement.
-
accept
Object accept(FilterVisitor visitor)
Element/node accept method for visitor pattern.- Parameters:
visitor
- the filter expression tree structure visitor- Returns:
- the modified element
-
-