Package org.apache.commons.jxpath
Class ClassFunctions
java.lang.Object
org.apache.commons.jxpath.ClassFunctions
- All Implemented Interfaces:
Functions
Extension functions provided by a Java class.
Let's say we declared a ClassFunction like this:
We can now use XPaths like:new ClassFunctions(Integer.class, "int")
"int:new(3)"
- Equivalent to
Integer.valueOf(3)
"int:getInteger('foo')"
- Equivalent to
Integer.getInteger("foo")
"int:floatValue(int:new(4))"
- Equivalent to
Integer.valueOf(4).floatValue()
If the first argument of a method is ExpressionContext
, the expression context in which the function is evaluated is passed to the method.
-
Constructor Summary
ConstructorsConstructorDescriptionClassFunctions
(Class functionClass, String namespace) Constructs a new ClassFunctions. -
Method Summary
Modifier and TypeMethodDescriptiongetFunction
(String namespace, String name, Object[] parameters) Returns aFunction
, if any, for the specified namespace, name and parameter types.Returns a set of one namespace - the one specified in the constructor.
-
Constructor Details
-
ClassFunctions
Constructs a new ClassFunctions.- Parameters:
functionClass
- Class providing the functionsnamespace
- assigned ns
-
-
Method Details
-
getFunction
Returns aFunction
, if any, for the specified namespace, name and parameter types.- Specified by:
getFunction
in interfaceFunctions
- Parameters:
namespace
- if it is not the namespace specified in the constructor, the method returns nullname
- is a function name or "new" for a constructor.parameters
- Object[] of parameters- Returns:
- a MethodFunction, a ConstructorFunction or null if there is no such function.
-
getUsedNamespaces
Returns a set of one namespace - the one specified in the constructor.- Specified by:
getUsedNamespaces
in interfaceFunctions
- Returns:
- a singleton
-