public class XQueryTransformer extends AbstractXmlTransformer implements Disposable
Modifier and Type | Class and Description |
---|---|
protected class |
XQueryTransformer.PooledXQueryTransformerFactory |
AbstractXmlTransformer.ResultHolder
Modifier and Type | Field and Description |
---|---|
protected net.sf.saxon.Configuration |
configuration |
static String |
SOURCE_DOCUMENT_NAMESPACE |
protected org.apache.commons.pool.impl.GenericObjectPool |
transformerPool |
encoding, endpoint, logger, mimeType, MULE_MESSAGE_DATA_TYPE, muleContext, name, returnType, sourceTypes
PHASE_NAME
PHASE_NAME
PROPERTY_NAME
Constructor and Description |
---|
XQueryTransformer() |
XQueryTransformer(String xqueryFile) |
Modifier and Type | Method and Description |
---|---|
protected void |
bindDocument(Object src,
javax.xml.xquery.XQPreparedExpression transformer)
Returns the InputSource corresponding to xqueryFile or xquery
|
protected void |
bindParameters(javax.xml.xquery.XQPreparedExpression transformer,
MuleMessage message) |
Object |
clone() |
void |
dispose()
Template method where deriving classes can do any clean up any resources or state
before the object is disposed.
|
protected void |
doInitialise() |
protected Object |
evaluateTransformParameter(String name,
Object value,
MuleMessage message)
Returns the value to be set for the parameter.
|
net.sf.saxon.Configuration |
getConfiguration() |
Map<String,Object> |
getContextProperties()
Gets the parameters to be used when applying the transformation
|
int |
getMaxActiveTransformers() |
int |
getMaxIdleTransformers() |
String |
getXquery() |
String |
getXqueryFile() |
void |
setConfiguration(net.sf.saxon.Configuration configuration) |
void |
setContextProperties(Map<String,Object> contextProperties)
Sets the parameters to be used when applying the transformation
|
void |
setMaxActiveTransformers(int maxActiveTransformers)
Sets the the current maximum number of active transformer objects allowed in the
pool
|
void |
setMaxIdleTransformers(int maxIdleTransformers)
Sets the the current maximum number of idle transformer objects allowed in the pool
|
void |
setXquery(String xquery) |
void |
setXqueryFile(String xqueryFile) |
Object |
transformMessage(MuleMessage message,
String outputEncoding)
Transform the message
|
protected void |
unbindParameters(javax.xml.xquery.XQPreparedExpression transformer)
Removes any parameter bindings from the transformer, replacing them with empty strings
|
convertToBytes, convertToText, convertToText, getAcceptExternalEntities, getOutputEncoding, getResultHolder, getXMLInputFactory, getXMLOutputFactory, initialise, isUseStaxSource, setAcceptExternalEntities, setOutputEncoding, setUseStaxSource, setXMLInputFactory, setXMLOutputFactory, writeToStream
checkReturnClass, doTransform, isSourceDataTypeSupported, transform, transform, transform
generateTransformerName, getAnnotation, getAnnotations, getEncoding, getEncoding, getEndpoint, getMimeType, getName, getReturnClass, getReturnDataType, getSourceDataTypes, getSourceTypes, isAcceptNull, isAllowNullReturn, isConsumed, isIgnoreBadInput, isSourceDataTypeSupported, isSourceTypeSupported, isSourceTypeSupported, process, registerSourceType, registerSourceType, setAllowNullReturn, setAnnotations, setEncoding, setEndpoint, setIgnoreBadInput, setMimeType, setMuleContext, setName, setReturnClass, setReturnDataType, toString, transform, unregisterSourceType, unregisterSourceType
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getEncoding, getEndpoint, getMimeType, getReturnClass, getReturnDataType, getSourceDataTypes, getSourceTypes, isAcceptNull, isIgnoreBadInput, isSourceDataTypeSupported, isSourceTypeSupported, setReturnClass, setReturnDataType, transform
process
setName
getName
setMuleContext
setEndpoint
public static final String SOURCE_DOCUMENT_NAMESPACE
protected final org.apache.commons.pool.impl.GenericObjectPool transformerPool
protected net.sf.saxon.Configuration configuration
public XQueryTransformer()
public XQueryTransformer(String xqueryFile)
protected void doInitialise() throws InitialisationException
doInitialise
in class AbstractXmlTransformer
InitialisationException
public void dispose()
AbstractTransformer
dispose
in interface Disposable
dispose
in class AbstractTransformer
public Object transformMessage(MuleMessage message, String outputEncoding) throws TransformerException
AbstractMessageTransformer
transformMessage
in class AbstractMessageTransformer
TransformerException
protected void bindParameters(javax.xml.xquery.XQPreparedExpression transformer, MuleMessage message) throws javax.xml.xquery.XQException, TransformerException
protected void unbindParameters(javax.xml.xquery.XQPreparedExpression transformer) throws javax.xml.xquery.XQException
transformer
- the transformer to remove properties fromjavax.xml.xquery.XQException
protected void bindDocument(Object src, javax.xml.xquery.XQPreparedExpression transformer) throws Exception
src
- transformer
- javax.xml.xquery.XQException
Exception
public net.sf.saxon.Configuration getConfiguration()
public void setConfiguration(net.sf.saxon.Configuration configuration)
public String getXqueryFile()
public void setXqueryFile(String xqueryFile)
xqueryFile
- The xqueryFile to set.public String getXquery()
public void setXquery(String xquery)
public int getMaxActiveTransformers()
public void setMaxActiveTransformers(int maxActiveTransformers)
maxActiveTransformers
- New maximum size to setpublic int getMaxIdleTransformers()
public void setMaxIdleTransformers(int maxIdleTransformers)
maxIdleTransformers
- New maximum size to setpublic Map<String,Object> getContextProperties()
Transformer.setParameter(java.lang.String,
java.lang.Object)
public void setContextProperties(Map<String,Object> contextProperties)
contextProperties
- a map of the parameter names and associated valuesTransformer.setParameter(java.lang.String,
java.lang.Object)
protected Object evaluateTransformParameter(String name, Object value, MuleMessage message) throws TransformerException
Returns the value to be set for the parameter. This method is called for each parameter before it is set on the transformer. The purpose of this method is to allow dynamic parameters related to the event (usually message properties) to be used. Any expression using the Mule expression syntax can be used.
For example: If the current event's message has a property named "myproperty", to pass this in you would set the transform parameter's value to be "#[mule.message:header(myproperty)]".
This method may be overloaded by a sub class to provide a different dynamic parameter implementation.
name
- the name of the parametervalue
- the value of the paramterTransformerException
public Object clone() throws CloneNotSupportedException
clone
in class Object
CloneNotSupportedException
Copyright © 2003–2015 MuleSoft, Inc.. All rights reserved.