Package org.apache.commons.jxpath
Interface ExpressionContext
- All Known Implementing Classes:
AncestorContext,AttributeContext,ChildContext,DescendantContext,EvalContext,InitialContext,NamespaceContext,NodeSetContext,ParentContext,PrecedingOrFollowingContext,PredicateContext,RootContext,SelfContext,UnionContext
public interface ExpressionContext
If an extenstion function has an argument of type ExpressionContext, it can gain access to the current node of an XPath expression context.
Example:
public class MyExtenstionFunctions {
public static String objectType(ExpressionContext context) {
Object value = context.getContextNodePointer().getValue();
if (value == null) {
return "null";
}
return value.getClass().getName();
}
}
You can then register this extension function using a ClassFunctions object and call it like this: This expression will find all nodes of the graph that are dates."/descendent-or-self::node()[ns:objectType() = 'java.util.Date']"
-
Method Summary
Modifier and TypeMethodDescriptionGets the current context node list.Gets the current context node.Gets the JXPathContext in which this function is being evaluated.intReturns the current context position.
-
Method Details
-
getContextNodeList
Gets the current context node list. Each element of the list is a Pointer.- Returns:
- A list representing the current context nodes.
-
getContextNodePointer
Gets the current context node.- Returns:
- The current context node pointer.
-
getJXPathContext
Gets the JXPathContext in which this function is being evaluated.- Returns:
- A list representing the current context nodes.
-
getPosition
int getPosition()Returns the current context position.- Returns:
- int
-