public class PackageFunctions extends Object implements Functions
new PackageFunctions("java.util.", "util")
We can now use XPaths like:
"util:Date.new()"new java.util.Date()"util:Collections.singleton('foo')"java.util.Collections.singleton("foo")"util:substring('foo', 1, 2)""foo".substring(1, 2). Note that in
this case, the class prefix is not used. JXPath does not check that
the first parameter of the function (the method target) is in fact
a member of the package described by this PackageFunctions object.
If the first argument of a method or constructor is ExpressionContext,
the expression context in which the function is evaluated is passed to
the method.
There is one PackageFunctions object registered by default with each
JXPathContext. It does not have a namespace and uses no class prefix.
The existence of this object allows us to use XPaths like:
"java.util.Date.new()" and "length('foo')"
without the explicit registration of any extension functions.
| Constructor and Description |
|---|
PackageFunctions(String classPrefix,
String namespace)
Create a new PackageFunctions.
|
| Modifier and Type | Method and Description |
|---|---|
Function |
getFunction(String namespace,
String name,
Object[] parameters)
Returns a
Function, if found, for the specified namespace,
name and parameter types. |
Set |
getUsedNamespaces()
Returns the namespace specified in the constructor
|
public Set getUsedNamespaces()
getUsedNamespaces in interface Functionspublic Function getFunction(String namespace, String name, Object[] parameters)
Function, if found, for the specified namespace,
name and parameter types.
getFunction in interface Functionsnamespace - - if it is not the same as specified in the
construction, this method returns nullname - - name of the method, which can one these forms:
parameters - Object[] of parametersCopyright © 2001–2015 The Apache Software Foundation. All rights reserved.