A basic implementation of the class XPathExecutionContext.
More...
List of all members.
Classes
Public Types
Public Member Functions
- XPathExecutionContextDefault (XPathEnvSupport &theXPathEnvSupport, DOMSupport &theDOMSupport, XObjectFactory &theXObjectFactory, XalanNode *theCurrentNode=0, const NodeRefListBase *theContextNodeList=0, const PrefixResolver *thePrefixResolver=0)
- Construct an XPathExecutionContextDefault object.
- XPathExecutionContextDefault (MemoryManagerType &theManager, XalanNode *theCurrentNode=0, const NodeRefListBase *theContextNodeList=0, const PrefixResolver *thePrefixResolver=0)
- Construct an XPathExecutionContextDefault object.
- virtual ~XPathExecutionContextDefault ()
- XPathEnvSupport * getXPathEnvSupport () const
- Get the XPathEnvSupport instance.
- void setXPathEnvSupport (XPathEnvSupport *theSupport)
- Set the XPathEnvSupport instance.
- void setDOMSupport (DOMSupport *theDOMSupport)
- Set the DOMSupport instance.
- void setXObjectFactory (XObjectFactory *theXObjectFactory)
- Set the XObjectFactory instance.
- XalanQNameByValue & getScratchQName () const
- Get a reference to the scratch QNameByValue instance.
- virtual void doFormatNumber (double number, const XalanDOMString &pattern, const XalanDecimalFormatSymbols *theDFS, XalanDOMString &theResult, const XalanNode *context=0, const LocatorType *locator=0)
- virtual void reset ()
- Reset the instance.
- virtual XalanNode * getCurrentNode () const
- Retrieve the node currently being executed.
- virtual void pushCurrentNode (XalanNode *theCurrentNode)
- Change the node currently being executed.
- virtual void popCurrentNode ()
- Reset the node currently being executed.
- virtual bool isNodeAfter (const XalanNode &node1, const XalanNode &node2) const
- Determine if a node is after another node, in document order.
- virtual void pushContextNodeList (const NodeRefListBase &theList)
- Push the node list for current context.
- virtual void popContextNodeList ()
- Pop the node list for current context.
- virtual const NodeRefListBase & getContextNodeList () const
- Get the node list for current context.
- virtual size_type getContextNodeListLength () const
- virtual size_type getContextNodeListPosition (const XalanNode &contextNode) const
- virtual bool elementAvailable (const XalanQName &theQName) const
- Determine if an external element is available.
- virtual bool elementAvailable (const XalanDOMString &theName, const LocatorType *locator) const
- Determine if an external element is available by resolving a string to a QName.
- virtual bool functionAvailable (const XalanQName &theQName) const
- Determine if a function is available.
- virtual bool functionAvailable (const XalanDOMString &theName, const LocatorType *locator) const
- Determine if a function is available.
- virtual const XObjectPtr extFunction (const XalanDOMString &theNamespace, const XalanDOMString &functionName, XalanNode *context, const XObjectArgVectorType &argVec, const LocatorType *locator)
- Handle an extension function.
- virtual XalanDocument * parseXML (MemoryManagerType &theManager, const XalanDOMString &urlString, const XalanDOMString &base) const
- Provides support for XML parsing service.
- virtual MutableNodeRefList * borrowMutableNodeRefList ()
- Borrow a cached MutableNodeRefList instance.
- virtual bool returnMutableNodeRefList (MutableNodeRefList *theList)
- Return a previously borrowed MutableNodeRefList instance.
- virtual MutableNodeRefList * createMutableNodeRefList (MemoryManagerType &theManager) const
- Create a MutableNodeRefList with the appropriate context.
- virtual XalanDOMString & getCachedString ()
- Get a cached string for temporary use.
- virtual bool releaseCachedString (XalanDOMString &theString)
- Return a cached string.
- virtual void getNodeSetByKey (XalanDocument *doc, const XalanQName &qname, const XalanDOMString &ref, MutableNodeRefList &nodelist)
- Given a valid element key, return the corresponding node list.
- virtual void getNodeSetByKey (XalanDocument *doc, const XalanDOMString &name, const XalanDOMString &ref, const LocatorType *locator, MutableNodeRefList &nodelist)
- Given a valid element key, return the corresponding node list.
- virtual const XObjectPtr getVariable (const XalanQName &name, const LocatorType *locator=0)
- Given a name, locate a variable in the current context, and return a pointer to the object.
- virtual const PrefixResolver * getPrefixResolver () const
- Retrieve the resolver for namespaces.
- virtual void setPrefixResolver (const PrefixResolver *thePrefixResolver)
- Change the resolver for namespaces.
- virtual const XalanDOMString * getNamespaceForPrefix (const XalanDOMString &prefix) const
- Retrieve the URI corresponding to a namespace prefix.
- virtual const XalanDOMString & findURIFromDoc (const XalanDocument *owner) const
- Given a DOM Document, tell what URI was used to parse it.
- virtual const XalanDOMString & getUnparsedEntityURI (const XalanDOMString &theName, const XalanDocument &theDocument) const
- The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]).
- virtual bool shouldStripSourceNode (const XalanText &node)
- Tells, through the combination of the default-space attribute on xsl:stylesheet, xsl:strip-space, xsl:preserve-space, and the xml:space attribute, whether or not extra whitespace should be stripped from the node.
- virtual XalanDocument * getSourceDocument (const XalanDOMString &theURI) const
- Get the document associated with the given URI.
- virtual void setSourceDocument (const XalanDOMString &theURI, XalanDocument *theDocument)
- Associate a document with a given URI.
- virtual void formatNumber (double number, const XalanDOMString &pattern, XalanDOMString &theResult, const XalanNode *context=0, const LocatorType *locator=0)
- Formats a number according to the specified pattern.
- virtual void formatNumber (double number, const XalanDOMString &pattern, const XalanDOMString &dfsName, XalanDOMString &theResult, const XalanNode *context=0, const LocatorType *locator=0)
- Formats a number according to the specified pattern.
- virtual void error (const XalanDOMString &msg, const XalanNode *sourceNode=0, const LocatorType *locator=0) const
- Report an error and throw an exception.
- virtual void warn (const XalanDOMString &msg, const XalanNode *sourceNode=0, const LocatorType *locator=0) const
- Report a warning.
- virtual void message (const XalanDOMString &msg, const XalanNode *sourceNode=0, const LocatorType *locator=0) const
- Output a message.
Static Public Member Functions
Protected Types
Protected Attributes
Static Protected Attributes
Detailed Description
A basic implementation of the class XPathExecutionContext.
Member Typedef Documentation
Member Enumeration Documentation
anonymous enum [protected] |
Constructor & Destructor Documentation
Construct an XPathExecutionContextDefault object.
- Parameters:
-
theXPathEnvSupport | XPathEnvSupport class instance |
theDOMSupport | DOMSupport class instance |
theXobjectFactory | factory class instance for XObjects |
theCurrentNode | current node in the source tree |
theContextNodeList | node list for current context |
thePrefixResolver | pointer to prefix resolver to use |
Construct an XPathExecutionContextDefault object.
- Parameters:
-
theXPathEnvSupport | XPathEnvSupport class instance |
theXObjectFactory | factory class instance for XObjects |
theCurrentNode | current node in the source tree |
theContextNodeList | node list for current context |
thePrefixResolver | pointer to prefix resolver to use |
virtual XPathExecutionContextDefault::~XPathExecutionContextDefault |
( |
| ) |
[virtual] |
Member Function Documentation
virtual MutableNodeRefList* XPathExecutionContextDefault::borrowMutableNodeRefList |
( |
| ) |
[virtual] |
virtual bool XPathExecutionContextDefault::elementAvailable |
( |
const XalanQName & |
theQName | ) |
const [virtual] |
Determine if an external element is available.
- Parameters:
-
theQName | The QName of the element |
- Returns:
- whether the given element is available or not
Implements XPathExecutionContext.
virtual bool XPathExecutionContextDefault::elementAvailable |
( |
const XalanDOMString & |
theName, |
|
|
const LocatorType * |
locator |
|
) |
| const [virtual] |
Determine if an external element is available by resolving a string to a QName.
- Parameters:
-
theName | The name of the element |
locator | A LocatorType instance for error reporting |
- Returns:
- whether the given element is available or not
Implements XPathExecutionContext.
Report an error and throw an exception.
- Parameters:
-
msg | The text of the message. |
sourceNode | The source node where the error occurred. May be 0. |
locator | A Locator to determine where the error occurred. May be 0. |
Implements XPathExecutionContext.
Handle an extension function.
- Parameters:
-
theNamespace | namespace of function |
functionName | extension function name |
context | The context node |
argVec | vector of arguments to function |
locator | A LocatorType instance for error reporting |
- Returns:
- pointer to XObject result
Implements XPathExecutionContext.
Given a DOM Document, tell what URI was used to parse it.
Needed for relative resolution.
- Parameters:
-
- Returns:
- document URI
Implements XPathExecutionContext.
Formats a number according to the specified pattern.
- Parameters:
-
number | the number to be formatted |
pattern | the format pattern |
dfsName | the name of decimal format to use |
theResult | the formatted number |
context | the source node |
locator | the locator |
- Returns:
- a pointer to the functor, 0 if none was found
Implements XPathExecutionContext.
Formats a number according to the specified pattern.
- Parameters:
-
number | the number to be formatted |
pattern | the format pattern |
theResult | the formatted number |
context | the source node |
locator | the locator |
Implements XPathExecutionContext.
virtual bool XPathExecutionContextDefault::functionAvailable |
( |
const XalanDOMString & |
theName, |
|
|
const LocatorType * |
locator |
|
) |
| const [virtual] |
Determine if a function is available.
- Parameters:
-
theName | The name of the function |
locator | A LocatorType instance for error reporting |
- Returns:
- whether the function is available or not
Implements XPathExecutionContext.
virtual bool XPathExecutionContextDefault::functionAvailable |
( |
const XalanQName & |
theQName | ) |
const [virtual] |
Determine if a function is available.
- Parameters:
-
theQName | The QName of the function |
- Returns:
- whether the function is available or not
Implements XPathExecutionContext.
virtual XalanDOMString& XPathExecutionContextDefault::getCachedString |
( |
| ) |
[virtual] |
Get a cached string for temporary use.
- Returns:
- A reference to the string
Implements XPathExecutionContext.
virtual const NodeRefListBase& XPathExecutionContextDefault::getContextNodeList |
( |
| ) |
const [virtual] |
virtual size_type XPathExecutionContextDefault::getContextNodeListLength |
( |
| ) |
const [virtual] |
virtual size_type XPathExecutionContextDefault::getContextNodeListPosition |
( |
const XalanNode & |
contextNode | ) |
const [virtual] |
virtual XalanNode* XPathExecutionContextDefault::getCurrentNode |
( |
| ) |
const [virtual] |
Retrieve the URI corresponding to a namespace prefix.
- Parameters:
-
prefix | prefix for a namespace |
- Returns:
- URI corresponding to namespace
Implements XPathExecutionContext.
Given a valid element key, return the corresponding node list.
- Parameters:
-
doc | source document |
name | qname of the key, which must match the 'name' attribute on xsl:key |
ref | value that must match the value found by the 'match' attribute on xsl:key |
nodelist | A node list to contain the nodes found |
Implements XPathExecutionContext.
Given a valid element key, return the corresponding node list.
- Parameters:
-
doc | source document |
name | name of the key, which must match the 'name' attribute on xsl:key. Will be resolved to a qname using the provided resolver. |
ref | value that must match the value found by the 'match' attribute on xsl:key |
locator | The LocatorType to use for error reporting. Can be 0. |
nodelist | A node list to contain the nodes found |
Implements XPathExecutionContext.
virtual const PrefixResolver* XPathExecutionContextDefault::getPrefixResolver |
( |
| ) |
const [virtual] |
Retrieve the resolver for namespaces.
- Returns:
- object for namespace resolution
Implements XPathExecutionContext.
Get a reference to the scratch QNameByValue instance.
- Returns:
- A reference to a QNameByValue instance.
Get the document associated with the given URI.
- Parameters:
-
- Returns:
- a pointer to the document instance, if any.
Implements XPathExecutionContext.
The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]).
It returns the empty string if there is no such entity.
- Parameters:
-
theName | name of entity |
theDocument | document containing entity |
- Returns:
- URI for the entity
Implements XPathExecutionContext.
Given a name, locate a variable in the current context, and return a pointer to the object.
- Parameters:
-
- Returns:
- An XObjectPtr instance. If the variable is not found, an exception is thrown, or the routine returns an instance of XUnknown.
Implements XPathExecutionContext.
XPathEnvSupport* XPathExecutionContextDefault::getXPathEnvSupport |
( |
| ) |
const |
virtual bool XPathExecutionContextDefault::isNodeAfter |
( |
const XalanNode & |
node1, |
|
|
const XalanNode & |
node2 |
|
) |
| const [virtual] |
Determine if a node is after another node, in document order.
- Parameters:
-
node1 | The first node |
node2 | The second node |
- Returns:
- true if node1 one is after node2, or false if it is not.
Implements XPathExecutionContext.
Output a message.
- Parameters:
-
msg | The text of the message. |
sourceNode | The source node where the message occurred. May be 0. |
locator | A Locator to determine where the message occurred. May be 0. |
Implements XPathExecutionContext.
Provides support for XML parsing service.
- Parameters:
-
urlString | location of the XML |
base | base location for URI |
- Returns:
- parsed document
Implements XPathExecutionContext.
virtual void XPathExecutionContextDefault::popContextNodeList |
( |
| ) |
[virtual] |
virtual void XPathExecutionContextDefault::popCurrentNode |
( |
| ) |
[virtual] |
virtual void XPathExecutionContextDefault::pushContextNodeList |
( |
const NodeRefListBase & |
theList | ) |
[virtual] |
virtual void XPathExecutionContextDefault::pushCurrentNode |
( |
XalanNode * |
theCurrentNode | ) |
[virtual] |
Change the node currently being executed.
- Parameters:
-
theCurrentNode | new current node |
Implements XPathExecutionContext.
virtual bool XPathExecutionContextDefault::releaseCachedString |
( |
XalanDOMString & |
theString | ) |
[virtual] |
Return a cached string.
- Parameters:
-
theString | The string to release. |
- Returns:
- true if the string was released successfully.
Implements XPathExecutionContext.
virtual void XPathExecutionContextDefault::reset |
( |
| ) |
[virtual] |
Reset the instance.
This must be called before another execution is attempted.
Implements XPathExecutionContext.
virtual bool XPathExecutionContextDefault::returnMutableNodeRefList |
( |
MutableNodeRefList * |
theList | ) |
[virtual] |
Return a previously borrowed MutableNodeRefList instance.
- Parameters:
-
theList | A pointer the to previously borrowed instance. |
- Returns:
- true if the list was borrowed (at therefore, destroyed), false if not.
Implements XPathExecutionContext.
void XPathExecutionContextDefault::setDOMSupport |
( |
DOMSupport * |
theDOMSupport | ) |
|
Set the DOMSupport instance.
- Parameters:
-
theDOMSupport | a reference to the instance to use. |
virtual void XPathExecutionContextDefault::setPrefixResolver |
( |
const PrefixResolver * |
thePrefixResolver | ) |
[virtual] |
Change the resolver for namespaces.
- Parameters:
-
thePrefixResolver | new object for namespace resolution |
Implements XPathExecutionContext.
Associate a document with a given URI.
- Parameters:
-
theURI | document URI |
theDocument | source document |
Implements XPathExecutionContext.
void XPathExecutionContextDefault::setXObjectFactory |
( |
XObjectFactory * |
theXObjectFactory | ) |
|
Set the XObjectFactory instance.
- Parameters:
-
theFactory | a reference to the instance to use. |
void XPathExecutionContextDefault::setXPathEnvSupport |
( |
XPathEnvSupport * |
theSupport | ) |
|
Set the XPathEnvSupport instance.
- Parameters:
-
theSupport | a reference to the instance to use. |
virtual bool XPathExecutionContextDefault::shouldStripSourceNode |
( |
const XalanText & |
node | ) |
[virtual] |
Tells, through the combination of the default-space attribute on xsl:stylesheet, xsl:strip-space, xsl:preserve-space, and the xml:space attribute, whether or not extra whitespace should be stripped from the node.
Literal elements from template elements should not be tested with this function.
- Parameters:
-
textNode | text node from the source tree |
- Returns:
- true if the text node should be stripped of extra whitespace
Implements XPathExecutionContext.
Report a warning.
- Parameters:
-
msg | The text of the message. |
sourceNode | The source node where the warning occurred. May be 0. |
locator | A Locator to determine where the warning occurred. May be 0. |
Implements XPathExecutionContext.
Member Data Documentation
The documentation for this class was generated from the following file: