Class handling an extension namespace for XPath.
More...
#include <ExtensionFunctionHandler.hpp>
Inherited by ExtensionNSHandler.
|
virtual void | startupComponent () |
| Start the component up by executing any script that needs to run at startup time. More...
|
|
Class handling an extension namespace for XPath.
Provides functions to test a function's existence and call a function
Definition at line 58 of file ExtensionFunctionHandler.hpp.
◆ ArgVectorType
◆ StringSetType
◆ ExtensionFunctionHandler() [1/2]
ExtensionFunctionHandler::ExtensionFunctionHandler |
( |
const XalanDOMString & |
namespaceUri, |
|
|
MemoryManager & |
theManager |
|
) |
| |
Construct a new extension namespace handler for a given extension NS.
This doesn't do anything - just hang on to the namespace URI.
- Parameters
-
namespaceUri | the extension namespace URI that I'm implementing |
◆ ExtensionFunctionHandler() [2/2]
Construct a new extension namespace handler given all the information needed.
- Parameters
-
namespaceUri | the extension namespace URI that I'm implementing |
funcNames | string containing list of functions of extension NS |
lang | language of code implementing the extension |
srcURL | value of src attribute (if any) - treated as a URL or a classname depending on the value of lang. If srcURL is not null, then scriptSrc is ignored. |
scriptSrc | the actual script code (if any) |
◆ ~ExtensionFunctionHandler()
virtual ExtensionFunctionHandler::~ExtensionFunctionHandler |
( |
| ) |
|
|
virtual |
◆ callFunction()
Process a call to a function.
- Parameters
-
funcName | Function name. |
args | The arguments of the function call. |
- Returns
- the return value of the function evaluation.
- Exceptions
-
XSLProcessorException | thrown if something goes wrong while running the extension handler. |
MalformedURLException | if loading trouble |
FileNotFoundException | if loading trouble |
IOException | if loading trouble |
SAXException | if parsing trouble |
◆ getMemoryManager()
MemoryManager& ExtensionFunctionHandler::getMemoryManager |
( |
| ) |
|
|
inline |
◆ isFunctionAvailable()
virtual bool ExtensionFunctionHandler::isFunctionAvailable |
( |
const XalanDOMString & |
function | ) |
const |
|
virtual |
Tests whether a certain function name is known within this namespace.
- Parameters
-
function | name of the function being tested |
- Returns
- true if its known, false if not.
◆ setFunctions()
virtual void ExtensionFunctionHandler::setFunctions |
( |
const XalanDOMString & |
funcNames | ) |
|
|
virtual |
Set function local parts of extension NS.
- Parameters
-
functions | whitespace separated list of function names defined by this extension namespace. |
Reimplemented in ExtensionNSHandler.
◆ setScript()
Set the script data for this extension NS.
If srcURL is !null then the script body is read from that URL. If not the scriptSrc is used as the src. This method does not actually execute anything - that's done when the component is first hit by the user by an element or a function call.
- Parameters
-
lang | language of the script. |
srcURL | value of src attribute (if any) - treated as a URL or a classname depending on the value of lang. If srcURL is not null, then scriptSrc is ignored. |
scriptSrc | the actual script code (if any) |
Reimplemented in ExtensionNSHandler.
◆ startupComponent()
virtual void ExtensionFunctionHandler::startupComponent |
( |
| ) |
|
|
protectedvirtual |
Start the component up by executing any script that needs to run at startup time.
This needs to happen before any functions can be called on the component.
- Exceptions
-
XPathProcessorException | if something bad happens. |
Reimplemented in ExtensionNSHandler.
◆ m_componentStarted
bool ExtensionFunctionHandler::m_componentStarted |
|
protected |
◆ m_functions
◆ m_javaObject
void* ExtensionFunctionHandler::m_javaObject |
|
protected |
◆ m_namespaceUri
◆ m_scriptLang
◆ m_scriptSrc
◆ m_scriptSrcURL
◆ s_tokenDelimiterCharacters
const XalanDOMChar ExtensionFunctionHandler::s_tokenDelimiterCharacters[] |
|
staticprotected |
The documentation for this class was generated from the following file: