[savara-commits] savara SVN: r518 - in branches/experimental/2.0.x: bundles/org.savara.bpel/META-INF and 31 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Sat Jan 1 07:58:21 EST 2011


Author: objectiser
Date: 2011-01-01 07:58:19 -0500 (Sat, 01 Jan 2011)
New Revision: 518

Added:
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/META-INF/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/META-INF/MANIFEST.MF
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/build.properties
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/tests/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/tests/osgi/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/tests/osgi/Activator.java
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Broker.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Buyer.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at CreditAgency.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Supplier.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierQuoteEngine.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierTxnProcessor.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Buyer.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at CreditAgency.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Store.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Buyer.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Seller.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/PurchaseGoods.cdm
   branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ReqRespFault.cdm
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/ParserTest.java
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Broker.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Buyer.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at CreditAgency.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierQuoteEngine.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierTxnProcessor.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/LoanApprovalService at Service.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Buyer.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at CreditAgency.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Store.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Buyer.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Seller.scv
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BrokerArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Buyer.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BuyerArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgencyArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Supplier.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/LoanApprovalService at Service.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Buyer.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_BuyerArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgencyArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_StoreArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Buyer.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_BuyerArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_SellerArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.bpel
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.wsdl
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngineArtifacts.wsdl
   branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/util/ScribbleServices.java
Removed:
   branches/experimental/2.0.x/tools/tests/org.savara.tools.bpel.tests/
Modified:
   branches/experimental/2.0.x/bundles/org.savara.bpel/META-INF/MANIFEST.MF
   branches/experimental/2.0.x/bundles/org.savara.core/META-INF/MANIFEST.MF
   branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/core/osgi/Activator.java
   branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/META-INF/MANIFEST.MF
   branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/
   branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/.classpath
   branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/src/java/org/savara/tools/bpel/generator/Generator.java
   branches/experimental/2.0.x/tools/tests/pom.xml
Log:
Separate out the BPEL tests so that the bundle can reference other bundles not relevant to the BPEL bundle.

Modified: branches/experimental/2.0.x/bundles/org.savara.bpel/META-INF/MANIFEST.MF
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/META-INF/MANIFEST.MF	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/META-INF/MANIFEST.MF	2011-01-01 12:58:19 UTC (rev 518)
@@ -1,8 +1,8 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: SAVARA BPEL
-Bundle-SymbolicName: org.savara.bpel
-Bundle-Version: 1.2.0.qualifier
+Bundle-SymbolicName: org.savara.bpel;singleton:=true
+Bundle-Version: 2.0.0.SNAPSHOT
 Bundle-Activator: org.savara.bpel.osgi.Activator
 Bundle-Vendor: www.savara.org
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
@@ -14,20 +14,11 @@
  org.junit,
  org.scribble.common,
  org.scribble.protocol,
- org.scribble.protocol.parser
-Scribble-Extensions: org.savara.bpel.parser.BPELTokenizer,
-  org.savara.bpel.parser.BPELModelParserRule,
-  org.savara.bpel.model.BPELNotation,
-  org.savara.bpel.model.change.LanguageToConversationModelChangeRule,
-  org.savara.bpel.model.change.ConversationChangeRule,
-  org.savara.bpel.model.change.WhileModelChangeRule,
-  org.savara.bpel.model.change.WhenModelChangeRule,
-  org.savara.bpel.model.change.IfModelChangeRule,
-  org.savara.bpel.model.change.RunModelChangeRule,
-  org.savara.bpel.model.change.SpawnModelChangeRule,
-  org.savara.bpel.model.change.ConversationInteractionModelChangeRule
+ org.scribble.protocol.parser,
+ org.savara.pi4soa.cdm;resolution:=optional
 Export-Package: org.savara.bpel.generator,
  org.savara.bpel.model,
- org.savara.bpel.model.change;x-friends:="org.savara.tools.bpel.tests",
+ org.savara.bpel.model.change,
  org.savara.bpel.parser,
  org.savara.bpel.util
+Bundle-ActivationPolicy: lazy

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/ParserTest.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/ParserTest.java	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/ParserTest.java	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,265 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ */
+package org.savara.bpel.parser;
+
+import java.io.InputStream;
+import java.net.URI;
+
+import org.savara.util.ScribbleServices;
+import org.scribble.common.logging.CachedJournal;
+import org.scribble.common.resource.ResourceLocator;
+import org.scribble.protocol.model.ProtocolModel;
+
+import junit.framework.TestCase;
+import junit.framework.TestResult;
+import junit.framework.TestSuite;
+
+public class ParserTest extends TestCase {
+
+    public static TestSuite suite() {
+        TestSuite suite = new TestSuite("BPEL->Conversation Parser Tests");
+        
+        suite.addTest(new BPELToConversationTest("ESBBrokerProcess_Broker", "ESBBroker at Broker"));
+        suite.addTest(new BPELToConversationTest("ESBBrokerProcess_Buyer", "ESBBroker at Buyer"));
+        suite.addTest(new BPELToConversationTest("ESBBrokerProcess_CreditAgency", "ESBBroker at CreditAgency"));
+        suite.addTest(new BPELToConversationTest("RequestForQuote_SupplierQuoteEngine", "ESBBroker at SupplierQuoteEngine"));
+        suite.addTest(new BPELToConversationTest("CompleteTransaction_SupplierTxnProcessor", "ESBBroker at SupplierTxnProcessor"));
+        suite.addTest(new BPELToConversationTest("PurchaseGoodsProcess_Buyer", "PurchaseGoods at Buyer"));
+        suite.addTest(new BPELToConversationTest("PurchaseGoodsProcess_CreditAgency", "PurchaseGoods at CreditAgency"));
+        suite.addTest(new BPELToConversationTest("PurchaseGoodsProcess_Store", "PurchaseGoods at Store"));
+        suite.addTest(new BPELToConversationTest("ReqRespFaultProcess_Buyer", "ReqRespFault at Buyer"));
+        suite.addTest(new BPELToConversationTest("ReqRespFaultProcess_Seller", "ReqRespFault at Seller"));
+        
+        /**
+         * TODO: (SAVARA-150) Commenting out this test for now, as we now need the accompanying WSDL to be able to
+         * resolve the message type's underlying XSD element or type.
+         *
+        suite.addTest(new BPELToConversationTest("LoanApprovalService at Service", "LoanApprovalService at Service"));
+         */
+
+        return suite;
+    }
+    
+    /**
+     * The test case for running the BPEL to Conversation test.
+     */
+	public static class BPELToConversationTest extends TestCase {
+
+		/**
+		 * This constructor is initialized with the test
+		 * name.
+		 * 
+		 * @param name The test name
+		 */
+		public BPELToConversationTest(String bpelName, String scvName) {
+			super(bpelName+"->"+scvName);
+			m_bpelName = bpelName;
+			m_scvName = scvName;
+		}
+		
+		/**
+		 * This method runs the test.
+		 * 
+		 * @param result The test result
+		 */
+		public void run(TestResult result) {
+			result.startTest(this);
+			
+			String filename="testmodels/"+m_bpelName+".bpel";
+			
+			java.io.InputStream is=
+				ParserTest.class.getResourceAsStream(filename);
+			
+			if (is == null) {
+				result.addError(this,
+						new Throwable("Unable to locate resource: "+filename));
+			} else {			
+    			CachedJournal journal=new CachedJournal();
+    			
+    			org.scribble.protocol.model.ProtocolModel model=null;
+    			
+    			try {
+    				model = ScribbleServices.getParserManager().parse("bpel", is, journal, new ResourceLoaderImpl());
+    			} catch(Exception e) {
+    				result.addError(this, new Throwable("Parsing BPEL failed"));
+    			}
+    			
+				if (model == null) {
+					result.addError(this, new Throwable("Model is null"));
+						
+				} else if (journal.hasErrors()) {
+					result.addError(this, new Throwable("Failed to parse CDM Model"));
+					
+					for (int i=0; i < journal.getIssues().size(); i++) {
+						System.err.println("Issue: "+
+								journal.getIssues().get(i).getMessage());
+					}
+				} else {
+					ProtocolModel lm=(ProtocolModel)model;
+
+					try {
+						org.scribble.protocol.export.ProtocolExporter exporter=
+							ScribbleServices.getProtocolExportManager().getExporter("spr");
+
+						java.io.ByteArrayOutputStream os=
+							new java.io.ByteArrayOutputStream();
+						
+						exporter.export(lm, journal, os);
+						
+						os.close();
+						
+						String str=new String(os.toByteArray());
+						
+						checkResults(result, str);
+						
+					} catch(Exception e) {
+						e.printStackTrace();
+					}
+				}
+			}
+			
+			result.endTest(this);
+		}
+		
+		/**
+		 * This method checks the generated jboss-esb.xml against a
+		 * previously stored correct version.
+		 * 
+		 * @param result The test result
+		 * @param conv The conversation
+		 */
+		protected void checkResults(TestResult result, String conv) {
+			boolean f_valid=false;
+
+			String filename="results/"+m_scvName+".scv";
+			
+			java.io.InputStream is=
+				ParserTest.class.getResourceAsStream(filename);
+			
+			if (is != null) {
+				
+				try {
+					byte[] b=new byte[is.available()];
+				
+					is.read(b);
+					
+					is.close();
+					
+					String orig=new String(b);
+					
+					if (orig.equals(conv) == false) {
+						result.addError(this,
+							new Throwable("Generated Conversation does not match stored version"));
+					} else {
+						f_valid = true;
+					}
+				} catch(Exception e) {
+					result.addError(this, e);
+				}
+			} else {
+				result.addError(this,
+						new Throwable("Resulting Conversation '"+filename+
+								"' not found for comparison"));
+			}
+			
+			if (f_valid == false) {
+				String bpelfile="testmodels/"+m_bpelName+".bpel";
+				
+				java.net.URL url=ParserTest.class.getResource(bpelfile);
+				
+				/*
+				try {
+					url = org.eclipse.core.runtime.FileLocator.toFileURL(url);
+				} catch(Exception e) {
+					e.printStackTrace();
+				}
+				*/
+				
+				if (url != null) {
+					// URL will point to copy of test models in the classes folder, so need
+					// to obtain reference back to source version
+					java.io.File f=null;
+					
+					if (url.getFile().indexOf("classes") != -1) {
+						f = new java.io.File(url.getFile().replaceFirst("classes","src/plugintest"));
+					} else if (url.getFile().indexOf("bin") != -1) {						
+						f = new java.io.File(url.getFile().replaceFirst("bin","src/plugintest"));
+					} else {
+						result.addError(this, new Exception("Could not locate results folder to record expected result"));
+					}
+					
+					if (f != null && f.exists()) {
+						f = f.getParentFile().getParentFile();
+						
+						java.io.File resultsDir=new java.io.File(f, "results");
+						
+						if (resultsDir.exists() == false) {
+							resultsDir.mkdirs();
+						}
+						
+						java.io.File resultFile=new java.io.File(resultsDir, m_scvName+".expected");
+						
+						if (resultFile.exists() == false) {
+							try {
+								java.io.FileOutputStream fos=new java.io.FileOutputStream(resultFile);
+								
+								fos.write(conv.getBytes());
+								
+								fos.flush();
+								fos.close();
+								
+							} catch(Exception e){
+								result.addError(this, e);
+							}
+						} else {
+							System.err.println("NOTE: Expected output '"+resultFile+
+										"' already exists - not being overwritten");
+						}
+					} else {
+						result.addError(this, new Throwable("Unable to obtain URL for BPEL model source '"+
+								m_bpelName+"': "+url));
+					}
+				}
+			}
+		}
+
+		private String m_bpelName=null;
+		private String m_scvName=null;
+	}
+
+	public static class ResourceLoaderImpl implements ResourceLocator {
+
+		public ResourceLoaderImpl() {
+		}
+
+		public URI getResourceURI(String uri) {
+			String filename="testmodels/"+uri;
+			
+			java.net.URI ret=null;
+			
+			try {
+				ret = ParserTest.class.getResource(filename).toURI();
+			} catch(Exception e) {
+				e.printStackTrace();
+			}
+			
+			return(ret);
+		}
+		
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Broker.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Broker.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Broker.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,35 @@
+namespace null;
+
+conversation ESBBrokerProcess_Broker at Broker implements LoanBroker at Broker {
+	makeEnquiry(enquiry) from Buyer to Broker;
+	while {
+		getQuote(requestForQuote) from Broker to SupplierQuoteEngine;
+		getQuote(quote) from SupplierQuoteEngine to Broker;
+	}
+	;
+	makeEnquiry(quoteList) from Broker to Buyer;
+	if {
+		buy(buy) from Buyer to Broker;
+		try {
+			checkCredit(CreditCheckRequest) from Broker to CreditAgency;
+			if {
+				checkCredit(CreditCheckOk) from CreditAgency to Broker;
+			} else if {
+				checkCredit(CreditCheckInvalid) from CreditAgency to Broker;
+				raise invalidCredit;
+			}
+			confirm(orderConfirmed) from Broker to SupplierTxnProcessor;
+			if {
+				confirm(bookingReference) from SupplierTxnProcessor to Broker;
+			} else if {
+				confirm(CreditCheckInvalid) from SupplierTxnProcessor to Broker;
+				raise invalidCredit;
+			}
+			buy(bookingReference) from Broker to Buyer;
+		} catch invalidCredit {
+			buy(orderRejected) from Broker to Buyer;
+		}
+	} else if {
+		cancel(cancel) from Buyer to Broker;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Buyer.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Buyer.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at Buyer.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,16 @@
+namespace null;
+
+conversation ESBBrokerProcess_Buyer at Buyer implements LoanBroker at Buyer {
+	makeEnquiry(enquiry) from Buyer to Broker;
+	makeEnquiry(quoteList) from Broker to Buyer;
+	if {
+		buy(buy) from Buyer to Broker;
+		if {
+			buy(bookingReference) from Broker to Buyer;
+		} else if {
+			buy(orderRejected) from Broker to Buyer;
+		}
+	} else if {
+		cancel(cancel) from Buyer to Broker;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at CreditAgency.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at CreditAgency.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at CreditAgency.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,12 @@
+namespace null;
+
+conversation ESBBrokerProcess_CreditAgency at CreditAgency implements Common at CreditAgency {
+	if {
+		checkCredit(CreditCheckRequest) from Broker to CreditAgency;
+		if {
+			checkCredit(CreditCheckOk) from CreditAgency to Broker;
+		} else if {
+			checkCredit(CreditCheckInvalid) from CreditAgency to Broker;
+		}
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierQuoteEngine.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierQuoteEngine.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierQuoteEngine.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,6 @@
+namespace null;
+
+conversation RequestForQuote_SupplierQuoteEngine at SupplierQuoteEngine implements LoanBroker at SupplierQuoteEngine {
+	getQuote(requestForQuote) from Broker to SupplierQuoteEngine;
+	getQuote(quote) from SupplierQuoteEngine to Broker;
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierTxnProcessor.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierTxnProcessor.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ESBBroker at SupplierTxnProcessor.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,8 @@
+namespace null;
+
+conversation CompleteTransaction_SupplierTxnProcessor at SupplierTxnProcessor implements LoanBroker at SupplierTxnProcessor {
+	if {
+		confirm(orderConfirmed) from Broker to SupplierTxnProcessor;
+		confirm(bookingReference) from SupplierTxnProcessor to Broker;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/LoanApprovalService at Service.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/LoanApprovalService at Service.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/LoanApprovalService at Service.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,41 @@
+namespace null;
+
+conversation loanApprovalProcess {
+	try {
+		boolean	receive-to-assess, receive-to-approval, approval-to-reply, assess-to-setMessage, setMessage-to-reply, assess-to-approval;
+		parallel {
+			request(creditInformationMessage) from customer;
+			receive-to-assess = xpath[true()];
+			receive-to-approval = xpath[true()];
+		} and {
+			when (xpath[$receive-to-assess])  {
+				check(creditInformationMessage) to assessor;
+				if {
+					check(riskAssessmentMessage) from assessor;
+				} else if {
+					check(errorMessage) from assessor;
+					raise lns:loanProcessFault;
+				}
+				assess-to-setMessage = xpath[true()];
+				assess-to-approval = xpath[true()];
+			}
+		} and {
+			when (xpath[$receive-to-approval and $assess-to-approval])  {
+				approve(creditInformationMessage) to approver;
+				if {
+					approve(approvalMessage) from approver;
+				} else if {
+					approve(errorMessage) from approver;
+					raise lns:loanProcessFault;
+				}
+				approval-to-reply = xpath[true()];
+			}
+		} and {
+			when (xpath[$setMessage-to-reply and $approval-to-reply])  {
+				request(approvalMessage) to customer;
+			}
+		}
+	} catch lns:loanProcessFault {
+		request(errorMessage) to customer;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Buyer.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Buyer.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Buyer.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,10 @@
+namespace null;
+
+conversation PurchaseGoodsProcess_Buyer at Buyer implements Purchasing at Buyer {
+	buy(BuyRequest) from Buyer to Store;
+	if {
+		buy(BuyConfirmed) from Store to Buyer;
+	} else if {
+		buy(BuyFailed) from Store to Buyer;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at CreditAgency.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at CreditAgency.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at CreditAgency.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,10 @@
+namespace null;
+
+conversation PurchaseGoodsProcess_CreditAgency at CreditAgency implements Common at CreditAgency {
+	checkCredit(CreditCheckRequest) from Store to CreditAgency;
+	if {
+		checkCredit(CreditCheckOk) from CreditAgency to Store;
+	} else if {
+		checkCredit(CreditCheckInvalid) from CreditAgency to Store;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Store.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Store.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/PurchaseGoods at Store.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,13 @@
+namespace null;
+
+conversation PurchaseGoodsProcess_Store at Store implements Purchasing at Store {
+	buy(BuyRequest) from Buyer to Store;
+	checkCredit(CreditCheckRequest) from Store to CreditAgency;
+	if {
+		checkCredit(CreditCheckOk) from CreditAgency to Store;
+		buy(BuyConfirmed) from Store to Buyer;
+	} else if {
+		checkCredit(CreditCheckInvalid) from CreditAgency to Store;
+		buy(BuyFailed) from Store to Buyer;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Buyer.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Buyer.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Buyer.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,10 @@
+namespace null;
+
+conversation ReqRespFaultProcess_Buyer at Buyer implements LoanBroker at Buyer {
+	checkCredit(CreditCheckRequest) from Buyer to Seller;
+	if {
+		checkCredit(CreditCheckOk) from Seller to Buyer;
+	} else if {
+		checkCredit(CreditCheckInvalid) from Seller to Buyer;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Seller.scv
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Seller.scv	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/results/ReqRespFault at Seller.scv	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,10 @@
+namespace null;
+
+conversation ReqRespFaultProcess_Seller at Seller implements ReqRespFaultProcess at Seller {
+	checkCredit(CreditCheckRequest) from Buyer to Seller;
+	if {
+		checkCredit(CreditCheckOk) from Seller to Buyer;
+	} else if {
+		checkCredit(CreditCheckInvalid) from Seller to Buyer;
+	}
+}
\ No newline at end of file

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,20 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at SupplierTxnProcessor" name="CompleteTransaction_SupplierTxnProcessor" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="CompleteTransaction_SupplierTxnProcessor.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <partnerLinks>
+        <partnerLink myRole="SupplierTxnProcessorService" name="BrokerToSupplierTxnProcessor" partnerLinkType="spr:BrokerToSupplierTxnProcessorServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="spr:confirmRequest" name="confirmRequestVar"/>
+        <variable messageType="spr:confirmResponse" name="confirmResponseVar"/>
+    </variables>
+    <sequence>
+        <pick createInstance="yes">
+            <onMessage operation="confirm" partnerLink="BrokerToSupplierTxnProcessor" portType="spr:SupplierBehavior" variable="confirmRequestVar">
+                <sequence>
+                    <reply name="Send_bookingReference" operation="confirm" partnerLink="BrokerToSupplierTxnProcessor" portType="spr:SupplierBehavior" variable="confirmResponseVar"/>
+                </sequence>
+            </onMessage>
+        </pick>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessor.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Supplier" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="confirmRequest">
+        <wsdl:part element="orderConfirmed" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="confirmResponse">
+        <wsdl:part element="bookingReference" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="getQuoteResponse">
+        <wsdl:part element="quote" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="getQuoteRequest">
+        <wsdl:part element="requestForQuote" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="SupplierBehavior">
+        <wsdl:operation name="confirm">
+            <wsdl:input message="spr:confirmRequest">
+            </wsdl:input>
+            <wsdl:output message="spr:confirmResponse">
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="getQuote">
+            <wsdl:input message="spr:getQuoteRequest">
+            </wsdl:input>
+            <wsdl:output message="spr:getQuoteResponse">
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="SupplierBehaviorBinding" type="spr:SupplierBehavior">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="confirm">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Supplier/confirm"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="getQuote">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Supplier/getQuote"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="SupplierService">
+        <wsdl:port binding="spr:SupplierBehaviorBinding" name="SupplierBehaviorPort">
+            <soap:address location="http://localhost:8080/SupplierService/SupplierBehaviorPort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier">
+    <wsdl:import location="CompleteTransaction_SupplierTxnProcessor.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <plnk:partnerLinkType name="BrokerToSupplierTxnProcessorServiceLT">
+        <plnk:role name="SupplierTxnProcessorService" portType="ns1:SupplierBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,66 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at Broker" name="ESBBrokerProcess_Broker" targetNamespace="http://www.pi4soa.org/ESBBroker/Broker" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_BrokerArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <partnerLinks>
+        <partnerLink myRole="BrokerBehavior" name="BuyerToBroker" partnerLinkType="brk:BuyerToBrokerServiceLT"/>
+        <partnerLink name="BrokerToSupplierQuoteEngine" partnerLinkType="brk:BrokerToSupplierQuoteEngineLT" partnerRole="SupplierQuoteEngineRequester"/>
+        <partnerLink name="BrokerToCreditAgency" partnerLinkType="brk:BrokerToCreditAgencyLT" partnerRole="CreditAgencyRequester"/>
+        <partnerLink name="BrokerToSupplierTxnProcessor" partnerLinkType="brk:BrokerToSupplierTxnProcessorLT" partnerRole="SupplierTxnProcessorRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="brk:makeEnquiryRequest" name="makeEnquiryRequestVar"/>
+        <variable messageType="spr:getQuoteRequest" name="getQuoteRequestVar"/>
+        <variable messageType="spr:getQuoteResponse" name="getQuoteResponseVar"/>
+        <variable messageType="brk:makeEnquiryResponse" name="makeEnquiryResponseVar"/>
+        <variable messageType="brk:buyRequest" name="buyRequestVar"/>
+        <variable messageType="cay:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="cay:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="spr:confirmRequest" name="confirmRequestVar"/>
+        <variable messageType="spr:confirmResponse" name="confirmResponseVar"/>
+        <variable messageType="brk:buyResponse" name="buyResponseVar"/>
+        <variable messageType="brk:rejectedFault" name="rejectedFaultVar"/>
+        <variable messageType="brk:cancelRequest" name="cancelRequestVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_enquiry" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="makeEnquiryRequestVar"/>
+        <while>
+            <sequence>
+                <scope>
+                    <sequence>
+                        <invoke inputVariable="getQuoteRequestVar" name="Send_requestForQuote" operation="getQuote" outputVariable="getQuoteResponseVar" partnerLink="BrokerToSupplierQuoteEngine" portType="spr:SupplierBehavior"/>
+                    </sequence>
+                </scope>
+            </sequence>
+        </while>
+        <reply name="Send_quoteList" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="makeEnquiryResponseVar"/>
+        <pick>
+            <onMessage operation="buy" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="buyRequestVar">
+                <sequence>
+                    <scope>
+                        <sequence>
+                            <scope>
+                                <faultHandlers>
+                                    <catch faultMessageType="cay:invalidCreditFault" faultName="cay:invalidCredit" faultVariable="invalidCreditFaultVar">
+                                        <sequence>
+                                            <reply faultName="brk:rejected" name="Send_orderRejected" operation="buy" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="rejectedFaultVar"/>
+                                        </sequence>
+                                    </catch>
+                                </faultHandlers>
+                                <sequence>
+                                    <invoke inputVariable="checkCreditRequestVar" name="Send_CreditCheckRequest" operation="checkCredit" outputVariable="checkCreditResponseVar" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior"/>
+                                    <invoke inputVariable="confirmRequestVar" name="Send_orderConfirmed" operation="confirm" outputVariable="confirmResponseVar" partnerLink="BrokerToSupplierTxnProcessor" portType="spr:SupplierBehavior"/>
+                                    <reply name="Send_bookingReference" operation="buy" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="buyResponseVar"/>
+                                </sequence>
+                            </scope>
+                        </sequence>
+                    </scope>
+                </sequence>
+            </onMessage>
+            <onMessage operation="cancel" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="cancelRequestVar">
+                <sequence/>
+            </onMessage>
+        </pick>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Broker.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Broker" targetNamespace="http://www.pi4soa.org/ESBBroker/Broker">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="rejectedFault">
+        <wsdl:part element="orderRejected" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="makeEnquiryRequest">
+        <wsdl:part element="enquiry" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="buyResponse">
+        <wsdl:part element="bookingReference" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="makeEnquiryResponse">
+        <wsdl:part element="quoteList" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="buyRequest">
+        <wsdl:part element="buy" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="cancelRequest">
+        <wsdl:part element="cancel" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="BrokerBehavior">
+        <wsdl:operation name="buy">
+            <wsdl:input message="brk:buyRequest">
+            </wsdl:input>
+            <wsdl:output message="brk:buyResponse">
+            </wsdl:output>
+            <wsdl:fault message="brk:rejectedFault" name="rejected">
+            </wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="makeEnquiry">
+            <wsdl:input message="brk:makeEnquiryRequest">
+            </wsdl:input>
+            <wsdl:output message="brk:makeEnquiryResponse">
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="cancel">
+            <wsdl:input message="brk:cancelRequest">
+            </wsdl:input>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="BrokerBehaviorBinding" type="brk:BrokerBehavior">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="buy">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Broker/buy"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+            <wsdl:fault name="rejected">
+                <soap:fault name="rejected" use="literal"/>
+            </wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="makeEnquiry">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Broker/makeEnquiry"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="cancel">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Broker/cancel"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="BrokerService">
+        <wsdl:port binding="brk:BrokerBehaviorBinding" name="BrokerBehaviorPort">
+            <soap:address location="http://localhost:8080/BrokerService/BrokerBehaviorPort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BrokerArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BrokerArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BrokerArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ESBBroker/Broker" xmlns:ns2="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:ns3="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ESBBroker/Broker">
+    <wsdl:import location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <wsdl:import location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <wsdl:import location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <plnk:partnerLinkType name="BuyerToBrokerServiceLT">
+        <plnk:role name="BrokerBehavior" portType="ns1:BrokerBehavior"/>
+    </plnk:partnerLinkType>
+    <plnk:partnerLinkType name="BrokerToSupplierQuoteEngineLT">
+        <plnk:role name="SupplierQuoteEngineRequester" portType="ns2:SupplierBehavior"/>
+    </plnk:partnerLinkType>
+    <plnk:partnerLinkType name="BrokerToCreditAgencyLT">
+        <plnk:role name="CreditAgencyRequester" portType="ns3:CreditAgencyBehavior"/>
+    </plnk:partnerLinkType>
+    <plnk:partnerLinkType name="BrokerToSupplierTxnProcessorLT">
+        <plnk:role name="SupplierTxnProcessorRequester" portType="ns2:SupplierBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Buyer.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Buyer.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Buyer.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,43 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at Buyer" name="ESBBrokerProcess_Buyer" targetNamespace="http://www.pi4soa.org/ESBBroker/Buyer" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_BuyerArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Buyer"/>
+    <partnerLinks>
+        <partnerLink myRole="BrokerBehavior" name="BuyerToBroker" partnerLinkType="byr:BuyerToBrokerLT" partnerRole="BrokerRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="brk:makeEnquiryRequest" name="makeEnquiryRequestVar"/>
+        <variable messageType="brk:makeEnquiryResponse" name="makeEnquiryResponseVar"/>
+        <variable messageType="brk:buyRequest" name="buyRequestVar"/>
+        <variable messageType="brk:buyResponse" name="buyResponseVar"/>
+        <variable messageType="brk:cancelRequest" name="cancelRequestVar"/>
+    </variables>
+    <sequence>
+        <invoke inputVariable="makeEnquiryRequestVar" name="Send_enquiry" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior"/>
+        <receive name="Receive_quoteList" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="makeEnquiryResponseVar"/>
+        <if>
+            <sequence>
+                <scope>
+                    <sequence>
+                        <scope>
+                            <faultHandlers>
+                                <catch faultMessageType="brk:rejectedFault" faultName="brk:rejected" faultVariable="rejectedFaultVar">
+                                    <sequence/>
+                                </catch>
+                            </faultHandlers>
+                            <sequence>
+                                <invoke inputVariable="buyRequestVar" name="Send_buy" operation="buy" outputVariable="buyResponseVar" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior"/>
+                            </sequence>
+                        </scope>
+                    </sequence>
+                </scope>
+            </sequence>
+            <else>
+                <sequence>
+                    <invoke inputVariable="cancelRequestVar" name="Send_cancel" operation="cancel" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BuyerArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BuyerArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_BuyerArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ESBBroker/Broker" xmlns:ns2="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ESBBroker/Buyer">
+    <wsdl:import location="ESBBrokerProcess_Buyer.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Buyer"/>
+    <wsdl:import location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <wsdl:import location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <wsdl:import location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <plnk:partnerLinkType name="BuyerToBrokerLT">
+        <plnk:role name="BrokerRequester" portType="ns1:BrokerBehavior"/>
+        <plnk:role name="BrokerBehavior" portType="ns2:BuyerBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,36 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.Common at CreditAgency" name="ESBBrokerProcess_CreditAgency" targetNamespace="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgencyArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <partnerLinks>
+        <partnerLink myRole="CreditAgencyService" name="BrokerToCreditAgency" partnerLinkType="cay:BrokerToCreditAgencyServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="cay:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="cay:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="cay:invalidCreditFault" name="invalidCreditFaultVar"/>
+    </variables>
+    <sequence>
+        <pick>
+            <onMessage operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior" variable="checkCreditRequestVar">
+                <sequence>
+                    <scope>
+                        <sequence>
+                            <if>
+                                <sequence>
+                                    <reply name="Send_CreditCheckOk" operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior" variable="checkCreditResponseVar"/>
+                                </sequence>
+                                <else>
+                                    <sequence>
+                                        <reply faultName="cay:invalidCredit" name="Send_CreditCheckInvalid" operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior" variable="invalidCreditFaultVar"/>
+                                    </sequence>
+                                </else>
+                            </if>
+                        </sequence>
+                    </scope>
+                </sequence>
+            </onMessage>
+        </pick>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgency.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="CreditAgency" targetNamespace="http://www.pi4soa.org/ESBBroker/CreditAgency">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="checkCreditResponse">
+        <wsdl:part element="CreditCheckOk" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="checkCreditRequest">
+        <wsdl:part element="CreditCheckRequest" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="invalidCreditFault">
+        <wsdl:part element="CreditCheckInvalid" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="CreditAgencyBehavior">
+        <wsdl:operation name="checkCredit">
+            <wsdl:input message="cay:checkCreditRequest">
+            </wsdl:input>
+            <wsdl:output message="cay:checkCreditResponse">
+            </wsdl:output>
+            <wsdl:fault message="cay:invalidCreditFault" name="invalidCredit">
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="CreditAgencyBehaviorBinding" type="cay:CreditAgencyBehavior">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="checkCredit">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/CreditAgency/checkCredit"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+            <wsdl:fault name="invalidCredit">
+                <soap:fault name="invalidCredit" use="literal"/>
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="CreditAgencyService">
+        <wsdl:port binding="cay:CreditAgencyBehaviorBinding" name="CreditAgencyBehaviorPort">
+            <soap:address location="http://localhost:8080/CreditAgencyService/CreditAgencyBehaviorPort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgencyArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgencyArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_CreditAgencyArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ESBBroker/CreditAgency">
+    <wsdl:import location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <wsdl:import location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <wsdl:import location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <plnk:partnerLinkType name="BrokerToCreditAgencyServiceLT">
+        <plnk:role name="CreditAgencyService" portType="ns1:CreditAgencyBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Supplier.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Supplier.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ESBBrokerProcess_Supplier.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Supplier" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="confirmRequest">
+        <wsdl:part element="orderConfirmed" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="confirmResponse">
+        <wsdl:part element="bookingReference" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="getQuoteResponse">
+        <wsdl:part element="quote" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="getQuoteRequest">
+        <wsdl:part element="requestForQuote" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="SupplierBehavior">
+        <wsdl:operation name="confirm">
+            <wsdl:input message="spr:confirmRequest">
+            </wsdl:input>
+            <wsdl:output message="spr:confirmResponse">
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="getQuote">
+            <wsdl:input message="spr:getQuoteRequest">
+            </wsdl:input>
+            <wsdl:output message="spr:getQuoteResponse">
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="SupplierBehaviorBinding" type="spr:SupplierBehavior">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="confirm">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Supplier/confirm"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="getQuote">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Supplier/getQuote"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="SupplierService">
+        <wsdl:port binding="spr:SupplierBehaviorBinding" name="SupplierBehaviorPort">
+            <soap:address location="http://localhost:8080/SupplierService/SupplierBehaviorPort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/LoanApprovalService at Service.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/LoanApprovalService at Service.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/LoanApprovalService at Service.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,123 @@
+<process name="loanApprovalProcess"
+    targetNamespace="http://example.com/loan-approval/"
+    xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+    xmlns:lns="http://example.com/loan-approval/wsdl/"
+    suppressJoinFailure="yes">
+    <import importType="http://schemas.xmlsoap.org/wsdl/"
+          location="loanServicePT.wsdl"
+          namespace="http://example.com/loan-approval/wsdl/" />
+    <partnerLinks>
+          <partnerLink name="customer"
+              partnerLinkType="lns:loanPartnerLT"
+              myRole="loanService" />
+          <partnerLink name="approver"
+              partnerLinkType="lns:loanApprovalLT"
+              partnerRole="approver" />
+          <partnerLink name="assessor"
+              partnerLinkType="lns:riskAssessmentLT"
+              partnerRole="assessor" />
+    </partnerLinks>
+    <variables>
+          <variable name="request"
+              messageType="lns:creditInformationMessage" />
+          <variable name="risk"
+              messageType="lns:riskAssessmentMessage" />
+          <variable name="approval"
+              messageType="lns:approvalMessage" />
+    </variables>
+    <faultHandlers>
+          <catch faultName="lns:loanProcessFault"
+              faultVariable="error"
+              faultMessageType="lns:errorMessage">
+              <reply partnerLink="customer"
+                 portType="lns:loanServicePT"
+                 operation="request" variable="error"
+                 faultName="unableToHandleRequest" />
+          </catch>
+    </faultHandlers>
+    <flow>
+          <links>
+              <link   name="receive-to-assess" />
+              <link   name="receive-to-approval" />
+              <link   name="approval-to-reply" />
+              <link   name="assess-to-setMessage" />
+              <link   name="setMessage-to-reply" />
+              <link   name="assess-to-approval" />
+          </links>
+          <receive partnerLink="customer"
+              portType="lns:loanServicePT"
+              operation="request"
+              variable="request"
+              createInstance="yes">
+              <sources>
+                 <source linkName="receive-to-assess">
+                      <transitionCondition>
+                          $request.amount &lt; 10000
+                      </transitionCondition>
+                 </source>
+                 <source linkName="receive-to-approval">
+                      <transitionCondition>
+                          $request.amount >= 10000
+                      </transitionCondition>
+                 </source>
+              </sources>
+          </receive>
+          <invoke partnerLink="assessor"
+              portType="lns:riskAssessmentPT"
+              operation="check"
+              inputVariable="request"
+              outputVariable="risk">
+              <targets>
+                 <target linkName="receive-to-assess" />
+              </targets>
+              <sources>
+                 <source linkName="assess-to-setMessage">
+                      <transitionCondition>
+                          $risk.level='low'
+                      </transitionCondition>
+                 </source>
+                 <source linkName="assess-to-approval">
+                      <transitionCondition>
+                          $risk.level!='low'
+                      </transitionCondition>
+                 </source>
+              </sources>
+          </invoke>
+          <assign>
+              <targets>
+                 <target linkName="assess-to-setMessage" />
+              </targets>
+              <sources>
+                 <source linkName="setMessage-to-reply" />
+	         </sources>
+         <copy>
+            <from>
+               <literal>yes</literal>
+            </from>
+            <to variable="approval" part="accept" />
+         </copy>
+      </assign>
+      <invoke partnerLink="approver"
+         portType="lns:loanApprovalPT"
+         operation="approve"
+         inputVariable="request"
+         outputVariable="approval">
+         <targets>
+            <target linkName="receive-to-approval" />
+            <target linkName="assess-to-approval" />
+         </targets>
+         <sources>
+            <source linkName="approval-to-reply" />
+         </sources>
+      </invoke>
+      <reply partnerLink="customer"
+         portType="lns:loanServicePT"
+         operation="request"
+         variable="approval">
+         <targets>
+            <target linkName="setMessage-to-reply" />
+            <target linkName="approval-to-reply" />
+         </targets>
+      </reply>
+   </flow>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Buyer.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Buyer.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Buyer.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,24 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="savara.samples.Purchasing at Buyer" name="PurchaseGoodsProcess_Buyer" targetNamespace="http://www.jboss.org/savara/examples" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_BuyerArtifacts.wsdl" namespace="http://www.jboss.org/savara/examples"/>
+    <partnerLinks>
+        <partnerLink name="BuyerToStore" partnerLinkType="tns:BuyerToStoreLT" partnerRole="StoreRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="sto:buyRequest" name="buyRequestVar"/>
+        <variable messageType="sto:buyResponse" name="buyResponseVar"/>
+    </variables>
+    <sequence>
+        <scope>
+            <faultHandlers>
+                <catch faultMessageType="sto:BuyFailedFault" faultName="sto:BuyFailed" faultVariable="BuyFailedFaultVar">
+                    <sequence/>
+                </catch>
+            </faultHandlers>
+            <sequence>
+                <invoke inputVariable="buyRequestVar" name="Send_BuyRequest" operation="buy" outputVariable="buyResponseVar" partnerLink="BuyerToStore" portType="sto:StoreInterface"/>
+            </sequence>
+        </scope>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_BuyerArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_BuyerArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_BuyerArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.jboss.org/examples/store" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.jboss.org/savara/examples">
+    <wsdl:import location="PurchaseGoodsProcess_Buyer.wsdl" namespace="http://www.jboss.org/savara/examples"/>
+    <wsdl:import location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <wsdl:import location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <plnk:partnerLinkType name="BuyerToStoreLT">
+        <plnk:role name="StoreRequester" portType="ns1:StoreInterface"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,26 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="savara.samples.Common at CreditAgency" name="PurchaseGoodsProcess_CreditAgency" targetNamespace="java:org.jboss.savara.examples.purchasing" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgencyArtifacts.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <partnerLinks>
+        <partnerLink myRole="CreditAgencyInterface" name="StoreToCreditAgency" partnerLinkType="pur:StoreToCreditAgencyServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="pur:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="pur:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="pur:CreditCheckFailedFault" name="CreditCheckFailedFaultVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_CreditCheckRequest" operation="checkCredit" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface" variable="checkCreditRequestVar"/>
+        <if>
+            <sequence>
+                <reply name="Send_CreditCheckOk" operation="checkCredit" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface" variable="checkCreditResponseVar"/>
+            </sequence>
+            <else>
+                <sequence>
+                    <reply faultName="pur:CreditCheckFailed" name="Send_CreditCheckInvalid" operation="checkCredit" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface" variable="CreditCheckFailedFaultVar"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgency.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="CreditAgency" targetNamespace="java:org.jboss.savara.examples.purchasing">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="checkCreditRequest">
+        <wsdl:part name="content" type="pur:CreditCheckRequest">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="CreditCheckFailedFault">
+        <wsdl:part name="content" type="pur:CreditCheckInvalid">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="checkCreditResponse">
+        <wsdl:part name="content" type="pur:CreditCheckOk">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="CreditAgencyInterface">
+        <wsdl:operation name="checkCredit">
+            <wsdl:input message="pur:checkCreditRequest">
+            </wsdl:input>
+            <wsdl:output message="pur:checkCreditResponse">
+            </wsdl:output>
+            <wsdl:fault message="pur:CreditCheckFailedFault" name="CreditCheckFailed">
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="CreditAgencyInterfaceBinding" type="pur:CreditAgencyInterface">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="checkCredit">
+            <soap:operation soapAction="java:org.jboss.savara.examples.purchasing/checkCredit"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+            <wsdl:fault name="CreditCheckFailed">
+                <soap:fault name="CreditCheckFailed" use="literal"/>
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="CreditAgencyService">
+        <wsdl:port binding="pur:CreditAgencyInterfaceBinding" name="CreditAgencyInterfacePort">
+            <soap:address location="http://localhost:8080/CreditAgencyService/CreditAgencyInterfacePort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgencyArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgencyArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_CreditAgencyArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="java:org.jboss.savara.examples.purchasing" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="java:org.jboss.savara.examples.purchasing">
+    <wsdl:import location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <wsdl:import location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <plnk:partnerLinkType name="StoreToCreditAgencyServiceLT">
+        <plnk:role name="CreditAgencyInterface" portType="ns1:CreditAgencyInterface"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,32 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="savara.samples.Purchasing at Store" name="PurchaseGoodsProcess_Store" targetNamespace="http://www.jboss.org/examples/store" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_StoreArtifacts.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <partnerLinks>
+        <partnerLink myRole="StoreInterface" name="BuyerToStore" partnerLinkType="sto:BuyerToStoreServiceLT"/>
+        <partnerLink name="StoreToCreditAgency" partnerLinkType="sto:StoreToCreditAgencyLT" partnerRole="CreditAgencyRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="sto:buyRequest" name="buyRequestVar"/>
+        <variable messageType="pur:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="pur:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="sto:buyResponse" name="buyResponseVar"/>
+        <variable messageType="sto:BuyFailedFault" name="BuyFailedFaultVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_BuyRequest" operation="buy" partnerLink="BuyerToStore" portType="sto:StoreInterface" variable="buyRequestVar"/>
+        <scope>
+            <faultHandlers>
+                <catch faultMessageType="pur:CreditCheckFailedFault" faultName="pur:CreditCheckFailed" faultVariable="CreditCheckFailedFaultVar">
+                    <sequence>
+                        <reply faultName="sto:BuyFailed" name="Send_BuyFailed" operation="buy" partnerLink="BuyerToStore" portType="sto:StoreInterface" variable="BuyFailedFaultVar"/>
+                    </sequence>
+                </catch>
+            </faultHandlers>
+            <sequence>
+                <invoke inputVariable="checkCreditRequestVar" name="Send_CreditCheckRequest" operation="checkCredit" outputVariable="checkCreditResponseVar" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface"/>
+                <reply name="Send_BuyConfirmed" operation="buy" partnerLink="BuyerToStore" portType="sto:StoreInterface" variable="buyResponseVar"/>
+            </sequence>
+        </scope>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_Store.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Store" targetNamespace="http://www.jboss.org/examples/store">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="BuyFailedFault">
+        <wsdl:part name="content" type="sto:BuyFailed">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="buyRequest">
+        <wsdl:part name="content" type="sto:BuyRequest">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="buyResponse">
+        <wsdl:part name="content" type="sto:BuyConfirmed">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="StoreInterface">
+        <wsdl:operation name="buy">
+            <wsdl:input message="sto:buyRequest">
+            </wsdl:input>
+            <wsdl:output message="sto:buyResponse">
+            </wsdl:output>
+            <wsdl:fault message="sto:BuyFailedFault" name="BuyFailed">
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="StoreInterfaceBinding" type="sto:StoreInterface">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="buy">
+            <soap:operation soapAction="http://www.jboss.org/examples/store/buy"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+            <wsdl:fault name="BuyFailed">
+                <soap:fault name="BuyFailed" use="literal"/>
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="StoreService">
+        <wsdl:port binding="sto:StoreInterfaceBinding" name="StoreInterfacePort">
+            <soap:address location="http://localhost:8080/StoreService/StoreInterfacePort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_StoreArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_StoreArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/PurchaseGoodsProcess_StoreArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.jboss.org/examples/store" xmlns:ns2="java:org.jboss.savara.examples.purchasing" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.jboss.org/examples/store">
+    <wsdl:import location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <wsdl:import location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <plnk:partnerLinkType name="BuyerToStoreServiceLT">
+        <plnk:role name="StoreInterface" portType="ns1:StoreInterface"/>
+    </plnk:partnerLinkType>
+    <plnk:partnerLinkType name="StoreToCreditAgencyLT">
+        <plnk:role name="CreditAgencyRequester" portType="ns2:CreditAgencyInterface"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Buyer.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Buyer.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Buyer.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,23 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:byr="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns:slr="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:tns="http://www.pi4soa.org/ReqRespFault" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at Buyer" name="ReqRespFaultProcess_Buyer" targetNamespace="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_Seller.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_BuyerArtifacts.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Buyer"/>
+    <partnerLinks>
+        <partnerLink name="BuyerToSeller" partnerLinkType="byr:BuyerToSellerLT" partnerRole="SellerRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="slr:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="slr:checkCreditResponse" name="checkCreditResponseVar"/>
+    </variables>
+    <sequence>
+        <scope>
+            <faultHandlers>
+                <catch faultMessageType="slr:insufficientCreditFault" faultName="slr:insufficientCredit" faultVariable="insufficientCreditFaultVar">
+                    <sequence/>
+                </catch>
+            </faultHandlers>
+            <sequence>
+                <invoke inputVariable="checkCreditRequestVar" name="Send_CreditCheckRequest" operation="checkCredit" outputVariable="checkCreditResponseVar" partnerLink="BuyerToSeller" portType="slr:SellerBehavior"/>
+            </sequence>
+        </scope>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_BuyerArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_BuyerArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_BuyerArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ReqRespFault/Buyer">
+    <wsdl:import location="ReqRespFaultProcess_Buyer.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Buyer"/>
+    <wsdl:import location="ReqRespFaultProcess_Seller.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <plnk:partnerLinkType name="BuyerToSellerLT">
+        <plnk:role name="SellerRequester" portType="ns1:SellerBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,25 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:byr="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns:slr="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:tns="http://www.pi4soa.org/ReqRespFault" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="org.pi4soa.reqrespfault.reqrespfault.ReqRespFaultProcess at Seller" name="ReqRespFaultProcess_Seller" targetNamespace="http://www.pi4soa.org/ReqRespFault/Seller" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_Seller.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_SellerArtifacts.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <partnerLinks>
+        <partnerLink myRole="SellerBehavior" name="BuyerToSeller" partnerLinkType="slr:BuyerToSellerServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="slr:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="slr:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="slr:insufficientCreditFault" name="insufficientCreditFaultVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_CreditCheckRequest" operation="checkCredit" partnerLink="BuyerToSeller" portType="slr:SellerBehavior" variable="checkCreditRequestVar"/>
+        <if>
+            <sequence>
+                <reply name="Send_CreditCheckOk" operation="checkCredit" partnerLink="BuyerToSeller" portType="slr:SellerBehavior" variable="checkCreditResponseVar"/>
+            </sequence>
+            <else>
+                <sequence>
+                    <reply faultName="slr:insufficientCredit" name="Send_CreditCheckInvalid" operation="checkCredit" partnerLink="BuyerToSeller" portType="slr:SellerBehavior" variable="insufficientCreditFaultVar"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_Seller.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:byr="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns:slr="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.pi4soa.org/ReqRespFault" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Seller" targetNamespace="http://www.pi4soa.org/ReqRespFault/Seller">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="checkCreditRequest">
+        <wsdl:part element="CreditCheckRequest" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="checkCreditResponse">
+        <wsdl:part element="CreditCheckOk" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="insufficientCreditFault">
+        <wsdl:part element="CreditCheckInvalid" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="SellerBehavior">
+        <wsdl:operation name="checkCredit">
+            <wsdl:input message="slr:checkCreditRequest">
+            </wsdl:input>
+            <wsdl:output message="slr:checkCreditResponse">
+            </wsdl:output>
+            <wsdl:fault message="slr:insufficientCreditFault" name="insufficientCredit">
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="SellerBehaviorBinding" type="slr:SellerBehavior">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="checkCredit">
+            <soap:operation soapAction="http://www.pi4soa.org/ReqRespFault/Seller/checkCredit"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+            <wsdl:fault name="insufficientCredit">
+                <soap:fault name="insufficientCredit" use="literal"/>
+            </wsdl:fault>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="SellerService">
+        <wsdl:port binding="slr:SellerBehaviorBinding" name="SellerBehaviorPort">
+            <soap:address location="http://localhost:8080/SellerService/SellerBehaviorPort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_SellerArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_SellerArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/ReqRespFaultProcess_SellerArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ReqRespFault/Seller">
+    <wsdl:import location="ReqRespFaultProcess_Seller.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <plnk:partnerLinkType name="BuyerToSellerServiceLT">
+        <plnk:role name="SellerBehavior" portType="ns1:SellerBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,15 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at SupplierQuoteEngine" name="RequestForQuote_SupplierQuoteEngine" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="RequestForQuote_SupplierQuoteEngine.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="RequestForQuote_SupplierQuoteEngineArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <partnerLinks>
+        <partnerLink myRole="SupplierBehavior" name="BrokerToSupplierQuoteEngine" partnerLinkType="spr:BrokerToSupplierQuoteEngineServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="spr:getQuoteRequest" name="getQuoteRequestVar"/>
+        <variable messageType="spr:getQuoteResponse" name="getQuoteResponseVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_requestForQuote" operation="getQuote" partnerLink="BrokerToSupplierQuoteEngine" portType="spr:SupplierBehavior" variable="getQuoteRequestVar"/>
+        <reply name="Send_quote" operation="getQuote" partnerLink="BrokerToSupplierQuoteEngine" portType="spr:SupplierBehavior" variable="getQuoteResponseVar"/>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngine.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Supplier" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier">
+    <types xmlns="http://schemas.xmlsoap.org/wsdl/">
+        <schema xmlns="http://www.w3.org/2001/XMLSchema"/>
+    </types>
+    <wsdl:message name="confirmRequest">
+        <wsdl:part element="orderConfirmed" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="confirmResponse">
+        <wsdl:part element="bookingReference" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="getQuoteResponse">
+        <wsdl:part element="quote" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="getQuoteRequest">
+        <wsdl:part element="requestForQuote" name="content">
+        </wsdl:part>
+    </wsdl:message>
+    <wsdl:portType name="SupplierBehavior">
+        <wsdl:operation name="confirm">
+            <wsdl:input message="spr:confirmRequest">
+            </wsdl:input>
+            <wsdl:output message="spr:confirmResponse">
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="getQuote">
+            <wsdl:input message="spr:getQuoteRequest">
+            </wsdl:input>
+            <wsdl:output message="spr:getQuoteResponse">
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="SupplierBehaviorBinding" type="spr:SupplierBehavior">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="confirm">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Supplier/confirm"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="getQuote">
+            <soap:operation soapAction="http://www.pi4soa.org/ESBBroker/Supplier/getQuote"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="SupplierService">
+        <wsdl:port binding="spr:SupplierBehaviorBinding" name="SupplierBehaviorPort">
+            <soap:address location="http://localhost:8080/SupplierService/SupplierBehaviorPort"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngineArtifacts.wsdl
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngineArtifacts.wsdl	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/java/org/savara/bpel/parser/testmodels/RequestForQuote_SupplierQuoteEngineArtifacts.wsdl	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier">
+    <wsdl:import location="RequestForQuote_SupplierQuoteEngine.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <plnk:partnerLinkType name="BrokerToSupplierQuoteEngineServiceLT">
+        <plnk:role name="SupplierBehavior" portType="ns1:SupplierBehavior"/>
+    </plnk:partnerLinkType>
+</wsdl:definitions>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/META-INF/MANIFEST.MF
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/META-INF/MANIFEST.MF	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/META-INF/MANIFEST.MF	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: SAVARA BPEL Tests
+Bundle-SymbolicName: org.savara.bpel.tests
+Bundle-Version: 2.0.0.qualifier
+Bundle-Activator: org.savara.bpel.tests.osgi.Activator
+Import-Package: org.osgi.framework;version="1.3.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Require-Bundle: org.savara.pi4soa.cdm,
+ org.savara.bpel,
+ org.junit,
+ org.scribble.common,
+ org.scribble.protocol,
+ org.savara.core,
+ org.scribble.protocol.projection

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/build.properties
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/build.properties	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/build.properties	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,4 @@
+source.. = src/main/java/
+output.. = bin/
+bin.includes = META-INF/,\
+               .

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/tests/osgi/Activator.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/tests/osgi/Activator.java	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/main/java/org/savara/bpel/tests/osgi/Activator.java	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,30 @@
+package org.savara.bpel.tests.osgi;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+	private static BundleContext context;
+
+	static BundleContext getContext() {
+		return context;
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+	 */
+	public void start(BundleContext bundleContext) throws Exception {
+		Activator.context = bundleContext;
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+	 */
+	public void stop(BundleContext bundleContext) throws Exception {
+		Activator.context = null;
+	}
+
+}

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,329 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ */
+package org.savara.bpel.generator;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestResult;
+import junit.framework.TestSuite;
+
+import org.savara.util.ScribbleServices;
+import org.savara.bpel.model.TProcess;
+import org.savara.bpel.util.BPELModelUtil;
+import org.savara.model.generator.ModelGenerator;
+import org.savara.util.XMLUtils;
+import org.scribble.common.logging.CachedJournal;
+import org.scribble.protocol.model.Protocol;
+import org.scribble.protocol.model.ProtocolModel;
+import org.savara.pi4soa.cdm.parser.CDMProtocolParser;
+
+public class GeneratorTest {
+
+    public static Test suite() {
+        TestSuite suite = new TestSuite("Choreography->BPEL Generator Tests");
+        
+        /*
+        suite.addTest(new ChoreographyToBPELTester("ESBBroker", "Broker"));
+        suite.addTest(new ChoreographyToBPELTester("ESBBroker", "Buyer"));
+        suite.addTest(new ChoreographyToBPELTester("ESBBroker", "CreditAgency"));
+        suite.addTest(new ChoreographyToBPELTester("ESBBroker",
+        								"SupplierTxnProcessor"));
+        suite.addTest(new ChoreographyToBPELTester("ESBBroker",
+										"SupplierQuoteEngine"));
+        suite.addTest(new ChoreographyToBPELTester("PurchaseGoods", "Buyer"));
+        suite.addTest(new ChoreographyToBPELTester("PurchaseGoods", "CreditAgency"));
+        */
+        suite.addTest(new ChoreographyToBPELTester("PurchaseGoods", "Store"));
+        
+        /*
+        suite.addTest(new ChoreographyToBPELTester("ReqRespFault", "Buyer"));
+        suite.addTest(new ChoreographyToBPELTester("ReqRespFault", "Seller"));
+        */
+        
+        return suite;
+    }
+    
+    public static class ChoreographyToBPELTester extends TestCase {
+
+    	/**
+    	 * This constructor is initialized with the test
+    	 * name.
+    	 * 
+    	 * @param name The test name
+    	 * @param role The role
+    	 */
+    	public ChoreographyToBPELTester(String name,
+    						String role) {
+    		super(name+"@"+role);
+    		m_name = name;
+    		m_role = role;
+    	}
+    	
+    	/**
+    	 * This constructor is initialized with the test
+    	 * name.
+    	 * 
+    	 * @param name The test name
+    	 * @param role The role
+    	 */
+    	/*
+    	public ChoreographyToBPELTester(String name,
+    						SubDefinitionPath sdp, String role) {
+    		super(name+sdp.toString()+"@"+role);
+    		m_name = name;
+    		m_subDefinitionPath = sdp;
+    		m_role = role;
+    	}
+    	*/
+    	
+    	/**
+    	 * This method runs the test.
+    	 * 
+    	 * @param result The test result
+    	 */
+    	public void run(TestResult result) {
+    		result.startTest(this);
+    		
+    		String filename="generator/testmodels/"+m_name+".cdm";
+    		
+    		java.io.InputStream is=
+    			//ChoreographyToBPELTester.class.getResourceAsStream(filename);
+    			ClassLoader.getSystemResourceAsStream(filename);
+    		
+    		if (is == null) {
+    			result.addError(this,
+    					new Throwable("Unable to locate resource: "+filename));
+    		} else {			
+    			CachedJournal journal=new CachedJournal();
+    			
+    			org.scribble.protocol.model.ProtocolModel model=null;
+    			
+    			try {
+    				CDMProtocolParser parser=new CDMProtocolParser();
+    				
+    				model = parser.parse(is, journal, null);
+    			} catch(Exception e) {
+    				result.addError(this, new Throwable("Parsing choreography failed"));
+    			}
+    			
+    			if (model == null) {
+    				result.addError(this, new Throwable("Model is null"));
+    			} else {
+    				//org.scribble.protocol.projection.ProtocolProjector projector=
+    				//	new org.scribble.projector.DefaultProjector();
+    				
+    				org.scribble.protocol.model.Role role=null;
+    				
+    				// Obtain role from definition
+     				Protocol defn=model.getProtocol();
+    				    				
+    				// Check if subpath definition defined
+    				/*
+    				if (m_subDefinitionPath != null) {
+    					defn = defn.getSubDefinition(m_subDefinitionPath);
+    				}
+    				*/
+    				
+    				java.util.List<org.scribble.protocol.model.Role> roles=defn.getRoles();
+    					//new org.scribble.model.Role(m_role);
+    				
+    				for (int i=0; role == null && i < roles.size(); i++) {
+    					if (roles.get(i).getName().equals(m_role)) {
+    						role = roles.get(i);
+    					}
+    				}
+    				
+    				if (role == null) {
+    					result.addError(this,
+    							new Throwable("Role '"+m_role+"' not found"));						
+    				} else {
+    					org.scribble.protocol.projection.ProtocolProjector projector=
+    						new org.scribble.protocol.projection.impl.ProtocolProjectorImpl();
+    					
+    					org.scribble.protocol.model.ProtocolModel projected=
+    									projector.project(model, role, journal);
+    					
+    					/* Currently if a 'fail' is performed in Tycho build, it
+    					 * hangs the build.
+    					if (l.getErrors().size() > 0) {
+    						fail("Projection has errors: "+l.getErrors());
+    					} else if (projected == null) {
+    						fail("Projected model is null, for "+filename+" role "+role);
+    					}
+    					 */
+    					
+    					ModelGenerator generator=new ProtocolToBPELModelGenerator();
+    				
+     					//defn = projected.getProtocol();
+    					
+    					if (generator != null) { // && defn != null) {
+    						
+    						Object target=generator.generate(projected, journal, null);
+    						
+    						/*
+    						ModelReference targetRef=
+    							new ModelReference(BPELNotation.NOTATION_CODE);
+    						targetRef.setAlias(m_name);
+    						targetRef.setLocatedRole(m_role);
+    						
+    						DefaultBPELLanguageModel target=
+    							new DefaultBPELLanguageModel(targetRef);
+
+    						generator.generate(targetRef, role,
+    									target, projected);
+    						*/
+    						
+    						if (target instanceof TProcess) {
+    							try {
+    								java.io.ByteArrayOutputStream baos=new java.io.ByteArrayOutputStream();
+    								
+    								BPELModelUtil.serialize((TProcess)target, baos);
+    								
+    								baos.close();
+    								
+    								String text=new String(baos.toByteArray());
+    								
+    								checkResults(result, text);
+    							} catch(Exception e) {
+    								result.addError(this, e);
+    							}
+    						} else {
+    							result.addError(this,
+    									new Throwable("No BPEL generated"));						
+    						}
+    						
+    					} else {
+    						result.addError(this,
+    								new Throwable("Unable to find Model Generator"));						
+    					}
+    				}
+    			}
+    		}
+    		
+    		result.endTest(this);
+    	}
+    	
+    	/**
+    	 * This method checks the generated BPEL against a
+    	 * previously stored correct version.
+    	 * 
+    	 * @param result The test result
+    	 * @param bpel The BPEL
+    	 */
+    	protected void checkResults(TestResult result, String bpel) {
+    		boolean f_valid=false;
+
+    		String filename="generator/results/"+m_name+"@"+m_role+".bpel";
+    		
+    		java.io.InputStream is=
+    			//ChoreographyToBPELTester.class.getResourceAsStream(filename);
+    				ClassLoader.getSystemResourceAsStream(filename);
+    		
+    		if (is != null) {
+    			
+    			try {
+    				byte[] b=new byte[is.available()];
+    			
+    				is.read(b);
+    				
+    				is.close();
+    				
+    				String orig=new String(b);
+    				
+    				if (orig.equals(bpel) == false) {
+    					result.addError(this,
+    							new Throwable("Generated BPEL does not match stored version"));
+    				} else {
+    					f_valid = true;
+    				}
+    			} catch(Exception e) {
+    				result.addError(this, e);
+    			}
+    		} else {
+    			result.addError(this,
+    					new Throwable("Resulting BPEL '"+filename+
+    							"' not found for comparison"));
+    		}
+    		
+    		if (f_valid == false) {
+    			String bpelfile="testmodels/"+m_name+".cdm";
+    			
+    			java.net.URL url=ChoreographyToBPELTester.class.getResource(bpelfile);
+    			
+    			/*
+    			try {
+    				url = org.eclipse.core.runtime.FileLocator.toFileURL(url);
+    			} catch(Exception e) {
+    				e.printStackTrace();
+    			}
+    			*/
+    			
+    			if (url != null) {
+    				// URL will point to copy of test models in the classes folder, so need
+    				// to obtain reference back to source version
+    				java.io.File f=null;
+    				
+    				if (url.getFile().indexOf("classes") != -1) {
+    					f = new java.io.File(url.getFile().replaceFirst("classes","src/plugintest"));
+    				} else if (url.getFile().indexOf("bin") != -1) {						
+    					f = new java.io.File(url.getFile().replaceFirst("bin","src/plugintest"));
+    				} else {
+    					result.addError(this, new Exception("Could not locate results folder to record expected result"));
+    				}
+    				
+    				if (f != null && f.exists()) {
+    					f = f.getParentFile().getParentFile();
+    					
+    					java.io.File resultsDir=new java.io.File(f, "results");
+    					
+    					if (resultsDir.exists() == false) {
+    						resultsDir.mkdirs();
+    					}
+    					
+    					java.io.File resultFile=new java.io.File(resultsDir,
+    										m_name+"@"+m_role+".expected");
+    					
+    					if (resultFile.exists() == false) {
+    						try {
+    							java.io.FileOutputStream fos=new java.io.FileOutputStream(resultFile);
+    							
+    							fos.write(bpel.getBytes());
+    							
+    							fos.flush();
+    							fos.close();
+    							
+    						} catch(Exception e){
+    							result.addError(this, e);
+    						}
+    					} else {
+    						System.err.println("NOTE: Expected output '"+resultFile+
+    									"' already exists - not being overwritten");
+    					}
+    				} else {
+    					result.addError(this, new Throwable("Unable to obtain URL for CDM model source '"+
+    							m_name+"': "+url));
+    				}
+    			}
+    		}
+    	}
+
+    	private String m_name=null;
+    	//private SubDefinitionPath m_subDefinitionPath=null;
+    	private String m_role=null;
+    }
+}

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Broker.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Broker.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Broker.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,66 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at Broker" name="ESBBrokerProcess_Broker" targetNamespace="http://www.pi4soa.org/ESBBroker/Broker" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_BrokerArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <partnerLinks>
+        <partnerLink myRole="BrokerBehavior" name="BuyerToBroker" partnerLinkType="brk:BuyerToBrokerServiceLT"/>
+        <partnerLink name="BrokerToSupplierQuoteEngine" partnerLinkType="brk:BrokerToSupplierQuoteEngineLT" partnerRole="SupplierQuoteEngineRequester"/>
+        <partnerLink name="BrokerToCreditAgency" partnerLinkType="brk:BrokerToCreditAgencyLT" partnerRole="CreditAgencyRequester"/>
+        <partnerLink name="BrokerToSupplierTxnProcessor" partnerLinkType="brk:BrokerToSupplierTxnProcessorLT" partnerRole="SupplierTxnProcessorRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="brk:makeEnquiryRequest" name="makeEnquiryRequestVar"/>
+        <variable messageType="spr:getQuoteRequest" name="getQuoteRequestVar"/>
+        <variable messageType="spr:getQuoteResponse" name="getQuoteResponseVar"/>
+        <variable messageType="brk:makeEnquiryResponse" name="makeEnquiryResponseVar"/>
+        <variable messageType="brk:buyRequest" name="buyRequestVar"/>
+        <variable messageType="cay:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="cay:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="spr:confirmRequest" name="confirmRequestVar"/>
+        <variable messageType="spr:confirmResponse" name="confirmResponseVar"/>
+        <variable messageType="brk:buyResponse" name="buyResponseVar"/>
+        <variable messageType="brk:rejectedFault" name="rejectedFaultVar"/>
+        <variable messageType="brk:cancelRequest" name="cancelRequestVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_enquiry" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="makeEnquiryRequestVar"/>
+        <while>
+            <sequence>
+                <scope>
+                    <sequence>
+                        <invoke inputVariable="getQuoteRequestVar" name="Send_requestForQuote" operation="getQuote" outputVariable="getQuoteResponseVar" partnerLink="BrokerToSupplierQuoteEngine" portType="spr:SupplierBehavior"/>
+                    </sequence>
+                </scope>
+            </sequence>
+        </while>
+        <reply name="Send_quoteList" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="makeEnquiryResponseVar"/>
+        <pick>
+            <onMessage operation="buy" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="buyRequestVar">
+                <sequence>
+                    <scope>
+                        <sequence>
+                            <scope>
+                                <faultHandlers>
+                                    <catch faultMessageType="cay:invalidCreditFault" faultName="cay:invalidCredit" faultVariable="invalidCreditFaultVar">
+                                        <sequence>
+                                            <reply faultName="brk:rejected" name="Send_orderRejected" operation="buy" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="rejectedFaultVar"/>
+                                        </sequence>
+                                    </catch>
+                                </faultHandlers>
+                                <sequence>
+                                    <invoke inputVariable="checkCreditRequestVar" name="Send_CreditCheckRequest" operation="checkCredit" outputVariable="checkCreditResponseVar" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior"/>
+                                    <invoke inputVariable="confirmRequestVar" name="Send_orderConfirmed" operation="confirm" outputVariable="confirmResponseVar" partnerLink="BrokerToSupplierTxnProcessor" portType="spr:SupplierBehavior"/>
+                                    <reply name="Send_bookingReference" operation="buy" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="buyResponseVar"/>
+                                </sequence>
+                            </scope>
+                        </sequence>
+                    </scope>
+                </sequence>
+            </onMessage>
+            <onMessage operation="cancel" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="cancelRequestVar">
+                <sequence/>
+            </onMessage>
+        </pick>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Buyer.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Buyer.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Buyer.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,43 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at Buyer" name="ESBBrokerProcess_Buyer" targetNamespace="http://www.pi4soa.org/ESBBroker/Buyer" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_BuyerArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Buyer"/>
+    <partnerLinks>
+        <partnerLink myRole="BrokerBehavior" name="BuyerToBroker" partnerLinkType="byr:BuyerToBrokerLT" partnerRole="BrokerRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="brk:makeEnquiryRequest" name="makeEnquiryRequestVar"/>
+        <variable messageType="brk:makeEnquiryResponse" name="makeEnquiryResponseVar"/>
+        <variable messageType="brk:buyRequest" name="buyRequestVar"/>
+        <variable messageType="brk:buyResponse" name="buyResponseVar"/>
+        <variable messageType="brk:cancelRequest" name="cancelRequestVar"/>
+    </variables>
+    <sequence>
+        <invoke inputVariable="makeEnquiryRequestVar" name="Send_enquiry" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior"/>
+        <receive name="Receive_quoteList" operation="makeEnquiry" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior" variable="makeEnquiryResponseVar"/>
+        <if>
+            <sequence>
+                <scope>
+                    <sequence>
+                        <scope>
+                            <faultHandlers>
+                                <catch faultMessageType="brk:rejectedFault" faultName="brk:rejected" faultVariable="rejectedFaultVar">
+                                    <sequence/>
+                                </catch>
+                            </faultHandlers>
+                            <sequence>
+                                <invoke inputVariable="buyRequestVar" name="Send_buy" operation="buy" outputVariable="buyResponseVar" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior"/>
+                            </sequence>
+                        </scope>
+                    </sequence>
+                </scope>
+            </sequence>
+            <else>
+                <sequence>
+                    <invoke inputVariable="cancelRequestVar" name="Send_cancel" operation="cancel" partnerLink="BuyerToBroker" portType="brk:BrokerBehavior"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at CreditAgency.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at CreditAgency.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at CreditAgency.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,36 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.Common at CreditAgency" name="ESBBrokerProcess_CreditAgency" targetNamespace="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgency.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Broker.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_Supplier.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ESBBrokerProcess_CreditAgencyArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <partnerLinks>
+        <partnerLink myRole="CreditAgencyService" name="BrokerToCreditAgency" partnerLinkType="cay:BrokerToCreditAgencyServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="cay:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="cay:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="cay:invalidCreditFault" name="invalidCreditFaultVar"/>
+    </variables>
+    <sequence>
+        <pick>
+            <onMessage operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior" variable="checkCreditRequestVar">
+                <sequence>
+                    <scope>
+                        <sequence>
+                            <if>
+                                <sequence>
+                                    <reply name="Send_CreditCheckOk" operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior" variable="checkCreditResponseVar"/>
+                                </sequence>
+                                <else>
+                                    <sequence>
+                                        <reply faultName="cay:invalidCredit" name="Send_CreditCheckInvalid" operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="cay:CreditAgencyBehavior" variable="invalidCreditFaultVar"/>
+                                    </sequence>
+                                </else>
+                            </if>
+                        </sequence>
+                    </scope>
+                </sequence>
+            </onMessage>
+        </pick>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Supplier.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Supplier.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at Supplier.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,3 @@
+<process name="ESBBrokerProcess_Supplier" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <sequence/>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierQuoteEngine.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierQuoteEngine.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierQuoteEngine.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,15 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at SupplierQuoteEngine" name="RequestForQuote_SupplierQuoteEngine" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="RequestForQuote_SupplierQuoteEngine.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="RequestForQuote_SupplierQuoteEngineArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <partnerLinks>
+        <partnerLink myRole="SupplierBehavior" name="BrokerToSupplierQuoteEngine" partnerLinkType="spr:BrokerToSupplierQuoteEngineServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="spr:getQuoteRequest" name="getQuoteRequestVar"/>
+        <variable messageType="spr:getQuoteResponse" name="getQuoteResponseVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_requestForQuote" operation="getQuote" partnerLink="BrokerToSupplierQuoteEngine" portType="spr:SupplierBehavior" variable="getQuoteRequestVar"/>
+        <reply name="Send_quote" operation="getQuote" partnerLink="BrokerToSupplierQuoteEngine" portType="spr:SupplierBehavior" variable="getQuoteResponseVar"/>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierTxnProcessor.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierTxnProcessor.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker at SupplierTxnProcessor.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,20 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker" xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer" xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency" xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier" xmlns:tns="http://www.pi4soa.org/ESBBroker" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at SupplierTxnProcessor" name="CompleteTransaction_SupplierTxnProcessor" targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="CompleteTransaction_SupplierTxnProcessor.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl" namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <partnerLinks>
+        <partnerLink myRole="SupplierTxnProcessorService" name="BrokerToSupplierTxnProcessor" partnerLinkType="spr:BrokerToSupplierTxnProcessorServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="spr:confirmRequest" name="confirmRequestVar"/>
+        <variable messageType="spr:confirmResponse" name="confirmResponseVar"/>
+    </variables>
+    <sequence>
+        <pick createInstance="yes">
+            <onMessage operation="confirm" partnerLink="BrokerToSupplierTxnProcessor" portType="spr:SupplierBehavior" variable="confirmRequestVar">
+                <sequence>
+                    <reply name="Send_bookingReference" operation="confirm" partnerLink="BrokerToSupplierTxnProcessor" portType="spr:SupplierBehavior" variable="confirmResponseVar"/>
+                </sequence>
+            </onMessage>
+        </pick>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Buyer.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Buyer.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Buyer.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,24 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="savara.samples.Purchasing at Buyer" name="PurchaseGoodsProcess_Buyer" targetNamespace="http://www.jboss.org/savara/examples" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_BuyerArtifacts.wsdl" namespace="http://www.jboss.org/savara/examples"/>
+    <partnerLinks>
+        <partnerLink name="BuyerToStore" partnerLinkType="tns:BuyerToStoreLT" partnerRole="StoreRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="sto:buyRequest" name="buyRequestVar"/>
+        <variable messageType="sto:buyResponse" name="buyResponseVar"/>
+    </variables>
+    <sequence>
+        <scope>
+            <faultHandlers>
+                <catch faultMessageType="sto:BuyFailedFault" faultName="sto:BuyFailed" faultVariable="BuyFailedFaultVar">
+                    <sequence/>
+                </catch>
+            </faultHandlers>
+            <sequence>
+                <invoke inputVariable="buyRequestVar" name="Send_BuyRequest" operation="buy" outputVariable="buyResponseVar" partnerLink="BuyerToStore" portType="sto:StoreInterface"/>
+            </sequence>
+        </scope>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at CreditAgency.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at CreditAgency.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at CreditAgency.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,26 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="savara.samples.Common at CreditAgency" name="PurchaseGoodsProcess_CreditAgency" targetNamespace="java:org.jboss.savara.examples.purchasing" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgencyArtifacts.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <partnerLinks>
+        <partnerLink myRole="CreditAgencyInterface" name="StoreToCreditAgency" partnerLinkType="pur:StoreToCreditAgencyServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="pur:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="pur:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="pur:CreditCheckFailedFault" name="CreditCheckFailedFaultVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_CreditCheckRequest" operation="checkCredit" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface" variable="checkCreditRequestVar"/>
+        <if>
+            <sequence>
+                <reply name="Send_CreditCheckOk" operation="checkCredit" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface" variable="checkCreditResponseVar"/>
+            </sequence>
+            <else>
+                <sequence>
+                    <reply faultName="pur:CreditCheckFailed" name="Send_CreditCheckInvalid" operation="checkCredit" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface" variable="CreditCheckFailedFaultVar"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Store.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Store.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods at Store.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,32 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:pur="java:org.jboss.savara.examples.purchasing" xmlns:sto="http://www.jboss.org/examples/store" xmlns:tns="http://www.jboss.org/savara/examples" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="savara.samples.Purchasing at Store" name="PurchaseGoodsProcess_Store" targetNamespace="http://www.jboss.org/examples/store" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_Store.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_CreditAgency.wsdl" namespace="java:org.jboss.savara.examples.purchasing"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="PurchaseGoodsProcess_StoreArtifacts.wsdl" namespace="http://www.jboss.org/examples/store"/>
+    <partnerLinks>
+        <partnerLink myRole="StoreInterface" name="BuyerToStore" partnerLinkType="sto:BuyerToStoreServiceLT"/>
+        <partnerLink name="StoreToCreditAgency" partnerLinkType="sto:StoreToCreditAgencyLT" partnerRole="CreditAgencyRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="sto:buyRequest" name="buyRequestVar"/>
+        <variable messageType="pur:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="pur:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="sto:buyResponse" name="buyResponseVar"/>
+        <variable messageType="sto:BuyFailedFault" name="BuyFailedFaultVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_BuyRequest" operation="buy" partnerLink="BuyerToStore" portType="sto:StoreInterface" variable="buyRequestVar"/>
+        <scope>
+            <faultHandlers>
+                <catch faultMessageType="pur:CreditCheckFailedFault" faultName="pur:CreditCheckFailed" faultVariable="CreditCheckFailedFaultVar">
+                    <sequence>
+                        <reply faultName="sto:BuyFailed" name="Send_BuyFailed" operation="buy" partnerLink="BuyerToStore" portType="sto:StoreInterface" variable="BuyFailedFaultVar"/>
+                    </sequence>
+                </catch>
+            </faultHandlers>
+            <sequence>
+                <invoke inputVariable="checkCreditRequestVar" name="Send_CreditCheckRequest" operation="checkCredit" outputVariable="checkCreditResponseVar" partnerLink="StoreToCreditAgency" portType="pur:CreditAgencyInterface"/>
+                <reply name="Send_BuyConfirmed" operation="buy" partnerLink="BuyerToStore" portType="sto:StoreInterface" variable="buyResponseVar"/>
+            </sequence>
+        </scope>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Buyer.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Buyer.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Buyer.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,23 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:byr="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns:slr="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:tns="http://www.pi4soa.org/ReqRespFault" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="overlord.cdl.samples.LoanBroker at Buyer" name="ReqRespFaultProcess_Buyer" targetNamespace="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_Seller.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_BuyerArtifacts.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Buyer"/>
+    <partnerLinks>
+        <partnerLink name="BuyerToSeller" partnerLinkType="byr:BuyerToSellerLT" partnerRole="SellerRequester"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="slr:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="slr:checkCreditResponse" name="checkCreditResponseVar"/>
+    </variables>
+    <sequence>
+        <scope>
+            <faultHandlers>
+                <catch faultMessageType="slr:insufficientCreditFault" faultName="slr:insufficientCredit" faultVariable="insufficientCreditFaultVar">
+                    <sequence/>
+                </catch>
+            </faultHandlers>
+            <sequence>
+                <invoke inputVariable="checkCreditRequestVar" name="Send_CreditCheckRequest" operation="checkCredit" outputVariable="checkCreditResponseVar" partnerLink="BuyerToSeller" portType="slr:SellerBehavior"/>
+            </sequence>
+        </scope>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Seller.bpel
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Seller.bpel	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault at Seller.bpel	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,25 @@
+<process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:byr="http://www.pi4soa.org/ReqRespFault/Buyer" xmlns:slr="http://www.pi4soa.org/ReqRespFault/Seller" xmlns:tns="http://www.pi4soa.org/ReqRespFault" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.scribble.org/conversation" ns0:conversationType="org.pi4soa.reqrespfault.reqrespfault.ReqRespFaultProcess at Seller" name="ReqRespFaultProcess_Seller" targetNamespace="http://www.pi4soa.org/ReqRespFault/Seller" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_Seller.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <import importType="http://schemas.xmlsoap.org/wsdl/" location="ReqRespFaultProcess_SellerArtifacts.wsdl" namespace="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <partnerLinks>
+        <partnerLink myRole="SellerBehavior" name="BuyerToSeller" partnerLinkType="slr:BuyerToSellerServiceLT"/>
+    </partnerLinks>
+    <variables>
+        <variable messageType="slr:checkCreditRequest" name="checkCreditRequestVar"/>
+        <variable messageType="slr:checkCreditResponse" name="checkCreditResponseVar"/>
+        <variable messageType="slr:insufficientCreditFault" name="insufficientCreditFaultVar"/>
+    </variables>
+    <sequence>
+        <receive createInstance="yes" name="Receive_CreditCheckRequest" operation="checkCredit" partnerLink="BuyerToSeller" portType="slr:SellerBehavior" variable="checkCreditRequestVar"/>
+        <if>
+            <sequence>
+                <reply name="Send_CreditCheckOk" operation="checkCredit" partnerLink="BuyerToSeller" portType="slr:SellerBehavior" variable="checkCreditResponseVar"/>
+            </sequence>
+            <else>
+                <sequence>
+                    <reply faultName="slr:insufficientCredit" name="Send_CreditCheckInvalid" operation="checkCredit" partnerLink="BuyerToSeller" portType="slr:SellerBehavior" variable="insufficientCreditFaultVar"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ESBBroker" name="ESBBroker" author="gary" version="0.2" targetNamespace="http://www.pi4soa.org/ESBBroker">
+  <typeDefinitions>
+    <nameSpaces description="Target Namespace for ESBBroker" prefix="tns" uRI="http://www.pi4soa.org/ESBBroker"/>
+    <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
+    <nameSpaces description="Target Namespace for ESBBroker" prefix="brk" uRI="http://www.pi4soa.org/ESBBroker/Broker"/>
+    <nameSpaces description="Target Namespace for ESBBroker" prefix="byr" uRI="http://www.pi4soa.org/ESBBroker/Buyer"/>
+    <nameSpaces description="Target Namespace for ESBBroker" prefix="cay" uRI="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+    <nameSpaces description="Target Namespace for ESBBroker" prefix="spr" uRI="http://www.pi4soa.org/ESBBroker/Supplier"/>
+    <informationTypes description="This is the information type BookingReference" name="BookingReference" elementName="bookingReference"/>
+    <informationTypes description="This is the information type Buy" name="Buy" elementName="buy"/>
+    <informationTypes description="This is the information type Cancel" name="Cancel" elementName="cancel"/>
+    <informationTypes description="This is the information type CreditInformation" name="CreditInformation" elementName="CreditCheckRequest"/>
+    <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="CreditCheckInvalid"/>
+    <informationTypes description="This is the information type CreditValid" name="CreditValid" elementName="CreditCheckOk"/>
+    <informationTypes description="This is the information type Enquiry" name="Enquiry" typeName="" elementName="enquiry"/>
+    <informationTypes description="This is the information type OrderConfirmed" name="OrderConfirmed" elementName="orderConfirmed"/>
+    <informationTypes description="This is the information type OrderRejected" name="OrderRejected" elementName="orderRejected"/>
+    <informationTypes description="This is the information type Quote" name="Quote" elementName="quote"/>
+    <informationTypes description="This is the information type QuoteList" name="QuoteList" elementName="quoteList"/>
+    <informationTypes description="This is the information type RequestForQuote" name="RequestForQuote" elementName="requestForQuote"/>
+    <informationTypes description="This is the information type URIType" name="URIType"/>
+    <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/@informationTypes.12"/>
+    <roleTypes description="This is the role type Broker" name="Broker">
+      <behaviors description="This is the behavior BrokerBehavior" name="BrokerBehavior"/>
+    </roleTypes>
+    <roleTypes description="This is the role type Buyer" name="Buyer">
+      <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
+    </roleTypes>
+    <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
+      <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior"/>
+    </roleTypes>
+    <roleTypes description="This is the role type Supplier" name="Supplier">
+      <behaviors description="This is the behavior SupplierBehavior" name="SupplierBehavior"/>
+    </roleTypes>
+    <relationshipTypes description="Relationship between Broker and CreditAgency" name="BrokerToCreditAgencyRel" firstRoleType="//@typeDefinitions/@roleTypes.0" secondRoleType="//@typeDefinitions/@roleTypes.2"/>
+    <relationshipTypes description="Relationship between Broker and Supplier" name="BrokerToSupplierRel" firstRoleType="//@typeDefinitions/@roleTypes.0" secondRoleType="//@typeDefinitions/@roleTypes.3"/>
+    <relationshipTypes description="Relationship between Buyer and Broker" name="BuyerToBrokerRel" firstRoleType="//@typeDefinitions/@roleTypes.1" secondRoleType="//@typeDefinitions/@roleTypes.0"/>
+    <participantTypes description="This is the participant type brk:Broker" name="brk:Broker" roleTypes="//@typeDefinitions/@roleTypes.0">
+      <semanticAnnotations annotation="overlord.cdl.samples.LoanBroker at Broker" name="conversationType"/>
+    </participantTypes>
+    <participantTypes description="This is the participant type byr:Buyer" name="byr:Buyer" roleTypes="//@typeDefinitions/@roleTypes.1">
+      <semanticAnnotations annotation="overlord.cdl.samples.LoanBroker at Buyer" name="conversationType"/>
+    </participantTypes>
+    <participantTypes description="This is the participant type cay:CreditAgency" name="cay:CreditAgency" roleTypes="//@typeDefinitions/@roleTypes.2">
+      <semanticAnnotations annotation="overlord.cdl.samples.Common at CreditAgency" name="conversationType"/>
+    </participantTypes>
+    <participantTypes description="This is the participant type spr:Supplier" name="spr:Supplier" roleTypes="//@typeDefinitions/@roleTypes.3">
+      <semanticAnnotations annotation="" name="conversationType"/>
+    </participantTypes>
+    <channelTypes description="This is the channel type BrokerChannelType" name="BrokerChannelType" referenceToken="//@typeDefinitions/@tokens.0" roleType="//@typeDefinitions/@roleTypes.0"/>
+    <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/@tokens.0" roleType="//@typeDefinitions/@roleTypes.2"/>
+    <channelTypes description="This is the channel type SupplierChannelType" name="SupplierChannelType" referenceToken="//@typeDefinitions/@tokens.0" roleType="//@typeDefinitions/@roleTypes.3"/>
+  </typeDefinitions>
+  <choreographies description="Choreography flow for the ESBBroker process" name="ESBBrokerProcess" root="true">
+    <enclosedChoreographies name="CompleteTransaction">
+      <participantDefinitions name="SupplierTxnProcessor" roleTypes="//@typeDefinitions/@roleTypes.3">
+        <semanticAnnotations annotation="overlord.cdl.samples.LoanBroker at SupplierTxnProcessor" name="conversationType"/>
+      </participantDefinitions>
+      <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/@channelTypes.0" free="true" roleTypes="//@typeDefinitions/@roleTypes.0 //@typeDefinitions/@roleTypes.1"/>
+      <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/@channelTypes.1"/>
+      <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/@channelTypes.2"/>
+      <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.2">
+        <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Buy" name="BuyRequestExchange" type="//@typeDefinitions/@informationTypes.1"/>
+      </activities>
+      <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCredit" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.1" relationship="//@typeDefinitions/@relationshipTypes.0">
+        <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CheckCredit" name="CheckCreditRequestExchange" type="//@typeDefinitions/@informationTypes.3"/>
+      </activities>
+      <activities xsi:type="org.pi4soa.cdl:Choice" description="Evaluate Credit Check Result">
+        <activities xsi:type="org.pi4soa.cdl:Sequence" description="Sufficient Credit">
+          <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditResponse" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.1" relationship="//@typeDefinitions/@relationshipTypes.0">
+            <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditResponse" name="CheckCreditResponseRespondExchange" type="//@typeDefinitions/@informationTypes.5" action="Respond"/>
+          </activities>
+          <activities xsi:type="org.pi4soa.cdl:Interaction" name="ConfirmBooking" operation="confirm" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.2" relationship="//@typeDefinitions/@relationshipTypes.1" toParticipant="//@choreographies.0/@enclosedChoreographies.0/@participantDefinitions.0">
+            <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/@informationTypes.7"/>
+            <exchangeDetails description="This is the exchange details for the request exchange associated with interaction ConfirmBooking" name="ConfirmBookingRequestExchange" type="//@typeDefinitions/@informationTypes.0" action="Respond"/>
+          </activities>
+          <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.2">
+            <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/@informationTypes.0" action="Respond" faultName=""/>
+          </activities>
+        </activities>
+        <activities xsi:type="org.pi4soa.cdl:Sequence" description="Insufficient Credit">
+          <activities xsi:type="org.pi4soa.cdl:Interaction" name="CheckCreditFailed" operation="checkCredit" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.1" relationship="//@typeDefinitions/@relationshipTypes.0">
+            <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CheckCreditFailed" name="CheckCreditFailedRespondExchange" type="//@typeDefinitions/@informationTypes.4" action="Respond" faultName="invalidCredit"/>
+          </activities>
+          <activities xsi:type="org.pi4soa.cdl:Interaction" name="Buy" operation="buy" channelVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.2">
+            <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Buy" name="BuyRespondExchange" type="//@typeDefinitions/@informationTypes.8" action="Respond" faultName="rejected"/>
+          </activities>
+        </activities>
+      </activities>
+    </enclosedChoreographies>
+    <enclosedChoreographies name="RequestForQuote">
+      <participantDefinitions name="SupplierQuoteEngine" roleTypes="//@typeDefinitions/@roleTypes.3">
+        <semanticAnnotations annotation="overlord.cdl.samples.LoanBroker at SupplierQuoteEngine" name="conversationType"/>
+      </participantDefinitions>
+      <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/@channelTypes.2"/>
+      <activities xsi:type="org.pi4soa.cdl:Interaction" name="RFQ" operation="getQuote" channelVariable="//@choreographies.0/@enclosedChoreographies.1/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.1" toParticipant="//@choreographies.0/@enclosedChoreographies.1/@participantDefinitions.0">
+        <exchangeDetails description="This is the exchange details for the request exchange associated with interaction RFQ" name="RFQRequestExchange" type="//@typeDefinitions/@informationTypes.11"/>
+        <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction RFQ" name="RFQRespondExchange" type="//@typeDefinitions/@informationTypes.9" action="Respond"/>
+      </activities>
+    </enclosedChoreographies>
+    <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/@channelTypes.0" roleTypes="//@typeDefinitions/@roleTypes.0 //@typeDefinitions/@roleTypes.1"/>
+    <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.2">
+      <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Enquiry" name="EnquiryRequestExchange" type="//@typeDefinitions/@informationTypes.6"/>
+    </activities>
+    <activities xsi:type="org.pi4soa.cdl:While" name="SendRFQToSuppliers">
+      <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/@enclosedChoreographies.1"/>
+    </activities>
+    <activities xsi:type="org.pi4soa.cdl:When" name="WhenQuotesReceivedOrTimeout">
+      <activities xsi:type="org.pi4soa.cdl:Interaction" name="Enquiry" operation="makeEnquiry" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.2">
+        <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction Enquiry" name="EnquiryRespondExchange" type="//@typeDefinitions/@informationTypes.10" action="Respond"/>
+      </activities>
+    </activities>
+    <activities xsi:type="org.pi4soa.cdl:Choice">
+      <activities xsi:type="org.pi4soa.cdl:Sequence">
+        <activities xsi:type="org.pi4soa.cdl:Perform" choreography="//@choreographies.0/@enclosedChoreographies.0" waitForCompletion="false">
+          <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/@variableDefinitions.0" thisRole="//@typeDefinitions/@roleTypes.1" freeVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.0" freeRole="//@typeDefinitions/@roleTypes.1"/>
+          <bindDetails name="BindBrokerChannel" thisVariable="//@choreographies.0/@variableDefinitions.0" thisRole="//@typeDefinitions/@roleTypes.0" freeVariable="//@choreographies.0/@enclosedChoreographies.0/@variableDefinitions.0" freeRole="//@typeDefinitions/@roleTypes.0"/>
+        </activities>
+      </activities>
+      <activities xsi:type="org.pi4soa.cdl:Sequence">
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="Cancel" operation="cancel" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.2">
+          <exchangeDetails description="This is the exchange details for the request exchange associated with interaction Cancel" name="CancelRequestExchange" type="//@typeDefinitions/@informationTypes.2"/>
+        </activities>
+      </activities>
+    </activities>
+  </choreographies>
+</org.pi4soa.cdl:Package>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/PurchaseGoods.cdm
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/PurchaseGoods.cdm	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/PurchaseGoods.cdm	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for PurchaseGoods" name="PurchaseGoods" author="gary" version="0.1" targetNamespace="http://www.jboss.org/savara/examples">
+  <typeDefinitions>
+    <nameSpaces description="Target Namespace for PurchaseGoods" prefix="tns" uRI="http://www.jboss.org/savara/examples"/>
+    <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
+    <nameSpaces prefix="pur" uRI="java:org.jboss.savara.examples.purchasing"/>
+    <nameSpaces prefix="sto" uRI="http://www.jboss.org/examples/store"/>
+    <informationTypes description="This is the information type BuyConfirmed" name="BuyConfirmed" typeName="sto:BuyConfirmed" elementName=""/>
+    <informationTypes description="This is the information type BuyFailed" name="BuyFailed" typeName="sto:BuyFailed" elementName=""/>
+    <informationTypes description="This is the information type BuyRequest" name="BuyRequest" typeName="sto:BuyRequest" elementName=""/>
+    <informationTypes description="This is the information type CreditCheckInvalid" name="CreditCheckInvalid" typeName="pur:CreditCheckInvalid" elementName=""/>
+    <informationTypes description="This is the information type CreditCheckOk" name="CreditCheckOk" typeName="pur:CreditCheckOk" elementName=""/>
+    <informationTypes description="This is the information type CreditCheckRequest" name="CreditCheckRequest" typeName="pur:CreditCheckRequest" elementName=""/>
+    <informationTypes description="This is the information type IDType" name="IDType" typeName="xsd:string"/>
+    <informationTypes description="This is the information type URITokenType" name="URITokenType" typeName="xsd:anyURI"/>
+    <tokens description="This is the token ID" name="ID" informationType="//@typeDefinitions/@informationTypes.6"/>
+    <tokens description="This is the token URIToken" name="URIToken" informationType="//@typeDefinitions/@informationTypes.7"/>
+    <tokenLocators description="This is the token locator BuyFailedIDLocator" token="//@typeDefinitions/@tokens.0" informationType="//@typeDefinitions/@informationTypes.1" query="//@id" name="BuyFailedIDLocator"/>
+    <tokenLocators description="This is the token locator BuyRequestIDLocator" token="//@typeDefinitions/@tokens.0" informationType="//@typeDefinitions/@informationTypes.2" query="//@id" name="BuyRequestIDLocator"/>
+    <tokenLocators description="This is the token locator BuyResponseIDLocator" token="//@typeDefinitions/@tokens.0" informationType="//@typeDefinitions/@informationTypes.0" query="//@id" name="BuyResponseIDLocator"/>
+    <tokenLocators description="This is the token locator CreditCheckInvalidIDLocator" token="//@typeDefinitions/@tokens.0" informationType="//@typeDefinitions/@informationTypes.3" query="//@id" name="CreditCheckInvalidIDLocator"/>
+    <tokenLocators description="This is the token locator CreditCheckRequestIDLocator" token="//@typeDefinitions/@tokens.0" informationType="//@typeDefinitions/@informationTypes.5" query="//@id" name="CreditCheckRequestIDLocator"/>
+    <tokenLocators description="This is the token locator CreditCheckResponseIDLocator" token="//@typeDefinitions/@tokens.0" informationType="//@typeDefinitions/@informationTypes.4" query="//@id" name="CreditCheckResponseIDLocator"/>
+    <roleTypes description="This is the role type Buyer" name="Buyer">
+      <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
+    </roleTypes>
+    <roleTypes description="This is the role type CreditAgency" name="CreditAgency">
+      <behaviors description="This is the behavior CreditAgencyBehavior" name="CreditAgencyBehavior" interface="pur:CreditAgencyInterface"/>
+    </roleTypes>
+    <roleTypes description="This is the role type Store" name="Store">
+      <behaviors description="This is the behavior StoreBehavior" name="StoreBehavior" interface="sto:StoreInterface"/>
+    </roleTypes>
+    <relationshipTypes description="Relationship between Buyer and Store" name="BuyerToStoreRel" firstRoleType="//@typeDefinitions/@roleTypes.0" secondRoleType="//@typeDefinitions/@roleTypes.2"/>
+    <relationshipTypes description="Relationship between Store and CreditAgency" name="StoreToCreditAgencyRel" firstRoleType="//@typeDefinitions/@roleTypes.2" secondRoleType="//@typeDefinitions/@roleTypes.1"/>
+    <participantTypes description="This is the participant type Buyer" name="Buyer" roleTypes="//@typeDefinitions/@roleTypes.0">
+      <semanticAnnotations annotation="savara.samples.Purchasing at Buyer" name="conversationType"/>
+    </participantTypes>
+    <participantTypes description="This is the participant type pur:CreditAgency" name="pur:CreditAgency" roleTypes="//@typeDefinitions/@roleTypes.1">
+      <semanticAnnotations annotation="savara.samples.Common at CreditAgency" name="conversationType"/>
+    </participantTypes>
+    <participantTypes description="This is the participant type sto:Store" name="sto:Store" roleTypes="//@typeDefinitions/@roleTypes.2">
+      <semanticAnnotations annotation="savara.samples.Purchasing at Store" name="conversationType"/>
+    </participantTypes>
+    <channelTypes description="This is the channel type CreditAgencyChannelType" name="CreditAgencyChannelType" referenceToken="//@typeDefinitions/@tokens.1" roleType="//@typeDefinitions/@roleTypes.1">
+      <identities description="ID" tokens="//@typeDefinitions/@tokens.0"/>
+    </channelTypes>
+    <channelTypes description="This is the channel type StoreChannelType" name="StoreChannelType" referenceToken="//@typeDefinitions/@tokens.1" roleType="//@typeDefinitions/@roleTypes.2">
+      <identities description="ID" tokens="//@typeDefinitions/@tokens.0"/>
+    </channelTypes>
+  </typeDefinitions>
+  <choreographies description="Choreography flow for the PurchaseGoods process" name="PurchaseGoodsProcess" root="true">
+    <variableDefinitions description="Channel to facilitate interaction to CreditAgency" name="CreditAgencyChannel" type="//@typeDefinitions/@channelTypes.0"/>
+    <variableDefinitions description="Channel to facilitate interaction to Supplier" name="SupplierChannel" type="//@typeDefinitions/@channelTypes.1"/>
+    <variableDefinitions description="This is the variable buy" name="buy" type="//@typeDefinitions/@informationTypes.2"/>
+    <activities xsi:type="org.pi4soa.cdl:Interaction" name="BuyRequest" operation="buy" channelVariable="//@choreographies.0/@variableDefinitions.1" relationship="//@typeDefinitions/@relationshipTypes.0">
+      <exchangeDetails description="This is the exchange details for the request exchange associated with interaction BuyRequest" name="BuyRequestRequestExchange" type="//@typeDefinitions/@informationTypes.2"/>
+    </activities>
+    <activities xsi:type="org.pi4soa.cdl:Interaction" name="CreditCheck" operation="checkCredit" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.1">
+      <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CreditCheck" name="CreditCheckRequestExchange" type="//@typeDefinitions/@informationTypes.5"/>
+    </activities>
+    <activities xsi:type="org.pi4soa.cdl:Choice" description="Is credit ok?">
+      <activities xsi:type="org.pi4soa.cdl:Sequence" description="Credit Valid">
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="CreditCheckOk" operation="checkCredit" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.1">
+          <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CreditCheckOk" name="CreditCheckOkRespondExchange" type="//@typeDefinitions/@informationTypes.4" action="Respond"/>
+        </activities>
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="BuyConfirmed" operation="buy" channelVariable="//@choreographies.0/@variableDefinitions.1" relationship="//@typeDefinitions/@relationshipTypes.0">
+          <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction BuyConfirmed" name="BuyConfirmedRespondExchange" type="//@typeDefinitions/@informationTypes.0" action="Respond"/>
+        </activities>
+      </activities>
+      <activities xsi:type="org.pi4soa.cdl:Sequence" description="Credit Invalid">
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="CreditCheckFailed" operation="checkCredit" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.1">
+          <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CreditCheckFailed" name="CreditCheckFailedRespondExchange" type="//@typeDefinitions/@informationTypes.3" action="Respond" faultName="CreditCheckFailed"/>
+        </activities>
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="BuyFailed" operation="buy" channelVariable="//@choreographies.0/@variableDefinitions.1" relationship="//@typeDefinitions/@relationshipTypes.0">
+          <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction BuyFailed" name="BuyFailedRespondExchange" type="//@typeDefinitions/@informationTypes.1" action="Respond" faultName="BuyFailed"/>
+        </activities>
+      </activities>
+    </activities>
+  </choreographies>
+</org.pi4soa.cdl:Package>

Added: branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ReqRespFault.cdm
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ReqRespFault.cdm	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ReqRespFault.cdm	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<org.pi4soa.cdl:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The choreography description for ReqRespFault" name="ReqRespFault" author="gary" version="0.3" targetNamespace="http://www.pi4soa.org/ReqRespFault">
+  <typeDefinitions>
+    <nameSpaces description="Target Namespace for ReqRespFault" prefix="tns" uRI="http://www.pi4soa.org/ReqRespFault"/>
+    <nameSpaces description="XML Schema Namespace" prefix="xsd" uRI="http://www.w3.org/2001/XMLSchema"/>
+    <nameSpaces description="Target Namespace for ReqRespFault" prefix="byr" uRI="http://www.pi4soa.org/ReqRespFault/Buyer"/>
+    <nameSpaces description="Target Namespace for ReqRespFault" prefix="slr" uRI="http://www.pi4soa.org/ReqRespFault/Seller"/>
+    <informationTypes description="This is the information type CreditInformation" name="CreditInformation" elementName="CreditCheckRequest"/>
+    <informationTypes description="This is the information type CreditInvalid" name="CreditInvalid" elementName="CreditCheckInvalid"/>
+    <informationTypes description="This is the information type CreditValid" name="CreditValid" elementName="CreditCheckOk"/>
+    <informationTypes description="This is the information type URIType" name="URIType"/>
+    <tokens description="This is the token URI" name="URI" informationType="//@typeDefinitions/@informationTypes.3"/>
+    <roleTypes description="This is the role type Buyer" name="Buyer">
+      <behaviors description="This is the behavior BuyerBehavior" name="BuyerBehavior"/>
+    </roleTypes>
+    <roleTypes description="This is the role type Seller" name="Seller">
+      <behaviors description="This is the behavior SellerBehavior" name="SellerBehavior"/>
+    </roleTypes>
+    <relationshipTypes description="Relationship between Buyer and Seller" name="BuyerToSellerRel" firstRoleType="//@typeDefinitions/@roleTypes.0" secondRoleType="//@typeDefinitions/@roleTypes.1"/>
+    <participantTypes description="This is the participant type byr:Buyer" name="byr:Buyer" roleTypes="//@typeDefinitions/@roleTypes.0">
+      <semanticAnnotations annotation="overlord.cdl.samples.LoanBroker at Buyer" name="conversationType"/>
+    </participantTypes>
+    <participantTypes description="This is the participant type slr:Seller" name="slr:Seller" roleTypes="//@typeDefinitions/@roleTypes.1">
+      <semanticAnnotations annotation="overlord.cdl.samples.LoanBroker at Broker" name="conversationType"/>
+    </participantTypes>
+    <channelTypes description="This is the channel type SellerChannelType" name="SellerChannelType" referenceToken="//@typeDefinitions/@tokens.0" roleType="//@typeDefinitions/@roleTypes.1"/>
+  </typeDefinitions>
+  <choreographies description="Choreography flow for the ReqRespFault process" name="ReqRespFaultProcess" root="true">
+    <variableDefinitions description="Channel to facilitate interaction to Broker" name="BrokerChannel" type="//@typeDefinitions/@channelTypes.0" roleTypes="//@typeDefinitions/@roleTypes.1 //@typeDefinitions/@roleTypes.0"/>
+    <activities xsi:type="org.pi4soa.cdl:Interaction" name="CreditCheck" operation="checkCredit" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.0">
+      <exchangeDetails description="This is the exchange details for the request exchange associated with interaction CreditCheck" name="CreditCheckRequestExchange" type="//@typeDefinitions/@informationTypes.0"/>
+    </activities>
+    <activities xsi:type="org.pi4soa.cdl:Choice">
+      <activities xsi:type="org.pi4soa.cdl:Sequence">
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="CreditCheckValid" operation="checkCredit" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.0">
+          <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CreditCheckValid" name="CreditCheckValidRespondExchange" type="//@typeDefinitions/@informationTypes.2" action="Respond"/>
+        </activities>
+      </activities>
+      <activities xsi:type="org.pi4soa.cdl:Sequence">
+        <activities xsi:type="org.pi4soa.cdl:Interaction" name="CreditCheckInvalid" operation="checkCredit" channelVariable="//@choreographies.0/@variableDefinitions.0" relationship="//@typeDefinitions/@relationshipTypes.0">
+          <exchangeDetails description="This is the exchange details for the respond exchange associated with interaction CreditCheckInvalid" name="CreditCheckInvalidRespondExchange" type="//@typeDefinitions/@informationTypes.1" action="Respond" faultName="insufficientCredit"/>
+        </activities>
+      </activities>
+    </activities>
+  </choreographies>
+</org.pi4soa.cdl:Package>

Modified: branches/experimental/2.0.x/bundles/org.savara.core/META-INF/MANIFEST.MF
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.core/META-INF/MANIFEST.MF	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/bundles/org.savara.core/META-INF/MANIFEST.MF	2011-01-01 12:58:19 UTC (rev 518)
@@ -1,14 +1,16 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: SAVARA Core
-Bundle-SymbolicName: org.savara.core
-Bundle-Version: 1.2.0.qualifier
+Bundle-SymbolicName: org.savara.core;singleton:=true
+Bundle-Version: 2.0.0.SNAPSHOT
 Bundle-Activator: org.savara.core.osgi.Activator
 Bundle-Vendor: www.savara.org
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Import-Package: org.osgi.framework;version="1.3.0",
- org.scribble.protocol.model
-Require-Bundle: org.scribble.common
+Import-Package: org.osgi.framework;version="1.3.0"
+Require-Bundle: org.scribble.common,
+ org.scribble.protocol,
+ org.scribble.protocol.monitor
 Export-Package: org.savara.model.change,
  org.savara.model.generator,
  org.savara.util
+Bundle-ActivationPolicy: lazy

Modified: branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/core/osgi/Activator.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/core/osgi/Activator.java	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/core/osgi/Activator.java	2011-01-01 12:58:19 UTC (rev 518)
@@ -2,6 +2,9 @@
 
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceReference;
+import org.scribble.protocol.parser.ProtocolParserManager;
+import org.scribble.protocol.projection.ProtocolProjector;
 
 public class Activator implements BundleActivator {
 
@@ -17,6 +20,20 @@
 	 */
 	public void start(BundleContext bundleContext) throws Exception {
 		Activator.context = bundleContext;
+		
+		// Initialize the protocol parser manager
+		ServiceReference sref=context.getServiceReference(ProtocolParserManager.class.getName());
+		
+		ProtocolParserManager ppm=(ProtocolParserManager)context.getService(sref);
+		
+		org.savara.util.ScribbleServices.setParserManager(ppm);
+		
+		// Initialize the protocol projector
+		sref=context.getServiceReference(ProtocolProjector.class.getName());
+		
+		ProtocolProjector pp=(ProtocolProjector)context.getService(sref);
+		
+		org.savara.util.ScribbleServices.setProtocolProjector(pp);
 	}
 
 	/*

Added: branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/util/ScribbleServices.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/util/ScribbleServices.java	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.core/src/main/java/org/savara/util/ScribbleServices.java	2011-01-01 12:58:19 UTC (rev 518)
@@ -0,0 +1,78 @@
+/*
+ * Copyright 2009 www.scribble.org
+ * Licensed 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.savara.util;
+
+import org.scribble.protocol.export.ProtocolExportManager;
+import org.scribble.protocol.parser.ProtocolParserManager;
+import org.scribble.protocol.projection.ProtocolProjector;
+import org.scribble.protocol.validation.ProtocolValidationManager;
+//import org.scribble.protocol.monitor.ProtocolMonitor;
+
+/**
+ * This class provides a manager for accessing services used
+ * by the designer.
+ *
+ */
+public class ScribbleServices {
+	
+	private static ProtocolValidationManager m_validationManager=null;
+	private static ProtocolParserManager m_parserManager=null;
+	private static ProtocolProjector m_protocolProjector=null;
+	//private static ProtocolMonitor m_protocolMonitor=null;
+	private static ProtocolExportManager m_protocolExportManager=null;
+
+	public static ProtocolValidationManager getValidationManager() {
+		return(m_validationManager);
+	}
+	
+	public static void setValidationManager(ProtocolValidationManager vm) {
+		m_validationManager = vm;
+	}
+	
+	public static ProtocolParserManager getParserManager() {
+		return(m_parserManager);
+	}
+	
+	public static void setParserManager(ProtocolParserManager pm) {
+		m_parserManager = pm;
+	}
+	
+	/*
+	public static ProtocolMonitor getProtocolMonitor() {
+		return(m_protocolMonitor);
+	}
+	
+	public static void setProtocolMonitor(ProtocolMonitor parser) {
+		m_protocolMonitor = parser;
+	}
+	*/
+	
+	public static ProtocolProjector getProtocolProjector() {
+		return(m_protocolProjector);
+	}
+	
+	public static void setProtocolProjector(ProtocolProjector projector) {
+		m_protocolProjector = projector;
+	}	
+	
+	public static ProtocolExportManager getProtocolExportManager() {
+		return(m_protocolExportManager);
+	}
+	
+	public static void setProtocolExportManager(ProtocolExportManager pem) {
+		m_protocolExportManager = pem;
+	}	
+}
\ No newline at end of file

Modified: branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/META-INF/MANIFEST.MF
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/META-INF/MANIFEST.MF	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/META-INF/MANIFEST.MF	2011-01-01 12:58:19 UTC (rev 518)
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: SAVARA pi4soa CDM
 Bundle-SymbolicName: org.savara.pi4soa.cdm;singleton:=true
-Bundle-Version: 2.0.0.qualifier
+Bundle-Version: 2.0.0.SNAPSHOT
 Bundle-Activator: org.savara.pi4soa.cdm.osgi.Activator
 Bundle-Vendor: www.savara.org
 Service-Component: OSGI-INF/cdm-protocol-parser.xml
@@ -11,13 +11,9 @@
 Import-Package: org.osgi.framework;version="1.3.0"
 Require-Bundle: org.pi4soa.cdl,
  org.pi4soa.common,
- org.eclipse.ui;resolution:=optional,
- org.eclipse.core.resources;resolution:=optional,
- org.eclipse.core.runtime;resolution:=optional,
- org.pi4soa.designer;resolution:=optional,
- org.eclipse.ui.views.properties.tabbed;resolution:=optional,
  org.savara.contract.model,
  org.scribble.common,
  org.scribble.protocol,
  org.junit
-Export-Package: org.savara.pi4soa.cdm.parser
+Export-Package: org.savara.pi4soa.cdm,
+ org.savara.pi4soa.cdm.parser


Property changes on: branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel
___________________________________________________________________
Name: svn:ignore
   - bin

   + bin
.settings


Modified: branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/.classpath
===================================================================
--- branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/.classpath	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/.classpath	2011-01-01 12:58:19 UTC (rev 518)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src/java"/>
 	<classpathentry kind="output" path="bin"/>

Modified: branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/src/java/org/savara/tools/bpel/generator/Generator.java
===================================================================
--- branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/src/java/org/savara/tools/bpel/generator/Generator.java	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/tools/plugins/org.savara.tools.bpel/src/java/org/savara/tools/bpel/generator/Generator.java	2011-01-01 12:58:19 UTC (rev 518)
@@ -217,8 +217,6 @@
 		
 		CachedJournal journal=new CachedJournal();
 		
-		System.out.println("PROJECTOR="+ScribbleServices.getProtocolProjector());
-		
 		ProtocolModel local=ScribbleServices.getProtocolProjector().project(m_protocolModel,
 								localRole, journal);
 		

Modified: branches/experimental/2.0.x/tools/tests/pom.xml
===================================================================
--- branches/experimental/2.0.x/tools/tests/pom.xml	2010-12-31 19:22:39 UTC (rev 517)
+++ branches/experimental/2.0.x/tools/tests/pom.xml	2011-01-01 12:58:19 UTC (rev 518)
@@ -16,7 +16,6 @@
 
 	<modules>
 		<module>org.savara.protocol.contract.tests</module>
-		<!-- module>org.savara.tools.bpel.tests</module -->
 	</modules>
 	
 </project>



More information about the savara-commits mailing list