org.apache.commons.jxpath

Class ClassFunctions

Implemented Interfaces:
Functions

public class ClassFunctions
extends java.lang.Object
implements Functions

Extension functions provided by a Java class. Let's say, we declared a ClassFunction like this:
     new ClassFunctions(Integer.class, "int")
 
We can now use XPaths like:
"int:new(3)"
new Integer(3)
"int:getInteger('foo')"
Integer.getInteger("foo")
"int:floatValue(int:new(4))"
new Integer(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.

Version:
$Revision: 1.9 $ $Date: 2004/02/29 14:17:42 $
Author:
Dmitri Plotnikov

Constructor Summary

ClassFunctions(Class functionClass, String namespace)

Method Summary

Function
getFunction(String namespace, String name, Object[] parameters)
Returns a Function, if any, for the specified namespace, name and parameter types.
Set
getUsedNamespaces()
Returns a set of one namespace - the one specified in the constructor.

Constructor Details

ClassFunctions

public ClassFunctions(Class functionClass,
                      String namespace)

Method Details

getFunction

public Function getFunction(String namespace,
                            String name,
                            Object[] parameters)
Returns a Function, if any, for the specified namespace, name and parameter types.
Specified by:
getFunction in interface Functions
Parameters:
namespace - if it is not the namespace specified in the constructor, the method returns null
name - is a function name or "new" for a constructor.
Returns:
a MethodFunction, a ConstructorFunction or null if there is no such function.

getUsedNamespaces

public Set getUsedNamespaces()
Returns a set of one namespace - the one specified in the constructor.
Specified by:
getUsedNamespaces in interface Functions