Search in sources :

Example 41 with SynapseXPath

use of org.apache.synapse.util.xpath.SynapseXPath in project wso2-synapse by wso2.

the class SynapseXPathTest method testAbsoluteXPath.

public void testAbsoluteXPath() throws Exception {
    SynapseXPath xpath = new SynapseXPath("//test");
    MessageContext ctx = TestUtils.getTestContext("<test>" + message + "</test>");
    assertEquals(message, xpath.stringValueOf(ctx));
}
Also used : SynapseXPath(org.apache.synapse.util.xpath.SynapseXPath) TestMessageContext(org.apache.synapse.TestMessageContext) MessageContext(org.apache.synapse.MessageContext) Axis2MessageContext(org.apache.synapse.core.axis2.Axis2MessageContext)

Example 42 with SynapseXPath

use of org.apache.synapse.util.xpath.SynapseXPath in project wso2-synapse by wso2.

the class SynapseXPathTest method testAxis2ContextProperties.

public void testAxis2ContextProperties() throws Exception {
    Axis2MessageContext synCtx = TestUtils.getAxis2MessageContext("<test/>", null);
    synCtx.getAxis2MessageContext().setProperty("test", message);
    synCtx.getAxis2MessageContext().setProperty("test2", "1234");
    assertEquals(message, new SynapseXPath("$axis2:test").evaluate(synCtx));
    assertEquals(1234, new SynapseXPath("$axis2:test2").numberValueOf(synCtx).intValue());
    assertTrue(new SynapseXPath("$axis2:test2 = 1234").booleanValueOf(synCtx));
}
Also used : SynapseXPath(org.apache.synapse.util.xpath.SynapseXPath) Axis2MessageContext(org.apache.synapse.core.axis2.Axis2MessageContext)

Example 43 with SynapseXPath

use of org.apache.synapse.util.xpath.SynapseXPath in project wso2-synapse by wso2.

the class SynapseXPathTest method testStandardXPathFunctions.

public void testStandardXPathFunctions() throws Exception {
    MessageContext ctx = TestUtils.getTestContext("<test>123456</test>");
    assertEquals(6, new SynapseXPath("string-length(//test)").numberValueOf(ctx).intValue());
}
Also used : SynapseXPath(org.apache.synapse.util.xpath.SynapseXPath) TestMessageContext(org.apache.synapse.TestMessageContext) MessageContext(org.apache.synapse.MessageContext) Axis2MessageContext(org.apache.synapse.core.axis2.Axis2MessageContext)

Example 44 with SynapseXPath

use of org.apache.synapse.util.xpath.SynapseXPath in project wso2-synapse by wso2.

the class SynapseXPathTest method testStringXPath.

public void testStringXPath() throws Exception {
    SynapseXPath xpath = SynapseXPath.parseXPathString("$body//{http://somens}test");
    MessageContext ctx = TestUtils.getTestContext("<m0:test xmlns:m0=\"http://somens\">" + message + "</m0:test>");
    assertEquals(message, xpath.stringValueOf(ctx));
}
Also used : SynapseXPath(org.apache.synapse.util.xpath.SynapseXPath) TestMessageContext(org.apache.synapse.TestMessageContext) MessageContext(org.apache.synapse.MessageContext) Axis2MessageContext(org.apache.synapse.core.axis2.Axis2MessageContext)

Example 45 with SynapseXPath

use of org.apache.synapse.util.xpath.SynapseXPath in project wso2-synapse by wso2.

the class DetachMediatorFactory method createSpecificMediator.

public DetachMediator createSpecificMediator(OMElement elem, Properties properties) {
    DetachMediator mediator = new DetachMediator();
    processAuditStatus(mediator, elem);
    OMAttribute attSource = elem.getAttribute(ATT_SOURCE);
    OMAttribute attProperty = elem.getAttribute(ATT_PROPERTY);
    if (attSource != null) {
        try {
            mediator.setSource(new SynapseXPath(attSource));
        } catch (JaxenException e) {
            handleException("Invalid XPath specified for the source attribute : " + attSource.getAttributeValue());
        }
    }
    if (attProperty != null) {
        mediator.setProperty(attProperty.getAttributeValue());
    } else {
        handleException("The 'property' attribute is required for the detach mediator");
    }
    return mediator;
}
Also used : SynapseXPath(org.apache.synapse.util.xpath.SynapseXPath) JaxenException(org.jaxen.JaxenException) OMAttribute(org.apache.axiom.om.OMAttribute)

Aggregations

SynapseXPath (org.apache.synapse.util.xpath.SynapseXPath)68 MessageContext (org.apache.synapse.MessageContext)24 JaxenException (org.jaxen.JaxenException)20 Axis2MessageContext (org.apache.synapse.core.axis2.Axis2MessageContext)15 OMElement (org.apache.axiom.om.OMElement)14 OMAttribute (org.apache.axiom.om.OMAttribute)11 Value (org.apache.synapse.mediators.Value)9 TestMessageContext (org.apache.synapse.TestMessageContext)8 Pattern (java.util.regex.Pattern)6 Iterator (java.util.Iterator)5 QName (javax.xml.namespace.QName)5 EndpointReference (org.apache.axis2.addressing.EndpointReference)4 SynapseException (org.apache.synapse.SynapseException)4 TestMessageContextBuilder (org.apache.synapse.TestMessageContextBuilder)4 SynapseJsonPath (org.apache.synapse.util.xpath.SynapseJsonPath)4 Method (java.lang.reflect.Method)3 Map (java.util.Map)3 MediatorProperty (org.apache.synapse.mediators.MediatorProperty)3 Field (java.lang.reflect.Field)2 List (java.util.List)2