Author: lwaterman
Date: Mon Sep 18 19:08:10 2006
New Revision: 447679
URL: http://svn.apache.org/viewvc?view=rev&rev=447679
Log:
Add TestFlowActivity
Added:
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/PartnerRoleChannelImpl.java
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/ProbeService/
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/ProbeService/probeService.wsdl
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.bpel
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.wsdl
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_1.txt
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_2.txt
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_3.txt
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_4.txt
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_5.txt
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_6.txt
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/deploy.xml
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/probeService.wsdl
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/test.properties
Modified:
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BindingContextImpl.java
incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java
Modified:
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BindingContextImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BindingContextImpl.java?view=diff&rev=447679&r1=447678&r2=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BindingContextImpl.java
(original)
+++
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BindingContextImpl.java
Mon Sep 18 19:08:10 2006
@@ -40,7 +40,7 @@
public PartnerRoleChannel createPartnerRoleChannel(QName processId,
DeploymentUnit deploymentUnit, PortType portType,
Endpoint initialPartnerEndpoint) {
- return null;
+ return new PartnerRoleChannelImpl();
}
}
Added:
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java
(added)
+++
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,80 @@
+/*
+ * 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.
+ */
+
+package org.apache.ode.test;
+
+import javax.wsdl.PortType;
+import javax.xml.namespace.QName;
+
+import org.apache.ode.bpel.iapi.BpelEngineException;
+import org.apache.ode.bpel.iapi.ContextException;
+import org.apache.ode.bpel.iapi.Message;
+import org.apache.ode.bpel.iapi.MessageExchangeContext;
+import org.apache.ode.bpel.iapi.MyRoleMessageExchange;
+import org.apache.ode.bpel.iapi.PartnerRoleMessageExchange;
+import org.w3c.dom.Element;
+
+/**
+ * This is a simple MessageExchangeContext implementation
+ * that only supports a set of "well known" portTypes used
+ * for testing.
+ *
+ *
+ */
+public class MessageExchangeContextImpl implements MessageExchangeContext {
+
+ // Probe Service is a simple concatination service
+ private QName probePT = new
QName("http://ode/bpel/unit-test/ProbeService.wsdl","probeMessagePT");
+
+ public void invokePartner(PartnerRoleMessageExchange mex)
+ throws ContextException {
+ QName calledPT = mex.getPortType().getQName();
+
+ if (calledPT.equals(probePT)) {
+ invokeProbeService(mex);
+ }
+
+
+ }
+
+ public void onAsyncReply(MyRoleMessageExchange myRoleMex)
+ throws BpelEngineException {
+
+ }
+
+ private void invokeProbeService(PartnerRoleMessageExchange prmx) {
+ Message msg = prmx.getRequest();
+ Element elm1 = prmx.getRequest().getPart("probeName");
+ Element elm2 = prmx.getRequest().getPart("probeData");
+
+ if ( elm1 != null && elm2 != null ) {
+ String cat = elm2.getTextContent()+" ->
"+elm1.getTextContent();
+ elm2.setTextContent(cat);
+ msg.setMessagePart("probeData", elm2);
+ final Message response =
prmx.createMessage(prmx.getOperation().getOutput().getMessage().getQName());
+
+ response.setMessage(msg.getMessage());
+ prmx.reply(response);
+ }
+
+
+
+ }
+
+}
Added:
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/PartnerRoleChannelImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/PartnerRoleChannelImpl.java?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/PartnerRoleChannelImpl.java
(added)
+++
incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/PartnerRoleChannelImpl.java
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,31 @@
+package org.apache.ode.test;
+
+import org.apache.ode.bpel.iapi.EndpointReference;
+import org.apache.ode.bpel.iapi.PartnerRoleChannel;
+import org.apache.ode.utils.DOMUtils;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+public class PartnerRoleChannelImpl implements PartnerRoleChannel {
+
+ public PartnerRoleChannelImpl() {
+
+ }
+
+ public void close() {
+
+ }
+
+ public EndpointReference getInitialEndpointReference() {
+ final Document doc = DOMUtils.newDocument();
+ Element serviceref =
doc.createElementNS(EndpointReference.SERVICE_REF_QNAME.getNamespaceURI(),
+ EndpointReference.SERVICE_REF_QNAME.getLocalPart());
+ doc.appendChild(serviceref);
+ return new EndpointReference() {
+ public Document toXML() {
+ return doc;
+ }
+ };
+ }
+}
+
Modified:
incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java?view=diff&rev=447679&r1=447678&r2=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java
(original)
+++
incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java
Mon Sep 18 19:08:10 2006
@@ -45,6 +45,7 @@
server.setDaoConnectionFactory(new
BpelDAOConnectionFactoryImpl());
server.setScheduler(new TestScheduler());
server.setBindingContext(new BindingContextImpl());
+ server.setMessageExchangeContext(new
MessageExchangeContextImpl());
server.setDeploymentManager(new DeploymentManagerImpl());
server.init();
server.start();
@@ -76,7 +77,8 @@
Message request = mex.createMessage(null);
- Element elem = DOMUtils.stringToDOM(in);
+ Element elem = DOMUtils.stringToDOM(in);
+ String tmp = elem.toString();
request.setMessage(elem);
mex.invoke(request);
@@ -84,12 +86,15 @@
Message response = mex.getResponse();
String resp = DOMUtils.domToString(response.getMessage());
+ System.out.println(resp);
assertTrue(Pattern.compile(responsePattern,Pattern.DOTALL).matcher(resp).matches());
-
}
- public void testHelloWorld2() throws Exception {
- go("target/test-classes/bpel/2.0/HelloWorld2");
+// public void testHelloWorld2() throws Exception {
+// go("target/test-classes/bpel/2.0/HelloWorld2");
+// }
+ public void testFlowActivity() throws Exception {
+ go("target/test-classes/bpel/2.0/TestFlowActivity");
}
}
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/ProbeService/probeService.wsdl
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/ProbeService/probeService.wsdl?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/ProbeService/probeService.wsdl
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/ProbeService/probeService.wsdl
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,33 @@
+<?xml version="1.0" ?>
+
+<!-- The probe service is a simple extension that concatenates two strings -->
+<!-- The probeName part is concatenated to the end of the probeData part -->
+<!-- and the probeData part is returned as output. -->
+<!-- The service is used to facilitate chicken track debugging of BPEL -->
+
+<wsdl:definitions targetNamespace="http://ode/bpel/unit-test/ProbeService.wsdl"
+ xmlns:tns="http://ode/bpel/unit-test/ProbeService.wsdl"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns="http://schemas.xmlsoap.org/wsdl/">
+
+
+ <!-- message declns -->
+
+ <wsdl:message name="probeMessage">
+ <wsdl:part name="probeName" type="xsd:string"/>
+ <wsdl:part name="probeData" type="xsd:string"/>
+ </wsdl:message>
+
+
+ <!-- port type declns -->
+ <wsdl:portType name="probeMessagePT">
+ <wsdl:operation name="probe">
+ <wsdl:input name="ProbeInputMessage" message="tns:probeMessage"/>
+ <wsdl:output name="ProbeOutputMessage" message="tns:probeMessage"/>
+ </wsdl:operation>
+
+ </wsdl:portType>
+
+</wsdl:definitions>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.bpel
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.bpel?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.bpel
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.bpel
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,289 @@
+<process xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://schemas.xmlsoap.org/ws/2004/03/business-process/
../../../../../../../bpel-schemas/src/main/resources/wsbpel_main-draft-Apr-29-2006.xsd"
+ xmlns:tns="http://ode/bpel/unit-test/testFlowActivity"
+ xmlns:wns="http://ode/bpel/unit-test/testFlowActivity.wsdl"
+ xmlns:prb="http://ode/bpel/unit-test/ProbeService.wsdl"
+ xmlns="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
+ xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
+ name="TestFlowActivityProcess"
+ targetNamespace="http://ode/bpel/unit-test/testFlowActivity"
+ suppressJoinFailure="yes"
+ queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
+ expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0">
+
+ <import location="TestActivityFlow.wsdl"
+ namespace="http://ode/bpel/unit-test/testFlowActivity.wsdl"
+ importType="http://schemas.xmlsoap.org/wsdl/" />
+ <import location="probeService.wsdl"
+ namespace="http://ode/bpel/unit-test/ProbeService.wsdl"
+ importType="http://schemas.xmlsoap.org/wsdl/"/>
+
+ <!-- test control flow elements -->
+ <!-- sequence -->
+ <!-- flow ( links ) -->
+ <!-- swith -->
+ <!-- while -->
+ <partnerLinks>
+ <partnerLink name="request"
partnerLinkType="wns:testFlowActivityRequest" myRole="testFlowActivityService"/>
+ <partnerLink name="probe" partnerLinkType="wns:probeRequest"
partnerRole="probeService" initializePartnerRole="yes"/>
+ </partnerLinks>
+ <variables>
+ <variable name="request" messageType="wns:requestMessage"/>
+ <variable name="probeInput" messageType="prb:probeMessage"/>
+ <variable name="reply" messageType="wns:replyMessage"/>
+ <variable name="internalState"
messageType="wns:internalProcessData"/>
+ </variables>
+ <sequence>
+ <flow>
+ <links>
+ <link name="receive-to-assign1"/>
+ <link name="assign1-to-probe1"/>
+ <link name="assign1-to-probe2"/>
+ <link name="probe1-to-probe3"/>
+ <link name="probe2-to-probe3"/>
+ </links>
+ <receive name="receive1" partnerLink="request"
portType="wns:testFlowActivityPT"
+ operation="request" variable="request"
createInstance="yes">
+ <sources>
+ <source linkName="receive-to-assign1"/>
+ </sources>
+ </receive>
+ <!-- Copy input variables to internal accumulators -->
+ <!-- After the copy the process splits into two
execution paths -->
+ <sequence>
+ <targets>
+ <target linkName="receive-to-assign1"/>
+ </targets>
+ <sources>
+ <source linkName="assign1-to-probe1"/>
+ <source linkName="assign1-to-probe2"/>
+ </sources>
+ <assign name="assign1">
+ <copy>
+
<from>$request.requestMessageData/testMessage/requestID</from>
+ <to variable="probeInput"
part="probeName"/>
+ </copy>
+ <copy>
+ <from variable="request"
property="wns:testProbeData"/>
+ <to variable="probeInput"
part="probeData"/>
+ </copy>
+ </assign>
+ <assign>
+ <copy>
+ <from>
+ <literal><![CDATA[root
process splits into A and B]]></literal>
+ </from>
+ <to variable="probeInput"
part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe2" partnerLink="probe"
portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ <!-- probe1 outbound status is dependent on the request
input testFlow1 -->
+ <sequence>
+ <targets>
+ <target linkName="assign1-to-probe1"/>
+ </targets>
+ <sources>
+ <source linkName="probe1-to-probe3">
+
<transitionCondition>bpws:getVariableProperty("request", "wns:testFlow1") =
+
'yes'</transitionCondition>
+ </source>
+ </sources>
+ <assign>
+ <copy>
+ <from>
+
<literal><![CDATA[process A completes]]></literal>
+ </from>
+ <to variable="probeInput"
part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe3" partnerLink="probe"
portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ <!-- probe2 outbound status is dependent on the request
input testFlow2 -->
+ <sequence>
+ <targets>
+ <target linkName="assign1-to-probe2"/>
+ </targets>
+ <sources>
+ <source linkName="probe2-to-probe3">
+
<transitionCondition>$request.requestMessageData/testMessage/flowIndicators/indicatorTwo
=
+
'yes'</transitionCondition>
+ </source>
+ </sources>
+ <assign>
+ <copy>
+ <from>
+
<literal><![CDATA[process B completes]]></literal>
+ </from>
+ <to variable="probeInput"
part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe4" partnerLink="probe"
portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ <!-- The split execution path from assign1 joins on
probe3 -->
+ <!-- Probe3 will only fire if the transition condition
from probe1 and probe2 both evaluate to true -->
+ <sequence>
+ <targets>
+ <joinCondition>$probe1-to-probe3 and
$probe2-to-probe3</joinCondition>
+ <target linkName="probe1-to-probe3"/>
+ <target linkName="probe2-to-probe3"/>
+ </targets>
+ <assign>
+ <copy>
+ <from>
+
<literal><![CDATA[processes A and B merge on process C]]></literal>
+ </from>
+ <to variable="probeInput"
part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe5" partnerLink="probe"
portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ </flow>
+ <assign>
+ <copy>
+ <from>
+ <literal><![CDATA[merge into root
process]]></literal>
+ </from>
+ <to variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe6" partnerLink="probe"
portType="prb:probeMessagePT" operation="probe"
+ inputVariable="probeInput" outputVariable="probeInput">
</invoke>
+ <!-- from the input data loopIndicator set the number of loop
interations -->
+ <assign>
+ <copy>
+ <from>
+ <literal><![CDATA[test switch
statement]]></literal>
+ </from>
+ <to variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe7" partnerLink="probe"
portType="prb:probeMessagePT" operation="probe"
+ inputVariable="probeInput" outputVariable="probeInput">
</invoke>
+ <if>
+ <condition>bpws:getVariableProperty("request",
"wns:loopInd") = 'min'</condition>
+ <then>
+ <sequence>
+ <assign name="flow1-min-assign">
+ <copy>
+ <from>5</from>
+ <to
variable="internalState" part="loop1"/>
+ </copy>
+ <copy>
+ <from>
+
<literal><![CDATA[case min: set loop iterations = 5]]></literal>
+ </from>
+ <to
variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe8"
partnerLink="probe" portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ </then>
+ <elseif>
+
<condition>$request.requestMessageData/testMessage/loopIndicator =
'max'</condition>
+ <sequence>
+ <assign name="flow1-max-assign">
+ <copy>
+ <from>10</from>
+ <to
variable="internalState" part="loop1"/>
+ </copy>
+ <copy>
+ <from>
+
<literal><![CDATA[case max: set loop iterations = 10]]></literal>
+ </from>
+ <to
variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe9"
partnerLink="probe" portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ </elseif>
+ <else>
+ <sequence>
+ <assign name="flow1-default-assign">
+ <copy>
+ <from>0</from>
+ <to
variable="internalState" part="loop1"/>
+ </copy>
+ <copy>
+ <from>
+
<literal><![CDATA[otherwise: set loop iterations = 0]]></literal>
+ </from>
+ <to
variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe10"
partnerLink="probe" portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"
+ > </invoke>
+ </sequence>
+ </else>
+ </if>
+
+ <assign name="while-increment-initialize">
+ <copy>
+ <from>0</from>
+ <to variable="internalState"
part="loop1Counter"></to>
+ </copy>
+ <copy>
+ <from>
+ <literal><![CDATA[test loop
iterations]]></literal>
+ </from>
+ <to variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe10" partnerLink="probe"
portType="prb:probeMessagePT" operation="probe"
+ inputVariable="probeInput" outputVariable="probeInput">
</invoke>
+ <while>
+ <condition>$internalState.loop1Counter <
$internalState.loop1</condition>
+ <sequence>
+ <assign name="while-increment">
+ <copy>
+
<from>$internalState.loop1Counter + 1</from>
+ <to variable="internalState"
part="loop1Counter"/>
+ </copy>
+ <copy>
+
<from>$internalState.loop1Counter + 1</from>
+ <to variable="probeInput"
part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe11" partnerLink="probe"
portType="prb:probeMessagePT"
+ operation="probe"
inputVariable="probeInput" outputVariable="probeInput"/>
+
+ </sequence>
+ </while>
+ <!-- copy internal accumulators to the reply message -->
+ <assign>
+ <copy>
+ <from>
+ <literal><![CDATA[test1Process
complete]]></literal>
+ </from>
+ <to variable="probeInput" part="probeName"/>
+ </copy>
+ </assign>
+ <invoke name="probe12" partnerLink="probe"
portType="prb:probeMessagePT" operation="probe"
+ inputVariable="probeInput" outputVariable="probeInput">
</invoke>
+ <assign name="assign2">
+ <copy>
+ <from variable="probeInput" part="probeName"/>
+ <to variable="reply" part="replyID"/>
+ </copy>
+ <copy>
+ <from variable="probeInput" part="probeData"/>
+ <to variable="reply" part="replyText"/>
+ </copy>
+ </assign>
+ <reply name="reply" partnerLink="request"
portType="wns:testFlowActivityPT" operation="request"
+ variable="reply"> </reply>
+ </sequence>
+</process>
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.wsdl
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.wsdl?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.wsdl
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/TestActivityFlow.wsdl
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,106 @@
+<!-- The public service interface for test1.bpel -->
+
+<wsdl:definitions
+ targetNamespace="http://ode/bpel/unit-test/testFlowActivity.wsdl"
+ xmlns:tns="http://ode/bpel/unit-test/testFlowActivity.wsdl"
+ xmlns="http://ode/bpel/unit-test/testFlowActivity.wsdl"
+ xmlns:typens="http://ode/bpel/unit-test/testFlowActivity.wsdl.types"
+ xmlns:prb="http://ode/bpel/unit-test/ProbeService.wsdl"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:plnk="http://schemas.xmlsoap.org/ws/2004/03/partner-link/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/">
+
+ <!-- type defs -->
+ <wsdl:types>
+ <xsd:schema
+ targetNamespace="http://ode/bpel/unit-test/testFlowActivity.wsdl.types"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:complexType name="flowIndicator">
+ <xsd:sequence>
+ <xsd:element name="indicatorOne" type="xsd:boolean"/>
+ <xsd:element name="indicatorTwo" type="xsd:boolean"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="testMessage">
+ <xsd:sequence>
+ <xsd:element name="requestID" type="xsd:string"/>
+ <xsd:element name="requestText" type="xsd:string"/>
+ <xsd:element name="flowIndicators" type="typens:flowIndicator"/>
+ <xsd:element name="loopIndicator" type="xsd:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ </xsd:schema>
+ </wsdl:types>
+
+ <wsdl:message name="requestMessage">
+ <wsdl:part name="requestMessageData" type="typens:testMessage"/>
+ </wsdl:message>
+
+ <wsdl:message name="replyMessage">
+ <wsdl:part name="replyID" type="xsd:string"/>
+ <wsdl:part name="replyText" type="xsd:string"/>
+ </wsdl:message>
+
+ <wsdl:message name="internalProcessData">
+ <wsdl:part name="loop1Counter" type="xsd:int"/>
+ <wsdl:part name="loop1" type="xsd:int"/>
+ </wsdl:message>
+
+ <!-- portType supported by the test process -->
+
+ <wsdl:portType name="testFlowActivityPT">
+ <wsdl:operation name="request">
+ <wsdl:input message="requestMessage"/>
+ <wsdl:output message="replyMessage"/>
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:binding name="TestFlowActivityBinding" type="tns:testFlowActivityPT">
+ <wsdl:operation name="request">
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="TestFlowActivityService">
+ <wsdl:port name="TestFlowActivityPort"
binding="tns:TestFlowActivityBinding">
+ </wsdl:port>
+ </wsdl:service>
+
+ <plnk:partnerLinkType name="testFlowActivityRequest">
+ <plnk:role name="testFlowActivityService"
portType="tns:testFlowActivityPT"/>
+ </plnk:partnerLinkType>
+
+ <plnk:partnerLinkType name="probeRequest">
+ <plnk:role name="probeService" portType="prb:probeMessagePT"/>
+ </plnk:partnerLinkType>
+
+ <bpws:property name="testProbeData" type="xsd:string"/>
+ <bpws:propertyAlias propertyName="tns:testProbeData"
messageType="tns:requestMessage" part="requestMessageData">
+ <bpws:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0">
+ testMessage/requestText
+ </bpws:query>
+ </bpws:propertyAlias>/>
+
+ <bpws:property name="testFlow1" type="xsd:boolean"/>
+ <bpws:propertyAlias propertyName="tns:testFlow1"
messageType="tns:requestMessage" part="requestMessageData">
+
+ <bpws:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0">
+ testMessage/flowIndicators/indicatorOne
+ </bpws:query>
+
+ </bpws:propertyAlias>
+
+
+ <bpws:property name="loopInd" type="xsd:string"/>
+ <bpws:propertyAlias propertyName="tns:loopInd"
messageType="tns:requestMessage" part="requestMessageData">
+
+ <bpws:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0">
+ testMessage/loopIndicator
+ </bpws:query>
+
+ </bpws:propertyAlias>
+
+
+
+</wsdl:definitions>
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_1.txt
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_1.txt?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_1.txt
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_1.txt
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,14 @@
+# Test BPEL control flow objects
+# Both control flows are set to positive the loop indcator is set to minimum.
+# Expected result = Event Start Test1.1 -> root process splits into A and B ->
process B completes -> process A completes -> processes A and B merge on
process C -> merge into root process -> test switch statement -> case min: set
loop iterations = 5 -> test loop iterations -> 2 -> 3 -> 4 -> 5 -> 6 ->
test1Process complete
+
+# Note the prefix on the part name identifies the message type ( xml = xml
data; str = string data )
+
+target.name.space=urn:sybase:bpel:test1Processing
+port.type=test1PT
+operation=request
+
+part1=xml.requestMessageData
+
+xml.requestMessageData=<testMessage><requestID>Start
Test1.1</requestID><requestText>Event Start
Test1.1</requestText><flowIndicators><indicatorOne>yes</indicatorOne><indicatorTwo>yes</indicatorTwo></flowIndicators><loopIndicator>min</loopIndicator></testMessage>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_2.txt
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_2.txt?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_2.txt
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_2.txt
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,14 @@
+# Test BPEL control flow objects
+# Control flow one is positive and control flow two is negative the loop
indcator is set to minimum.
+# Expected result = Event Start Test1.2 -> root process splits into A and B ->
process B completes -> process A completes -> merge into root process -> test
switch statement -> case min: set loop iterations = 5 -> test loop iterations
-> 2 -> 3 -> 4 -> 5 -> 6 -> test1Process complete
+
+# Note the prefix on the part name identifies the message type ( xml = xml
data; str = string data )
+
+target.name.space=urn:sybase:bpel:test1Processing
+port.type=test1PT
+operation=request
+
+part1=xml.requestMessageData
+
+xml.requestMessageData=<testMessage><requestID>Start
Test1.2</requestID><requestText>Event Start
Test1.2</requestText><flowIndicators><indicatorOne>yes</indicatorOne><indicatorTwo>no</indicatorTwo></flowIndicators><loopIndicator>min</loopIndicator></testMessage>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_3.txt
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_3.txt?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_3.txt
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_3.txt
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,14 @@
+# Test BPEL control flow objects
+# Control flow one is negative and control flow two is positive the loop
indcator is set to minimum.
+# Expected result = Event Start Test1.3 -> root process splits into A and B ->
process B completes -> process A completes -> merge into root process -> test
switch statement -> case min: set loop iterations = 5 -> test loop iterations
-> 2 -> 3 -> 4 -> 5 -> 6 -> test1Process complete
+
+# Note the prefix on the part name identifies the message type ( xml = xml
data; str = string data )
+
+target.name.space=urn:sybase:bpel:test1Processing
+port.type=test1PT
+operation=request
+
+part1=xml.requestMessageData
+
+xml.requestMessageData=<testMessage><requestID>Start
Test1.3</requestID><requestText>Event Start
Test1.3</requestText><flowIndicators><indicatorOne>no</indicatorOne><indicatorTwo>yes</indicatorTwo></flowIndicators><loopIndicator>min</loopIndicator></testMessage>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_4.txt
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_4.txt?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_4.txt
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_4.txt
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,14 @@
+# Test BPEL control flow objects
+# Both control flows are set to negative the loop indcator is set to minimum.
+# Expected result = Event Start Test1.4 -> root process splits into A and B ->
process B completes -> process A completes -> merge into root process -> test
switch statement -> case min: set loop iterations = 5 -> test loop iterations
-> 2 -> 3 -> 4 -> 5 -> 6 -> test1Process complete
+
+# Note the prefix on the part name identifies the message type ( xml = xml
data; str = string data )
+
+target.name.space=urn:sybase:bpel:test1Processing
+port.type=test1PT
+operation=request
+
+part1=xml.requestMessageData
+
+xml.requestMessageData=<testMessage><requestID>Start
Test1.4</requestID><requestText>Event Start
Test1.4</requestText><flowIndicators><indicatorOne>no</indicatorOne><indicatorTwo>no</indicatorTwo></flowIndicators><loopIndicator>min</loopIndicator></testMessage>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_5.txt
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_5.txt?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_5.txt
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_5.txt
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,12 @@
+# Test BPEL control flow objects
+# Both control flows are set to positive the loop indcator is set to maximum.
+# Expected result = Event Start Test1.5 -> root process splits into A and B ->
process B completes -> process A completes -> processes A and B merge on
process C -> merge into root process -> test switch statement -> case max: set
loop iterations = 10 -> test loop iterations -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> 8
-> 9 -> 10 -> 11 -> test1Process complete
+
+target.name.space=urn:sybase:bpel:test1Processing
+port.type=test1PT
+operation=request
+
+part1=xml.requestMessageData
+
+xml.requestMessageData=<testMessage><requestID>Start
Test1.5</requestID><requestText>Event Start
Test1.5</requestText><flowIndicators><indicatorOne>yes</indicatorOne><indicatorTwo>yes</indicatorTwo></flowIndicators><loopIndicator>max</loopIndicator></testMessage>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_6.txt
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_6.txt?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_6.txt
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/data1_6.txt
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,14 @@
+# Test BPEL control flow objects
+# Both control flows are set to positive the loop indcator is set to default.
+# Expected result = Event Start Test1.6 -> root process splits into A and B ->
process B completes -> process A completes -> processes A and B merge on
process C -> merge into root process -> test switch statement -> otherwise: set
loop iterations = 0 -> test loop iterations -> test1Process complete
+
+# Note the prefix on the part name identifies the message type ( xml = xml
data; str = string data )
+
+target.name.space=urn:sybase:bpel:test1Processing
+port.type=test1PT
+operation=request
+
+part1=xml.requestMessageData
+
+xml.requestMessageData=<testMessage><requestID>Start
Test1.6</requestID><requestText>Event Start
Test1.6</requestText><flowIndicators><indicatorOne>yes</indicatorOne><indicatorTwo>yes</indicatorTwo></flowIndicators><loopIndicator>default</loopIndicator></testMessage>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/deploy.xml
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/deploy.xml?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/deploy.xml
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/deploy.xml
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,12 @@
+<deploy xmlns="http://ode.fivesight.com/schemas/2006/06/27/dd"
+ xmlns:pns="http://ode/bpel/unit-test/testFlowActivity"
+ xmlns:wns="http://ode/bpel/unit-test/testFlowActivity.wsdl">
+
+
+ <process name="pns:TestFlowActivityProcess">
+ <active>true</active>
+ <provide partnerLink="request">
+ <service name="wns:TestFlowActivityService"
port="wns:TestFlowActivityPort"/>
+ </provide>
+ </process>
+</deploy>
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/probeService.wsdl
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/probeService.wsdl?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/probeService.wsdl
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/probeService.wsdl
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,33 @@
+<?xml version="1.0" ?>
+
+<!-- The probe service is a simple extension that concatenates two strings -->
+<!-- The probeName part is concatenated to the end of the probeData part -->
+<!-- and the probeData part is returned as output. -->
+<!-- The service is used to facilitate chicken track debugging of BPEL -->
+
+<wsdl:definitions targetNamespace="http://ode/bpel/unit-test/ProbeService.wsdl"
+ xmlns:tns="http://ode/bpel/unit-test/ProbeService.wsdl"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns="http://ode/bpel/unit-test/ProbeService.wsdl">
+
+
+ <!-- message declns -->
+
+ <wsdl:message name="probeMessage">
+ <wsdl:part name="probeName" type="xsd:string"/>
+ <wsdl:part name="probeData" type="xsd:string"/>
+ </wsdl:message>
+
+
+ <!-- port type declns -->
+ <wsdl:portType name="probeMessagePT">
+ <wsdl:operation name="probe">
+ <wsdl:input name="ProbeInputMessage" message="tns:probeMessage"/>
+ <wsdl:output name="ProbeOutputMessage" message="tns:probeMessage"/>
+ </wsdl:operation>
+
+ </wsdl:portType>
+
+</wsdl:definitions>
+
Added:
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/test.properties
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/test.properties?view=auto&rev=447679
==============================================================================
---
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/test.properties
(added)
+++
incubator/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestFlowActivity/test.properties
Mon Sep 18 19:08:10 2006
@@ -0,0 +1,6 @@
+namespace=http://ode/bpel/unit-test/testFlowActivity.wsdl
+service=TestFlowActivityService
+operation=request
+request=<message><requestMessageData><testMessage><requestID>Start
Test1.1</requestID><requestText>Event Start
Test1.1</requestText><flowIndicators><indicatorOne>yes</indicatorOne><indicatorTwo>yes</indicatorTwo></flowIndicators><loopIndicator>min</loopIndicator></testMessage></requestMessageData></message>
+response=.*Event Start Test1.1 -> root process splits into A and B ->
process B completes -> process A completes -> processes A and B merge on
process C -> merge into root process -> test switch statement -> case
min: set loop iterations = 5 -> test loop iterations -> 2 -> 3 -> 4
-> 5 -> 6 -> test1Process complete.*
+