Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.11


Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends

XalanTransformer Class Reference

This is a simple C++ interface for some common usage patterns. More...

#include <XalanTransformer.hpp>

Collaboration diagram for XalanTransformer:
Collaboration graph
[legend]

List of all members.

Classes

Public Types

Public Member Functions

Static Public Member Functions

Friends


Detailed Description

This is a simple C++ interface for some common usage patterns.

It's the user's responsibility to call initialize and terminate for Xerces and Xalan before creating and after deleting any XalanTransformer instances.

Definition at line 91 of file XalanTransformer.hpp.


Member Typedef Documentation

Definition at line 102 of file XalanTransformer.hpp.

Definition at line 107 of file XalanTransformer.hpp.

Definition at line 105 of file XalanTransformer.hpp.

Definition at line 103 of file XalanTransformer.hpp.

typedef std::ostream XalanTransformer::StreamType

Definition at line 99 of file XalanTransformer.hpp.

Definition at line 108 of file XalanTransformer.hpp.


Member Enumeration Documentation

Enums to determine whether or not run-time escaping of URLs has been set.

Enumerator:
eEscapeURLsDefault 
eEscapeURLsNo 
eEscapeURLsYes 

Definition at line 917 of file XalanTransformer.hpp.

Enums to determine whether or not run-time omission of the META tag has been set.

Relevant only for HTML output

Enumerator:
eOmitMETATagDefault 
eOmitMETATagNo 
eOmitMETATagYes 

Definition at line 948 of file XalanTransformer.hpp.


Constructor & Destructor Documentation

XalanTransformer::XalanTransformer ( MemoryManager &  theManager = XalanMemMgrs::getDefaultXercesMemMgr()  ) 
virtual XalanTransformer::~XalanTransformer (  )  [virtual]

Member Function Documentation

void XalanTransformer::addTraceListener ( TraceListener theTraceListener  )  [inline]

Add a TraceListener instance.

TraceListeners instances are preserved between calls to transform(), so they will be called until they are removed.

Parameters:
theTraceListener The instance to add.

Definition at line 629 of file XalanTransformer.hpp.

void XalanTransformer::clearStylesheetParams (  )  [inline]

Clear any stylesheet params.

Definition at line 615 of file XalanTransformer.hpp.

int XalanTransformer::compileStylesheet ( const XSLTInputSource theStylesheetSource,
const XalanCompiledStylesheet *&  theCompiledStylesheet 
)

Creates a compiled stylesheet.

The input source can be a file name, a stream or a root node. The XalanTransformer instance owns the XalanCompiledStylesheet instance and will delete it when the XalanTransformer instance goes out of scope, or you explicitly call destroyStylesheet(). You must not delete the instance yourself.

Parameters:
theStylesheetSource input source
theCompiledStylesheet a reference to a pointer to a XalanCompileStylesheet.
Returns:
0 for success
XalanDocumentBuilder* XalanTransformer::createDocumentBuilder ( const XalanDOMString theURI = XalanDOMString(XalanMemMgrs::getDummyMemMgr())  ) 

Create a document builder.

Using the document builder, you can construct a document using SAX2 interfaces. The XalanTransformer instance owns the document builder and will delete it when the XalanTransformer instance goes out of scope, or you explicitly call destroyDocumentBuilder(). You must not delete the instance yourself.

Parameters:
theURI The base URI for the document instance.
Returns:
a pointer to a XalanDocumentBuilder instance or 0 for failure.
void XalanTransformer::destroyDocumentBuilder ( XalanDocumentBuilder theDocumentBuilder  ) 

Destroy a document builder created by a previous call to createDocumentBuilder().

Passing a pointer that is not created by a call to createDocumentBuilder() can result in undefined behavior.

Parameters:
theDocumentBuilder The document builder to destroy.
int XalanTransformer::destroyParsedSource ( const XalanParsedSource theParsedSource  ) 

Destroy a parsed source created by a previous call to parseSource().

Parameters:
theParsedSource The XalanParsedSource instance to destroy.
Returns:
0 for success
int XalanTransformer::destroyStylesheet ( const XalanCompiledStylesheet theStylesheet  ) 

Destroy a XalanCompiledStylesheet instance created by a previous call to compileStylesheet().

Parameters:
theStylesheet The instance to destroy.
Returns:
0 for success
EntityResolver* XalanTransformer::getEntityResolver (  )  const [inline]

Returns the installed EntityResolver.

Returns:
The pointer to the installed EntityResolver.

Definition at line 682 of file XalanTransformer.hpp.

ErrorHandler* XalanTransformer::getErrorHandler (  )  const [inline]

This method returns the installed error handler.

Returns:
The pointer to the installed error handler object.

Definition at line 742 of file XalanTransformer.hpp.

StreamType* XalanTransformer::getErrorStream (  )  const [inline]

Get the current error stream ostream instance.

Returns:
A pointer to the instance. Can be a null pointer.

Definition at line 996 of file XalanTransformer.hpp.

eEscapeURLs XalanTransformer::getEscapeURLs (  )  const

Get the value for run-time escaping of URLs.

This can override the property specified by the stylesheet. The default behavior is to honor the property in the stylesheet.

Returns:
The value of the enum
const XalanDOMChar* XalanTransformer::getExternalNoNamespaceSchemaLocation (  )  const [inline]

This method returns the location for an external schema document for parsing.

Returns:
A string representing the location of the external schema document

Definition at line 791 of file XalanTransformer.hpp.

const XalanDOMChar* XalanTransformer::getExternalSchemaLocation (  )  const [inline]

This method returns the location for an external schema document for parsing.

Returns:
A string representing the location of the external schema document

Definition at line 765 of file XalanTransformer.hpp.

bool XalanTransformer::getICUAvailable (  )  const
int XalanTransformer::getIndent (  )  const

Get the current number of spaces to indent.

Returns:
number of spaces
const char* XalanTransformer::getLastError (  )  const [inline]

Returns the last error that occurred as a result of calling transform.

Returns:
error message const character pointer.

Definition at line 865 of file XalanTransformer.hpp.

const MemoryManager& XalanTransformer::getMemoryManager (  )  const [inline]

Definition at line 122 of file XalanTransformer.hpp.

MemoryManager& XalanTransformer::getMemoryManager (  )  [inline]

Definition at line 116 of file XalanTransformer.hpp.

eOmitMETATag XalanTransformer::getOmitMETATag (  )  const

Get the value for run-time omission of the META tag.

This can override the property specified by the stylesheet. The default behavior is to honor the property in the stylesheet.

Returns:
The value of the enum
const XalanDOMString& XalanTransformer::getOutputEncoding (  )  const [inline]

Get the current output encoding, if any.

Note this is not the output encoding specified in a stylesheet. Rather, it can override that encoding, if the

Returns:
A string containing the current encoding

Definition at line 879 of file XalanTransformer.hpp.

bool XalanTransformer::getPoolAllTextNodes (  )  const [inline]

This member functions gets the flag to determine of a default parsed source tree will pool the values of all of the text nodes in the XML document.

Returns:
The boolean value for the flag.

Definition at line 817 of file XalanTransformer.hpp.

ProblemListener* XalanTransformer::getProblemListener (  )  const [inline]

This method returns the installed ProblemListener instance.

Returns:
The pointer to the installed ProblemListener instance.

Definition at line 842 of file XalanTransformer.hpp.

bool XalanTransformer::getUseValidation (  )  const [inline]

Set a flag to indicate whether or not the source file(s) for the transformation will be validated.

Parameters:
fValue the new value for the flag.

Definition at line 659 of file XalanTransformer.hpp.

StreamType* XalanTransformer::getWarningStream (  )  const [inline]

Get the current warning stream ostream instance.

Returns:
A pointer to the instance. Can be a null pointer.

Definition at line 1021 of file XalanTransformer.hpp.

XMLEntityResolver* XalanTransformer::getXMLEntityResolver (  )  const [inline]

Returns the installed XMLEntityResolver.

Returns:
The pointer to the installed XMLEntityResolver.

Definition at line 712 of file XalanTransformer.hpp.

XObjectFactory& XalanTransformer::getXObjectFactory (  )  const [inline]

Retrieve the factory object for creating XObjects.

Returns:
factory object instance

Definition at line 500 of file XalanTransformer.hpp.

static void XalanTransformer::ICUCleanUp (  )  [static]

Clean up the ICU, if ICU integration is enabled.

This should be called only once per process after calling XalanTransformer::terminate() and XMLPlatformUtils::Terminate.

This must only be done if the ICU will no longer be used by the process, since the ICU will no longer be in a usable state. See the ICU documentation for more details.

This call is not thread-safe, so you must serialize any calls to it, and you must track the initialization state, so you do not call it more than once.

This is handy when using leak-detection software, as all static data allocated by the ICU is freed.

static void XalanTransformer::ICUStartUp ( MemoryManager &  theManager = XalanMemMgrs::getDefaultXercesMemMgr()  )  [static]
static void XalanTransformer::initialize ( MemoryManager &  theManager = XalanMemMgrs::getDefaultXercesMemMgr()  )  [static]

Initialize Xalan.

Should be called only once per process before creating any instances of XalanTransformer. This call is not thread-safe, so you must serialize any calls to it, and you must track the initialization state, so you do not call it more than once.

void XalanTransformer::installExternalFunction ( const XalanDOMString theNamespace,
const XalanDOMString functionName,
const Function function 
)

Install an external function in the local space.

Parameters:
theNamespace The namespace for the functionl
functionName The name of the function.
function The function to install.
static void XalanTransformer::installExternalFunctionGlobal ( const XalanDOMString theNamespace,
const XalanDOMString functionName,
const Function function 
) [static]

Install an external function in the global space.

Parameters:
theNamespace The namespace for the functionl
functionName The name of the function.
function The function to install.
int XalanTransformer::parseSource ( const XSLTInputSource theInputSource,
const XalanParsedSource *&  theParsedSource,
bool  useXercesDOM = false 
)

Parse a source XML document.

The input source can be a file name, a stream or a root node. The XalanTransformer instance owns the XalanParsedSource instance and will delete it when the XalanTransformer instance goes out of scope, or you explicitly call destroyParsedSource(). You must not delete the instance yourself.

Parameters:
theInputSource input source
theParsedSource a reference to a pointer to a XalanParsedSource.
useXercesDOM input use default or xerces DOM source tree
Returns:
0 for success
bool XalanTransformer::removeTraceListener ( TraceListener theTraceListener  ) 

Remove a TraceListener instance.

Parameters:
theTraceListener The instance to remove.
Returns:
true if the instance was removed, false if not.
void XalanTransformer::removeTraceListeners (  )  [inline]

Remove all TraceListener instances.

Definition at line 647 of file XalanTransformer.hpp.

void XalanTransformer::setEntityResolver ( EntityResolver *  theResolver  )  [inline]

Installs the supplied EntityResolver.

A call to setEntityResolver with a non-null pointer will uninstall any XMLEntityResolver previously installed.

Parameters:
theResolver A pointer to the EntityResolver.

Definition at line 696 of file XalanTransformer.hpp.

void XalanTransformer::setErrorHandler ( ErrorHandler *  theErrorHandler  )  [inline]

This method installs the user-specified error handler.

Parameters:
handler A pointer to the error handler to be called upon error.

Definition at line 753 of file XalanTransformer.hpp.

void XalanTransformer::setErrorStream ( StreamType theStream  )  [inline]

Set the ostream instance for reporting errors.

The default is a null pointer, so errors are not reported. If there is a user-installed ProblemListener instance, this is not used, as all such warnings and messages are handled by the that ProblemListener.

Parameters:
theStream A pointer to the ostream instance.

Definition at line 985 of file XalanTransformer.hpp.

void XalanTransformer::setEscapeURLs ( eEscapeURLs  value  ) 

Set the value for run-time escaping of URLs.

This can override the property specified by the stylesheet. The default behavior is to honor the property in the stylesheet.

Parameters:
value The value of the enum
void XalanTransformer::setExternalNoNamespaceSchemaLocation ( const XalanDOMChar *  location  )  [inline]

This method sets the location for an external schema document for parsing.

Parameters:
location A string representing the location of the external schema document

Definition at line 803 of file XalanTransformer.hpp.

void XalanTransformer::setExternalSchemaLocation ( const XalanDOMChar *  location  )  [inline]

This method sets the location for an external schema document for parsing.

Parameters:
location A string representing the location of the external schema document

Definition at line 777 of file XalanTransformer.hpp.

void XalanTransformer::setIndent ( int  indentAmount  ) 

Set the current number of spaces to indent.

Parameters:
indentAmount The number of spaces to indent. Use -1 for the default amount.
void XalanTransformer::setOmitMETATag ( eOmitMETATag  value  ) 

Get the value for run-time omission of the META tag.

This can override the property specified by the stylesheet. The default behavior is to honor the property in the stylesheet.

Parameters:
value The value of the enum
void XalanTransformer::setOutputEncoding ( const XalanDOMString theEncoding  )  [inline]

Set the current output encoding.

Note this will override the encoding specified in the stylesheet, if the encoding is available. However, it will not override any encoding specified by an XSLTResultTarget parameter to one of the transform() member functions.

Parameters:
theEncoding The encoding to use.

Definition at line 893 of file XalanTransformer.hpp.

void XalanTransformer::setPoolAllTextNodes ( bool  fPool  )  [inline]

This member functions sets the flag to determine of a default parsed source tree will pool the values of all of the text nodes in the XML document.

This can result in significant memory savings if there are lots of repeated values in text nodes.

Parameters:
fPool The boolean value for the flag.

Definition at line 831 of file XalanTransformer.hpp.

void XalanTransformer::setProblemListener ( ProblemListener theProblemListener  )  [inline]

This method installs the user-specified ProblemListener instance.

Parameters:
handler A pointer to the ProblemListener to be called when a problem occurs.

Definition at line 853 of file XalanTransformer.hpp.

void XalanTransformer::setStylesheetParam ( const char *  key,
double  number 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
number value to be evaluated
void XalanTransformer::setStylesheetParam ( const char *  key,
XObjectPtr  object 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
object any XObject owned by the transformer
void XalanTransformer::setStylesheetParam ( const char *  key,
XalanNode nodeset 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
nodeset XML nodeset that will be evaulated
void XalanTransformer::setStylesheetParam ( const XalanDOMString key,
double  number 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
number value to be evaluated
void XalanTransformer::setStylesheetParam ( const XalanDOMString key,
XObjectPtr  object 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
object any XObject owned by the transformer
void XalanTransformer::setStylesheetParam ( const XalanDOMString key,
XalanNode nodeset 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
nodeset XML nodeset that will be evaluated
void XalanTransformer::setStylesheetParam ( const XalanDOMString key,
const XalanDOMString expression 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
expression expression that will be evaluated
void XalanTransformer::setStylesheetParam ( const char *  key,
const char *  expression 
)

Set a top-level parameter, which the stylesheet can access with a top-level xsl:param.

Top-level params are "sticky," and must be removed with a call to clearStylesheetParams().

Parameters:
key name of the param
expression expression that will be evaluated
void XalanTransformer::setUseValidation ( bool  fValue  )  [inline]

Set a flag to indicate whether or not the source file(s) for the transformation will be validated.

Parameters:
fValue the new value for the flag.

Definition at line 671 of file XalanTransformer.hpp.

void XalanTransformer::setWarningStream ( StreamType theStream  )  [inline]

Set the ostream instance for reporting warnings and messages.

The default is std::cerr. If set to a null pointer, no warnings or messages are written. If there is a user-installed ProblemListener instance, this is not used, as all such warnings and messages are handled by the that ProblemListener.

Parameters:
theStream A pointer to the ostream instance.

Definition at line 1010 of file XalanTransformer.hpp.

void XalanTransformer::setXMLEntityResolver ( XMLEntityResolver *  theResolver  )  [inline]

Installs the supplied XMLEntityResolver.

A call to setXMLEntityResolver with a non-null pointer will uninstall any EntityResolver previously installed.

Parameters:
theResolver A pointer to the XMLEntityResolver.

Definition at line 726 of file XalanTransformer.hpp.

static void XalanTransformer::terminate (  )  [static]

Terminate Xalan.

Should be called only once per process after deleting all instances of XalanTransformer. This call is not thread-safe, so you must serialize any calls to it, and you must track the initialization state, so you do not call it more than once.

This is handy when using leak-detection software, as all static data allocated by Xalan is freed.

int XalanTransformer::transform ( const XSLTInputSource theInputSource,
const XSLTResultTarget theResultTarget 
) [inline]

Transform will apply the stylesheet provided as a PI in the XML of the input source and write the transformation output to the target.

The input source and result target can be a file name, a stream or a root node.

Parameters:
theInputSource input source
theResultTarget output source tree
Returns:
0 for success

Definition at line 263 of file XalanTransformer.hpp.

int XalanTransformer::transform ( const XSLTInputSource theInputSource,
const XSLTInputSource theStylesheetSource,
const XSLTResultTarget theResultTarget 
)

Transform will apply the stylesheet source to the input source and write the transformation output to the target.

The input source and result target can be a file name, a stream or a root node.

Parameters:
theInputSource input source
theStylesheetSource stylesheet source
theResultTarget output source
Returns:
0 for success
int XalanTransformer::transform ( const XalanParsedSource theParsedXML,
const XSLTResultTarget theResultTarget 
) [inline]

Transform will apply the stylesheet provided as a PI in the XML of the parsed xml source and write the transformation output to the target.

Parameters:
theParsedXML the parsed input source
theResultTarget output source tree
Returns:
0 for success

Definition at line 226 of file XalanTransformer.hpp.

int XalanTransformer::transform ( const XSLTInputSource theInputSource,
const XSLTInputSource theStylesheetSource,
void *  theOutputHandle,
XalanOutputHandlerType  theOutputHandler,
XalanFlushHandlerType  theFlushHandler = 0 
)

Transform will apply the stylesheet source to the input source and write the transformation result to a callback function in pre-allocated blocks.

The input source can be a file name, a stream or a root node. Upon termination, Xalan releases any allocated memory. Data passed to the callback is not guaranteed to be null terminated.

Parameters:
theInputSource input source
theStylesheetSource stylesheet source
theOutputHandle void pointer passed through to callback.
theOutputHandler a user defined (callback) function.
theFlushHandler (optional) a user defined (callback) function.
Returns:
0 for success
int XalanTransformer::transform ( const XSLTInputSource theInputSource,
const XalanCompiledStylesheet theCompiledStylesheet,
const XSLTResultTarget theResultTarget 
)

Transform will apply the compiled stylesheet to the input source and write the transformation output to the target.

The input source and result target can be a file name, a stream or a root node.

Parameters:
theInputSource input source
theCompiledStylesheet pointer to a compiled stylesheet. Must not be null.
theResultTarget output source
Returns:
0 for success
int XalanTransformer::transform ( const XalanParsedSource theParsedSource,
const XalanCompiledStylesheet theCompiledStylesheet,
void *  theOutputHandle,
XalanOutputHandlerType  theOutputHandler,
XalanFlushHandlerType  theFlushHandler = 0 
)

Transform will apply the compiled stylesheet to the source and write the transformation result to a callback function in pre-allocated blocks.

The input source can be a file name, a stream or a root node. Upon termination, Xalan releases any allocated memory. Data passed to the callback is not guaranteed to be null terminated.

Parameters:
theParsedSource Parsed source instance
theCompiledStylesheet pointer to a compiled stylesheet. Must not be null.
theOutputHandle void pointer passed through to callback.
theOutputHandler a user defined callback function.
theFlushHandler An optional user-defined callback function.
Returns:
0 for success
int XalanTransformer::transform ( const XSLTInputSource theInputSource,
void *  theOutputHandle,
XalanOutputHandlerType  theOutputHandler,
XalanFlushHandlerType  theFlushHandler = 0 
)

Transform will apply the stylesheet provided as a PI in the XML of the input source and write the transformation result to a callback function in pre-allocated blocks.

The input source can be a file name, a stream or a root node. Upon termination, Xalan releases any allocated memory. Data passed to the callback is not guaranteed to be null terminated.

Parameters:
theInputSource input source
theOutputHandle void pointer passed through to callback.
theOutputHandler a user defined callback function.
theFlushHandler an optional user-defined callback function.
Returns:
0 for success
int XalanTransformer::transform ( const XalanParsedSource theParsedXML,
const XalanCompiledStylesheet theCompiledStylesheet,
const XSLTResultTarget theResultTarget 
) [inline]

Transform will apply the compiled stylesheet to the parsed xml source and write the transformation output to the target.

Parameters:
theParsedXML the parsed input source
theCompiledStylesheet pointer to a compiled stylesheet. Must not be null.
theResultTarget output source
Returns:
0 for success

Definition at line 206 of file XalanTransformer.hpp.

int XalanTransformer::transform ( const XalanParsedSource theParsedXML,
const XSLTInputSource theStylesheetSource,
const XSLTResultTarget theResultTarget 
) [inline]

Transform will apply the stylesheet source to the parsed xml source and write the transformation output to the target.

Parameters:
theParsedXML the parsed input source
theStylesheetSource stylesheet source
theResultTarget output source
Returns:
0 for success

Definition at line 188 of file XalanTransformer.hpp.

void XalanTransformer::uninstallExternalFunction ( const XalanDOMString theNamespace,
const XalanDOMString functionName 
)

Uninstall an external local function.

Parameters:
theNamespace The namespace for the function
functionName The name of the function.
static void XalanTransformer::uninstallExternalFunctionGlobal ( const XalanDOMString theNamespace,
const XalanDOMString functionName 
) [static]

Uninstall an external global function.

Parameters:
theNamespace The namespace for the function
functionName The name of the function.

Friends And Related Function Documentation

friend class EnsureReset [friend]

Definition at line 1150 of file XalanTransformer.hpp.


The documentation for this class was generated from the following file:

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.11
Copyright © 1999-2012 The Apache Software Foundation.
All Rights Reserved.

Apache Logo