Overview | Package | Class | Deprecated | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.saxon.functions
Class JavaExtensionFunctionFactory

    java.lang.Object
      net.sf.saxon.functions.JavaExtensionFunctionFactory

All Implemented Interfaces:
  Serializable, ExtensionFunctionFactory

    public class JavaExtensionFunctionFactory

extends Object
implements ExtensionFunctionFactory, Serializable

This class acts as a factory for creating expressions that call Java extension functions. A different factory may be registered with the Configuration in order to customize the behaviour. Alternatively, this factory class can be customized by calling setExtensionFunctionClass to nominate a subclass of ExtensionFunctionCall to be used to implement calls on extension functions.

Note that this class handles Java extension functions only; a different class, DotNetExtensionFunctionFactory, is used for .NET extensions.

See Also:
  Serialized Form

Constructor Summary
`JavaExtensionFunctionFactory(Configuration config)`

Method Summary
`Expression` | `makeExtensionFunctionCall(int nameCode, Class theClass, AccessibleObject method, Expression[] arguments)` Factory method to create an expression that calls a Java extension function.
`void` | `setExtensionFunctionClass(Class subclass)` Set the class to be used to represent extension function calls.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JavaExtensionFunctionFactory

    public JavaExtensionFunctionFactory(Configuration config)

Method Detail

### setExtensionFunctionClass

    public void setExtensionFunctionClass(Class subclass)

  Set the class to be used to represent extension function calls. This must be a subclass of `ExtensionFunctionCall`

  Parameters:
    `subclass` - the subclass of ExtensionFunctionCall to be used

### makeExtensionFunctionCall

    public Expression makeExtensionFunctionCall(int nameCode,
                                                Class theClass,
                                                AccessibleObject method,
                                                Expression[] arguments)

  Factory method to create an expression that calls a Java extension function. This is always called at XPath compile time.

  Parameters:
    `nameCode` - the name of the function name, as represented in the name pool
    `theClass` - the Java class containing the extension function
    `method` - The "accessibleObject" representing a constructor, method, or field corresponding to the extension function
    `arguments` - Array containing the expressions supplied as arguments to the function call.
  Returns:
    the constructed ExtensionFunctionCall object (a subclass might return any expression representing the extension function call).

Overview | Package | Class | Deprecated | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (C) Michael H. Kay. All rights reserved.