blob: 27fa1daf05254d7aa40f27757385a9d4191308ce [file] [log] [blame]
<?xml version="1.0"?>
<!--
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
-->
<workflow xmlns="http://taverna.sf.net/2008/xml/t2flow" version="1" producedBy="taverna-2.1.0">
<dataflow id="92c5e8d5-8360-4f86-a845-09c9849cbdc5" role="top">
<name>Workflow1</name>
<inputPorts />
<outputPorts>
<port>
<name>asdasd</name>
<annotations />
</port>
</outputPorts>
<processors>
<processor>
<name>Workflow19</name>
<inputPorts>
<port>
<name>lk</name>
<depth>0</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>kk</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
<port>
<name>String_constant_value</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>dataflow-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.dataflow.DataflowActivity</class>
<inputMap>
<map from="lk" to="lk" />
</inputMap>
<outputMap>
<map from="String_constant_value" to="String_constant_value" />
<map from="kk" to="kk" />
</outputMap>
<configBean encoding="dataflow">
<dataflow ref="c451b1cf-1c95-47e5-b89c-537a5501a1ef" />
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="lk" depth="0" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>Concatenate_two_strings</name>
<inputPorts>
<port>
<name>string2</name>
<depth>0</depth>
</port>
<port>
<name>string1</name>
<depth>0</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>output</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap>
<map from="string2" to="string2" />
<map from="string1" to="string1" />
</inputMap>
<outputMap>
<map from="output" to="output" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.StringConcat</localworkerName>
<script>output = string1 + string2;</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string1</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string2</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>0</granularDepth>
<name>output</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="string2" depth="0" />
<port name="string1" depth="0" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>Concatenate_two_strings_2</name>
<inputPorts>
<port>
<name>string2</name>
<depth>0</depth>
</port>
<port>
<name>string1</name>
<depth>0</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>output</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap>
<map from="string2" to="string2" />
<map from="string1" to="string1" />
</inputMap>
<outputMap>
<map from="output" to="output" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.StringConcat</localworkerName>
<script>output = string1 + string2;</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string1</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string2</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>0</granularDepth>
<name>output</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="string2" depth="0" />
<port name="string1" depth="0" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>Create_Lots_Of_Strings</name>
<inputPorts />
<outputPorts>
<port>
<name>strings</name>
<depth>1</depth>
<granularDepth>1</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap />
<outputMap>
<map from="strings" to="strings" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.EmitLotsOfStrings</localworkerName>
<script>List strings = new ArrayList();
for (int i = 0; i &lt; 40; i++) {
strings.add("String" + i);
}
</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs />
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>1</granularDepth>
<name>strings</name>
<depth>1</depth>
<mimeTypes>
<string>l('text/plain')</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy />
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>Concatenate_two_strings_3</name>
<inputPorts>
<port>
<name>string1</name>
<depth>0</depth>
</port>
<port>
<name>string2</name>
<depth>0</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>output</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap>
<map from="string2" to="string2" />
<map from="string1" to="string1" />
</inputMap>
<outputMap>
<map from="output" to="output" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.StringConcat</localworkerName>
<script>output = string1 + string2;</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string1</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string2</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>0</granularDepth>
<name>output</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="string1" depth="0" />
<port name="string2" depth="0" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>String_constant</name>
<inputPorts />
<outputPorts>
<port>
<name>value</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>stringconstant-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.stringconstant.StringConstantActivity</class>
<inputMap />
<outputMap>
<map from="value" to="value" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.stringconstant.StringConstantConfigurationBean xmlns="">
<value>Add your own value here</value>
</net.sf.taverna.t2.activities.stringconstant.StringConstantConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy />
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>Concatenate_two_strings_4</name>
<inputPorts>
<port>
<name>string1</name>
<depth>0</depth>
</port>
<port>
<name>string2</name>
<depth>0</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>output</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap>
<map from="string2" to="string2" />
<map from="string1" to="string1" />
</inputMap>
<outputMap>
<map from="output" to="output" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.StringConcat</localworkerName>
<script>output = string1 + string2;</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string1</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string2</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>0</granularDepth>
<name>output</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="string1" depth="0" />
<port name="string2" depth="0" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>Echo_List</name>
<inputPorts>
<port>
<name>inputlist</name>
<depth>1</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>outputlist</name>
<depth>1</depth>
<granularDepth>1</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap>
<map from="inputlist" to="inputlist" />
</inputMap>
<outputMap>
<map from="outputlist" to="outputlist" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.EchoList</localworkerName>
<script>outputlist = inputlist;</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>[B</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>inputlist</name>
<depth>1</depth>
<mimeTypes>
<string>l('')</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>1</granularDepth>
<name>outputlist</name>
<depth>1</depth>
<mimeTypes>
<string>l('')</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="inputlist" depth="1" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
</processors>
<conditions />
<datalinks>
<datalink>
<sink type="processor">
<processor>Workflow19</processor>
<port>lk</port>
</sink>
<source type="processor">
<processor>Concatenate_two_strings</processor>
<port>output</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings</processor>
<port>string2</port>
</sink>
<source type="processor">
<processor>Concatenate_two_strings_2</processor>
<port>output</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings</processor>
<port>string1</port>
</sink>
<source type="processor">
<processor>Create_Lots_Of_Strings</processor>
<port>strings</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings_2</processor>
<port>string2</port>
</sink>
<source type="processor">
<processor>Create_Lots_Of_Strings</processor>
<port>strings</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings_2</processor>
<port>string1</port>
</sink>
<source type="processor">
<processor>Create_Lots_Of_Strings</processor>
<port>strings</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings_3</processor>
<port>string1</port>
</sink>
<source type="processor">
<processor>Workflow19</processor>
<port>kk</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings_3</processor>
<port>string2</port>
</sink>
<source type="processor">
<processor>String_constant</processor>
<port>value</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings_4</processor>
<port>string1</port>
</sink>
<source type="processor">
<processor>String_constant</processor>
<port>value</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings_4</processor>
<port>string2</port>
</sink>
<source type="processor">
<processor>Workflow19</processor>
<port>String_constant_value</port>
</source>
</datalink>
<datalink>
<sink type="merge">
<processor>Echo_List</processor>
<port>inputlist</port>
</sink>
<source type="processor">
<processor>Concatenate_two_strings_4</processor>
<port>output</port>
</source>
</datalink>
<datalink>
<sink type="merge">
<processor>Echo_List</processor>
<port>inputlist</port>
</sink>
<source type="processor">
<processor>Concatenate_two_strings_3</processor>
<port>output</port>
</source>
</datalink>
<datalink>
<sink type="dataflow">
<port>asdasd</port>
</sink>
<source type="processor">
<processor>Echo_List</processor>
<port>outputlist</port>
</source>
</datalink>
</datalinks>
<annotations />
</dataflow>
<dataflow id="c451b1cf-1c95-47e5-b89c-537a5501a1ef" role="nested">
<name>Workflow19</name>
<inputPorts>
<port>
<name>lk</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
<annotations />
</port>
</inputPorts>
<outputPorts>
<port>
<name>kk</name>
<annotations />
</port>
<port>
<name>String_constant_value</name>
<annotations />
</port>
</outputPorts>
<processors>
<processor>
<name>Concatenate_two_strings</name>
<inputPorts>
<port>
<name>string1</name>
<depth>0</depth>
</port>
<port>
<name>string2</name>
<depth>0</depth>
</port>
</inputPorts>
<outputPorts>
<port>
<name>output</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>localworker-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.localworker.LocalworkerActivity</class>
<inputMap>
<map from="string2" to="string2" />
<map from="string1" to="string1" />
</inputMap>
<outputMap>
<map from="output" to="output" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean xmlns="">
<localworkerName>org.embl.ebi.escience.scuflworkers.java.StringConcat</localworkerName>
<script>output = string1 + string2;</script>
<dependencies />
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string1</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<handledReferenceSchemes />
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
<name>string2</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<granularDepth>0</granularDepth>
<name>output</name>
<depth>0</depth>
<mimeTypes>
<string>'text/plain'</string>
</mimeTypes>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
</net.sf.taverna.t2.activities.localworker.LocalworkerActivityConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy>
<cross>
<port name="string1" depth="0" />
<port name="string2" depth="0" />
</cross>
</strategy>
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>string1_value</name>
<inputPorts />
<outputPorts>
<port>
<name>value</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>stringconstant-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.stringconstant.StringConstantActivity</class>
<inputMap />
<outputMap>
<map from="value" to="value" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.stringconstant.StringConstantConfigurationBean xmlns="">
<value>kjkj</value>
</net.sf.taverna.t2.activities.stringconstant.StringConstantConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy />
</iteration>
</iterationStrategyStack>
</processor>
<processor>
<name>String_constant</name>
<inputPorts />
<outputPorts>
<port>
<name>value</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</port>
</outputPorts>
<annotations />
<activities>
<activity>
<raven>
<group>net.sf.taverna.t2.activities</group>
<artifact>stringconstant-activity</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.activities.stringconstant.StringConstantActivity</class>
<inputMap />
<outputMap>
<map from="value" to="value" />
</outputMap>
<configBean encoding="xstream">
<net.sf.taverna.t2.activities.stringconstant.StringConstantConfigurationBean xmlns="">
<value>Add your own value here</value>
</net.sf.taverna.t2.activities.stringconstant.StringConstantConfigurationBean>
</configBean>
<annotations />
</activity>
</activities>
<dispatchStack>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
<maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class>
<configBean encoding="xstream">
<net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
<backoffFactor>1.0</backoffFactor>
<initialDelay>1000</initialDelay>
<maxDelay>5000</maxDelay>
<maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig>
</configBean>
</dispatchLayer>
<dispatchLayer>
<raven>
<group>net.sf.taverna.t2.core</group>
<artifact>workflowmodel-impl</artifact>
<version>1.0</version>
</raven>
<class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class>
<configBean encoding="xstream">
<null xmlns="" />
</configBean>
</dispatchLayer>
</dispatchStack>
<iterationStrategyStack>
<iteration>
<strategy />
</iteration>
</iterationStrategyStack>
</processor>
</processors>
<conditions>
<condition control="Concatenate_two_strings" target="String_constant" />
</conditions>
<datalinks>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings</processor>
<port>string1</port>
</sink>
<source type="processor">
<processor>string1_value</processor>
<port>value</port>
</source>
</datalink>
<datalink>
<sink type="processor">
<processor>Concatenate_two_strings</processor>
<port>string2</port>
</sink>
<source type="dataflow">
<port>lk</port>
</source>
</datalink>
<datalink>
<sink type="dataflow">
<port>kk</port>
</sink>
<source type="processor">
<processor>Concatenate_two_strings</processor>
<port>output</port>
</source>
</datalink>
<datalink>
<sink type="dataflow">
<port>String_constant_value</port>
</sink>
<source type="processor">
<processor>String_constant</processor>
<port>value</port>
</source>
</datalink>
</datalinks>
<annotations />
</dataflow>
</workflow>