Search in sources :

Example 1 with StringPayloadDataInputParameter

use of com.adaptris.core.common.StringPayloadDataInputParameter in project interlok by adaptris.

the class XPathServiceTest method retrieveObjectForSampleConfig.

@Override
protected Object retrieveObjectForSampleConfig() {
    MetadataDataOutputParameter metadataDataDestination1 = new MetadataDataOutputParameter("targetMetadataKey");
    MetadataDataInputParameter metadataDataDestination2 = new MetadataDataInputParameter("sourceXpathMetadataKey");
    ConstantDataInputParameter constantDataDestination = new ConstantDataInputParameter("//my/xpath/expression");
    constantDataDestination.setValue("//my/xpath/expression");
    Execution execution1 = new Execution();
    execution1.setSource(constantDataDestination);
    execution1.setTarget(metadataDataDestination1);
    Execution execution2 = new Execution();
    execution2.setSource(metadataDataDestination2);
    execution2.setTarget(new MetadataDataOutputParameter("targetMetadataKey2"));
    List<Execution> executions = new ArrayList<Execution>();
    executions.add(execution1);
    executions.add(execution2);
    KeyValuePairSet namespaceMappings = new KeyValuePairSet();
    namespaceMappings.addKeyValuePair(new KeyValuePair("some", "http://adaptris.com/xml/some"));
    namespaceMappings.addKeyValuePair(new KeyValuePair("n1", "http://adaptris.com/xml/n1"));
    namespaceMappings.addKeyValuePair(new KeyValuePair("n2", "http://adaptris.com/xml/n2"));
    namespaceMappings.addKeyValuePair(new KeyValuePair("n3", "http://adaptris.com/xml/n3"));
    service.setNamespaceContext(namespaceMappings);
    service.setXmlSource(new StringPayloadDataInputParameter());
    service.setExecutions(executions);
    return service;
}
Also used : StringPayloadDataInputParameter(com.adaptris.core.common.StringPayloadDataInputParameter) Execution(com.adaptris.core.common.Execution) MetadataDataInputParameter(com.adaptris.core.common.MetadataDataInputParameter) KeyValuePair(com.adaptris.util.KeyValuePair) ConstantDataInputParameter(com.adaptris.core.common.ConstantDataInputParameter) ArrayList(java.util.ArrayList) MetadataDataOutputParameter(com.adaptris.core.common.MetadataDataOutputParameter) KeyValuePairSet(com.adaptris.util.KeyValuePairSet)

Example 2 with StringPayloadDataInputParameter

use of com.adaptris.core.common.StringPayloadDataInputParameter in project interlok by adaptris.

the class XPathServiceTest method testPayloadSimpleValueXPathIntoMetadata.

@Test
public void testPayloadSimpleValueXPathIntoMetadata() throws Exception {
    message.setContent(sampleXml, message.getContentEncoding());
    MetadataDataOutputParameter metadataDataDestination1 = new MetadataDataOutputParameter("targetMetadataKey");
    ConstantDataInputParameter constantDataDestination = new ConstantDataInputParameter("//some/random/xml/node1/text()");
    Execution execution = new Execution(constantDataDestination, metadataDataDestination1);
    List<Execution> executions = new ArrayList<>();
    executions.add(execution);
    service.setXmlSource(new StringPayloadDataInputParameter());
    service.setExecutions(executions);
    execute(service, message);
    assertEquals("value1", message.getMetadataValue("targetMetadataKey"));
}
Also used : StringPayloadDataInputParameter(com.adaptris.core.common.StringPayloadDataInputParameter) Execution(com.adaptris.core.common.Execution) ConstantDataInputParameter(com.adaptris.core.common.ConstantDataInputParameter) ArrayList(java.util.ArrayList) MetadataDataOutputParameter(com.adaptris.core.common.MetadataDataOutputParameter) Test(org.junit.Test)

Example 3 with StringPayloadDataInputParameter

use of com.adaptris.core.common.StringPayloadDataInputParameter in project interlok by adaptris.

the class XPathServiceTest method testPayloadSimpleValueXPathIntoPayload.

@Test
public void testPayloadSimpleValueXPathIntoPayload() throws Exception {
    message.setContent(sampleXml, message.getContentEncoding());
    message.addMetadata("sourceXpathMetadataKey", "//some/random/xml/node1/text()");
    MetadataDataInputParameter metadataDataDestination1 = new MetadataDataInputParameter("sourceXpathMetadataKey");
    Execution execution = new Execution(metadataDataDestination1, new StringPayloadDataOutputParameter());
    List<Execution> executions = new ArrayList<>();
    executions.add(execution);
    service.setXmlSource(new StringPayloadDataInputParameter());
    service.setExecutions(executions);
    execute(service, message);
    assertEquals("value1", message.getContent());
}
Also used : StringPayloadDataInputParameter(com.adaptris.core.common.StringPayloadDataInputParameter) Execution(com.adaptris.core.common.Execution) MetadataDataInputParameter(com.adaptris.core.common.MetadataDataInputParameter) ArrayList(java.util.ArrayList) StringPayloadDataOutputParameter(com.adaptris.core.common.StringPayloadDataOutputParameter) Test(org.junit.Test)

Example 4 with StringPayloadDataInputParameter

use of com.adaptris.core.common.StringPayloadDataInputParameter in project interlok by adaptris.

the class XPathServiceTest method testPayloadSimpleValueXPathIntoPayloadWithHeaderNamespaces.

@Test
public void testPayloadSimpleValueXPathIntoPayloadWithHeaderNamespaces() throws Exception {
    message.setContent(sampleXmlWithHeaderNamespaces, message.getContentEncoding());
    message.addMetadata("sourceXpathMetadataKey", "//some:some/random/xml/n1:node1/text()");
    MetadataDataInputParameter metadataDataDestination1 = new MetadataDataInputParameter("sourceXpathMetadataKey");
    Execution execution = new Execution(metadataDataDestination1, new StringPayloadDataOutputParameter());
    List<Execution> executions = new ArrayList<>();
    executions.add(execution);
    // Add the namespace mappings
    KeyValuePairSet namespaceMappings = new KeyValuePairSet();
    namespaceMappings.addKeyValuePair(new KeyValuePair("some", "http://adaptris.com/xml/some"));
    namespaceMappings.addKeyValuePair(new KeyValuePair("n1", "http://adaptris.com/xml/n1"));
    namespaceMappings.addKeyValuePair(new KeyValuePair("n2", "http://adaptris.com/xml/n2"));
    namespaceMappings.addKeyValuePair(new KeyValuePair("n3", "http://adaptris.com/xml/n3"));
    service.setNamespaceContext(namespaceMappings);
    service.setXmlSource(new StringPayloadDataInputParameter());
    service.setExecutions(executions);
    execute(service, message);
    assertEquals("value1", message.getContent());
}
Also used : StringPayloadDataInputParameter(com.adaptris.core.common.StringPayloadDataInputParameter) Execution(com.adaptris.core.common.Execution) MetadataDataInputParameter(com.adaptris.core.common.MetadataDataInputParameter) KeyValuePair(com.adaptris.util.KeyValuePair) ArrayList(java.util.ArrayList) KeyValuePairSet(com.adaptris.util.KeyValuePairSet) StringPayloadDataOutputParameter(com.adaptris.core.common.StringPayloadDataOutputParameter) Test(org.junit.Test)

Example 5 with StringPayloadDataInputParameter

use of com.adaptris.core.common.StringPayloadDataInputParameter in project interlok by adaptris.

the class XPathServiceTest method testPayloadSimpleValueXPathIntoPayloadWithNamespace.

@Test
public void testPayloadSimpleValueXPathIntoPayloadWithNamespace() throws Exception {
    message.setContent(sampleXmlWithInternalNamespaces, message.getContentEncoding());
    message.addMetadata("sourceXpathMetadataKey", "//some/random/xml/node1/text()");
    MetadataDataInputParameter metadataDataDestination1 = new MetadataDataInputParameter("sourceXpathMetadataKey");
    Execution execution = new Execution(metadataDataDestination1, new StringPayloadDataOutputParameter());
    List<Execution> executions = new ArrayList<>();
    executions.add(execution);
    service.setXmlSource(new StringPayloadDataInputParameter());
    service.setExecutions(executions);
    execute(service, message);
    assertEquals("value1", message.getContent());
}
Also used : StringPayloadDataInputParameter(com.adaptris.core.common.StringPayloadDataInputParameter) Execution(com.adaptris.core.common.Execution) MetadataDataInputParameter(com.adaptris.core.common.MetadataDataInputParameter) ArrayList(java.util.ArrayList) StringPayloadDataOutputParameter(com.adaptris.core.common.StringPayloadDataOutputParameter) Test(org.junit.Test)

Aggregations

Execution (com.adaptris.core.common.Execution)9 StringPayloadDataInputParameter (com.adaptris.core.common.StringPayloadDataInputParameter)9 ArrayList (java.util.ArrayList)9 Test (org.junit.Test)8 ConstantDataInputParameter (com.adaptris.core.common.ConstantDataInputParameter)6 MetadataDataOutputParameter (com.adaptris.core.common.MetadataDataOutputParameter)6 MetadataDataInputParameter (com.adaptris.core.common.MetadataDataInputParameter)4 StringPayloadDataOutputParameter (com.adaptris.core.common.StringPayloadDataOutputParameter)3 KeyValuePair (com.adaptris.util.KeyValuePair)2 KeyValuePairSet (com.adaptris.util.KeyValuePairSet)2 ServiceException (com.adaptris.core.ServiceException)1