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

## org.jaxen
Class SimpleFunctionContext

    java.lang.Object
      org.jaxen.SimpleFunctionContext

All Implemented Interfaces:
  FunctionContext

Direct Known Subclasses:
  XPathFunctionContext

public class SimpleFunctionContext
extends Object
implements FunctionContext

Simple default implementation of `FunctionContext`.

This is a simple table-based key-lookup implementation for `FunctionContext` which can be programmatically extended by registering additional functions.

Author:
  bob mcwhirter
See Also:
  `XPathFunctionContext`

Constructor Summary
`SimpleFunctionContext()` Construct an empty function context.

Method Summary
`Function` | `getFunction(String namespaceURI, String prefix, String localName)` An implementation should return a `Function` implementation object based on the namespace URI and local name of the function-call expression.
`void` | `registerFunction(String namespaceURI, String localName, Function function)` Register a new function.

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

Constructor Detail

### SimpleFunctionContext

    public SimpleFunctionContext()

  Construct an empty function context.

Method Detail

### registerFunction

    public void registerFunction(String namespaceURI,
                                 String localName,
                                 Function function)

  Register a new function.

  By registering a new function, any XPath expression that utilizes this `FunctionContext` may refer to and use the new function.

  Functions may exist either in a namespace or not. Namespace prefix-to-URI resolution is the responsibility of a `NamespaceContext`. Within this `FunctionContext` functions are only referenced using the URI, not the prefix.

  The namespace URI of a function may be `null` to indicate that it exists without a namespace.

  Parameters:
    `namespaceURI` - the namespace URI of the function to be registered with this context
    `localName` - the non-prefixed local portion of the function to be registered with this context
    `function` - a `Function` implementation object to be used when evaluating the function

### getFunction

    public Function getFunction(String namespaceURI,
                                String prefix,
                                String localName)
                         throws UnresolvableException

  Description copied from interface: `FunctionContext`
  An implementation should return a `Function` implementation object based on the namespace URI and local name of the function-call expression.

  It must not use the prefix parameter to select an implementation, because a prefix could be bound to any namespace; the prefix parameter could be used in debugging output or other generated information. The prefix may otherwise be completely ignored.

  Specified by:
    `getFunction` in interface `FunctionContext`
  Parameters:
    `namespaceURI` - the namespace URI to which the prefix parameter is bound in the XPath expression. If the function call expression had no prefix, the namespace URI is `null`.
    `prefix` - the prefix that was used in the function call expression
    `localName` - the local name of the function-call expression. If there is no prefix, then this is the whole name of the function.
  Returns:
    a Function implementation object.
  Throws:
    `UnresolvableException` - when the function cannot be resolved

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

Copyright © 2001-2005 Codehaus. All Rights Reserved.