Package org.apache.synapse.mediators.xquery

# Class XQueryMediator

java.lang.Object
org.apache.synapse.mediators.AbstractMediator
org.apache.synapse.mediators.xquery.XQueryMediator

All Implemented Interfaces:
  `org.apache.synapse.aspects.AspectConfigurable`, `org.apache.synapse.Mediator`, `org.apache.synapse.SynapseArtifact`

public class XQueryMediator extends org.apache.synapse.mediators.AbstractMediator
The XQueryMediator provides the means to extract and manipulate data from XML documents using XQuery . It is possible to query against the current SOAP Message or external XML. To query against the current SOAP Message ,it is need to define custom variable with any name and type as element,document,document_element By providing a expression ,It is possible to select a custom node for querying.The all the variable that have defined in the mediator will be available during the query process .Basic variable can use bind basic type. currently only support * string,int,byte,short,double,long,float and boolean * types. Custom Variable can use to bind XML documents ,SOAP payload and any basic type which create through the XPath expression .

- ## Field Summary

  ### Fields inherited from class org.apache.synapse.mediators.AbstractMediator

  `log, trace, traceState`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `XQueryMediator()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addAllDataSourceProperties(List<org.apache.synapse.mediators.MediatorProperty> list)`
  `void`
  `addAllVariables(List<MediatorVariable> list)`
  `void`
  `addVariable(MediatorVariable variable)`
  `List<org.apache.synapse.mediators.MediatorProperty>`
  `getProcessorProperties()`
  `org.apache.synapse.mediators.Value`
  `getQueryKey()`
  `String`
  `getQuerySource()`
  `org.apache.synapse.util.xpath.SynapseXPath`
  `getTarget()`
  `List<MediatorVariable>`
  `getVariables()`
  `boolean`
  `isContentAltering()`
  `boolean`
  `isUseDOMSource()`
  `boolean`
  `mediate(org.apache.synapse.MessageContext synCtx)`
  Performs the query and attached the result to the target Node
  `void`
  `setQueryKey(org.apache.synapse.mediators.Value queryKey)`
  `void`
  `setQuerySource(String querySource)`
  `void`
  `setTarget(org.apache.synapse.util.xpath.SynapseXPath source)`
  `void`
  `setUseDOMSource(boolean useDOMSource)`

  ### Methods inherited from class org.apache.synapse.mediators.AbstractMediator

  `auditLog, auditWarn, configure, disableStatistics, disableTracing, divertMediationRoute, enableStatistics, enableTracing, getArtifactIdentifier, getAspectConfiguration, getCommentsList, getDescription, getInputType, getLastSequenceFaultHandler, getLog, getMediatorId, getMediatorName, getMediatorPosition, getOutputType, getRegisteredMediationFlowPoint, getShortDescription, getTraceState, getType, handleException, handleException, isBreakPoint, isContentAware, isSkipEnabled, isStatisticsEnable, isTraceOn, isTraceOrDebugOn, isTracingEnabled, registerMediationFlowPoint, reportCloseStatistics, reportCloseStatisticsWithError, reportOpenStatistics, setArtifactIdentifier, setBreakPoint, setCommentsList, setComponentStatisticsId, setDescription, setEffectiveTraceState, setMediatorId, setMediatorPosition, setShortDescription, setSkipEnabled, setTraceState, shouldCaptureTracing, shouldTrace, shouldTrace, traceOrDebug, traceOrDebugWarn, unregisterMediationFlowPoint`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### XQueryMediator

    public XQueryMediator()

- ## Method Details

  - ### mediate

    public boolean mediate(org.apache.synapse.MessageContext synCtx)
    Performs the query and attached the result to the target Node
    Parameters:
      `synCtx` - The current message
    Returns:
      true always

  - ### getQueryKey

    public org.apache.synapse.mediators.Value getQueryKey()

  - ### setQueryKey

    public void setQueryKey(org.apache.synapse.mediators.Value queryKey)

  - ### getQuerySource

    public String getQuerySource()

  - ### setQuerySource

    public void setQuerySource(String querySource)

  - ### addAllVariables

    public void addAllVariables(List<MediatorVariable> list)

  - ### addVariable

    public void addVariable(MediatorVariable variable)

  - ### getProcessorProperties

    public List<org.apache.synapse.mediators.MediatorProperty> getProcessorProperties()

  - ### getVariables

    public List<MediatorVariable> getVariables()

  - ### getTarget

    public org.apache.synapse.util.xpath.SynapseXPath getTarget()

  - ### setTarget

    public void setTarget(org.apache.synapse.util.xpath.SynapseXPath source)

  - ### addAllDataSourceProperties

    public void addAllDataSourceProperties(List<org.apache.synapse.mediators.MediatorProperty> list)

  - ### isUseDOMSource

    public boolean isUseDOMSource()

  - ### setUseDOMSource

    public void setUseDOMSource(boolean useDOMSource)

  - ### isContentAltering

    public boolean isContentAltering()
    Specified by:
      `isContentAltering` in interface `org.apache.synapse.Mediator`
    Overrides:
      `isContentAltering` in class `org.apache.synapse.mediators.AbstractMediator`