[overlord-commits] Overlord SVN: r584 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src: java/org/jboss/tools/overlord/cdl/bpel/model/component and 7 other directories.

overlord-commits at lists.jboss.org overlord-commits at lists.jboss.org
Sun Apr 12 16:18:01 EDT 2009


Author: objectiser
Date: 2009-04-12 16:18:00 -0400 (Sun, 12 Apr 2009)
New Revision: 584

Added:
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Store.bpel
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Store.scv
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/util/
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/util/XMLUtilsTest.java
Removed:
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Broker.bpel
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Broker.scv
Modified:
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationInteractionModelChangeRule.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationModelChangeRule.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcess.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLink.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/util/XMLUtils.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/GeneratorTest.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/ESBBrokerProcess at Broker.bpel
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcessTest.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLinkTest.java
Log:
Updated generation of conversation model to include scopes, and interactions to deal with port types and partner links.

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationInteractionModelChangeRule.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationInteractionModelChangeRule.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationInteractionModelChangeRule.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -90,7 +90,15 @@
 		ConversationInteraction interaction=(ConversationInteraction)mobj;
 		boolean ret=false;
 		AbstractInteraction act=null;
+		PartnerLink pl=new PartnerLink(bpelModel);
+		Role role=null;
+		String portType=null;
 		
+		if (interaction.getEnclosingDefinition() != null) {
+			role = interaction.getEnclosingDefinition().
+						getModelName().getLocatedRole();
+		}
+
 		// Check if send or receive
 		if (InteractionUtil.isSend(interaction)) {
 			
@@ -101,11 +109,12 @@
 			if (InteractionUtil.isRequest(interaction)) {
 				act = new Invoke(bpelModel);
 				
-				if (context.getParent() instanceof Sequence) {
-					((Sequence)context.getParent()).addActivity(act, -1);
-					
-					ret = true;
-				}
+				//pl.setMyRole(role.getName());
+				pl.setPartnerRole(interaction.getToRole().getName()+"Requester");
+				pl.setName(role.getName()+"To"+interaction.getToRole().getName());
+				pl.setPartnerLinkType(role.getName()+"To"+interaction.getToRole().getName()+"LT");
+
+				portType = interaction.getToRole().getName()+"PT";
 				
 				// TODO: Need to deal with subsequent responses
 				// which could be in a following choice - with each
@@ -116,26 +125,70 @@
 			} else {
 				act = new Reply(bpelModel);
 		
-				if (context.getParent() instanceof Sequence) {
-					((Sequence)context.getParent()).addActivity(act, -1);
-					
-					ret = true;
-				}
+				pl.setMyRole(role.getName()+"Service");
+				//pl.setPartnerRole(interaction.getToRole().getName());
+				pl.setName(interaction.getToRole().getName()+"To"+role.getName());
+				pl.setPartnerLinkType(interaction.getToRole().getName()+"To"+role.getName()+"Service"+"LT");
+
+				portType = role.getName()+"PT";
 			}
 		} else {
+			act = new Receive(bpelModel);
+
 			if (InteractionUtil.isRequest(interaction)) {
-				act = new Receive(bpelModel);
 	
-				if (context.getParent() instanceof Sequence) {
-					((Sequence)context.getParent()).addActivity(act, -1);
-					
-					ret = true;
-				}	
+				pl.setMyRole(role.getName()+"Service");
+				//pl.setPartnerRole(interaction.getToRole().getName());
+				pl.setName(interaction.getFromRole().getName()+"To"+role.getName());
+				pl.setPartnerLinkType(interaction.getFromRole().getName()+"To"+role.getName()+"Service"+"LT");
+
+				portType = role.getName()+"PT";
+			} else {
+				pl.setMyRole(role.getName()+"Requester");
+				pl.setPartnerRole(interaction.getFromRole().getName()+"Service");
+				pl.setName(role.getName()+"To"+interaction.getFromRole().getName());
+				pl.setPartnerLinkType(role.getName()+"To"+interaction.getFromRole().getName()+"Requester"+"LT");
+
+				portType = role.getName()+
+						interaction.getFromRole().getName()+"CallbackPT";				
 			}
 		}
+		
+		// TODO: Possibly if the channel is set, then
+		// might be a callback channel, so could use
+		// channel name to reflect callback port
 
-		if (act != null && interaction.getMessageSignature() != null) {
-			act.setOperation(interaction.getMessageSignature().getOperation());
+		// TODO: If both myRole and partnerRole are specified
+		// then one is a callback porttype
+		
+		if (act != null) {
+			if (context.getParent() instanceof Sequence) {
+				((Sequence)context.getParent()).addActivity(act, -1);
+				
+				ret = true;
+			}	
+
+			PartnerLink other=
+					bpelModel.getBPELProcess().getPartnerLink(pl.getName());
+			if (other == null) {
+				bpelModel.getBPELProcess().addPartnerLink(pl, -1);
+			} else {
+				if (other.getPartnerRole() == null &&
+						pl.getPartnerRole() != null) {
+					other.setPartnerRole(pl.getPartnerRole());
+				}
+				if (other.getMyRole() == null &&
+						pl.getMyRole() != null) {
+					other.setMyRole(pl.getMyRole());
+				}
+			}
+			
+			act.setPartnerLink(pl.getName());
+			act.setPortType(portType);
+	
+			if (interaction.getMessageSignature() != null) {
+				act.setOperation(interaction.getMessageSignature().getOperation());
+			}
 		}
 		
 		return(ret);

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationModelChangeRule.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationModelChangeRule.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/change/ConversationModelChangeRule.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -99,7 +99,18 @@
 			
 		} else if (context.getParent() instanceof Sequence) {
 			
-			((Sequence)context.getParent()).addActivity(seq, -1);
+			// Create a scope
+			Scope scope=new Scope(bpelModel);
+
+			((Sequence)context.getParent()).addActivity(scope, -1);
+			
+			// NOTE: Currently needs to be added after adding scope
+			// to parent sequence, as otherwise the DOM element
+			// associated with the 'seq' sequence becomes
+			// disconnected from the actual document - due to
+			// the fact that added elements are copied (in
+			// turn due to an xml parser exception).
+			scope.setActivity(seq);
 		}
 
 		// Process the activities within the conversation
@@ -120,5 +131,4 @@
 		
 		return(true);
 	}
-	
 }

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcess.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcess.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcess.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -186,6 +186,25 @@
 	}
 	
 	/**
+	 * This method returns the partner link associated
+	 * with the supplied name.
+	 * 
+	 * @param name The name
+	 * @return The partner link, or null if not found
+	 */
+	public PartnerLink getPartnerLink(String name) {
+		PartnerLink ret=null;
+		
+		for (int i=0; ret == null && i < m_partnerLinks.size(); i++) {
+			if (m_partnerLinks.get(i).getName().equals(name)) {
+				ret = m_partnerLinks.get(i);
+			}
+		}
+		
+		return(ret);
+	}
+	
+	/**
 	 * This method adds a variable to the scope.
 	 * 
 	 * @param var The variable to be added

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLink.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLink.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLink.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -72,7 +72,8 @@
 	 * @return The name
 	 */
 	public String getName() {
-		return(getDOMElement().getAttribute(NAME));
+		return(getDOMElement().hasAttribute(NAME)?
+				getDOMElement().getAttribute(NAME):null);
 	}
 
 	/**
@@ -90,7 +91,8 @@
 	 * @return The partner link type
 	 */
 	public String getPartnerLinkType() {
-		return(getDOMElement().getAttribute(PARTNER_LINK_TYPE));
+		return(getDOMElement().hasAttribute(PARTNER_LINK_TYPE)?
+				getDOMElement().getAttribute(PARTNER_LINK_TYPE):null);
 	}
 
 	/**
@@ -108,7 +110,8 @@
 	 * @return My role
 	 */
 	public String getMyRole() {
-		return(getDOMElement().getAttribute(MY_ROLE));
+		return(getDOMElement().hasAttribute(MY_ROLE)?
+				getDOMElement().getAttribute(MY_ROLE):null);
 	}
 
 	/**
@@ -126,7 +129,8 @@
 	 * @return Partner role
 	 */
 	public String getPartnerRole() {
-		return(getDOMElement().getAttribute(PARTNER_ROLE));
+		return(getDOMElement().hasAttribute(PARTNER_ROLE)?
+				getDOMElement().getAttribute(PARTNER_ROLE):null);
 	}
 
 	@Override

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/util/XMLUtils.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/util/XMLUtils.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/util/XMLUtils.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -43,8 +43,8 @@
 		try {
 			// Transform the DOM represent to text
 			ByteArrayOutputStream xmlstr= new ByteArrayOutputStream();
-			DOMSource source=new DOMSource();
-			source.setNode(node);
+			DOMSource source=new DOMSource(node);
+			//source.setNode(node);
 			
 			StreamResult result=new StreamResult(xmlstr);			
 			Transformer trans= TransformerFactory.newInstance().newTransformer();

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/GeneratorTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/GeneratorTest.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/GeneratorTest.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -34,7 +34,7 @@
     public static TestSuite suite() {
         TestSuite suite = new TestSuite("Conversation->BPEL Generator Tests");       
         suite.addTest(new ConversationToBPELTest("ESBBrokerProcess at Broker"));
-        suite.addTest(new ConversationToBPELTest("PurchaseGoodsProcess at Broker"));
+        suite.addTest(new ConversationToBPELTest("PurchaseGoodsProcess at Store"));
         return suite;
     }
     

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/ESBBrokerProcess at Broker.bpel
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/ESBBrokerProcess at Broker.bpel	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/ESBBrokerProcess at Broker.bpel	2009-04-12 20:18:00 UTC (rev 584)
@@ -1,35 +1,49 @@
 <process xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <partnerLinks>
+        <partnerLink myRole="BrokerService" name="BuyerToBroker" partnerLinkType="BuyerToBrokerServiceLT"/>
+        <partnerLink myRole="BrokerRequester" name="BrokerToSupplierQuoteEngine" partnerLinkType="BrokerToSupplierQuoteEngineLT" partnerRole="SupplierQuoteEngineRequester"/>
+        <partnerLink myRole="BrokerRequester" name="BrokerToCreditAgency" partnerLinkType="BrokerToCreditAgencyLT" partnerRole="CreditAgencyRequester"/>
+        <partnerLink myRole="BrokerRequester" name="BrokerToSupplierTxnProcessor" partnerLinkType="BrokerToSupplierTxnProcessorLT" partnerRole="SupplierTxnProcessorRequester"/>
+    </partnerLinks>
     <sequence>
-        <receive operation="makeEnquiry"/>
+        <receive operation="makeEnquiry" partnerLink="BuyerToBroker" portType="BrokerPT"/>
         <while>
             <sequence>
-                <sequence>
-                    <invoke operation="getQuote"/>
-                </sequence>
+                <scope>
+                    <sequence>
+                        <invoke operation="getQuote" partnerLink="BrokerToSupplierQuoteEngine" portType="SupplierQuoteEnginePT"/>
+                        <receive operation="getQuote" partnerLink="BrokerToSupplierQuoteEngine" portType="BrokerSupplierQuoteEngineCallbackPT"/>
+                    </sequence>
+                </scope>
             </sequence>
         </while>
-        <reply operation="makeEnquiry"/>
+        <reply operation="makeEnquiry" partnerLink="BuyerToBroker" portType="BrokerPT"/>
         <if>
             <sequence>
-                <sequence>
-                    <receive operation="buy"/>
-                    <invoke operation="checkCredit"/>
-                    <if>
-                        <sequence>
-                            <invoke operation="confirm"/>
-                            <reply operation="buy"/>
-                        </sequence>
-                        <else>
+                <scope>
+                    <sequence>
+                        <receive operation="buy" partnerLink="BuyerToBroker" portType="BrokerPT"/>
+                        <invoke operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="CreditAgencyPT"/>
+                        <if>
                             <sequence>
-                                <reply operation="buy"/>
+                                <receive operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="BrokerCreditAgencyCallbackPT"/>
+                                <invoke operation="confirm" partnerLink="BrokerToSupplierTxnProcessor" portType="SupplierTxnProcessorPT"/>
+                                <receive operation="confirm" partnerLink="BrokerToSupplierTxnProcessor" portType="BrokerSupplierTxnProcessorCallbackPT"/>
+                                <reply operation="buy" partnerLink="BuyerToBroker" portType="BrokerPT"/>
                             </sequence>
-                        </else>
-                    </if>
-                </sequence>
+                            <else>
+                                <sequence>
+                                    <receive operation="checkCredit" partnerLink="BrokerToCreditAgency" portType="BrokerCreditAgencyCallbackPT"/>
+                                    <reply operation="buy" partnerLink="BuyerToBroker" portType="BrokerPT"/>
+                                </sequence>
+                            </else>
+                        </if>
+                    </sequence>
+                </scope>
             </sequence>
             <else>
                 <sequence>
-                    <receive operation="cancel"/>
+                    <receive operation="cancel" partnerLink="BuyerToBroker" portType="BrokerPT"/>
                 </sequence>
             </else>
         </if>

Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Broker.bpel
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Broker.bpel	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Broker.bpel	2009-04-12 20:18:00 UTC (rev 584)
@@ -1,18 +0,0 @@
-<process xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
-    <sequence>
-        <invoke operation="buy"/>
-        <invoke operation="checkCredit"/>
-        <if>
-            <sequence>
-                <reply operation="checkCredit"/>
-                <reply operation="buy"/>
-            </sequence>
-            <else>
-                <sequence>
-                    <reply operation="checkCredit"/>
-                    <reply operation="buy"/>
-                </sequence>
-            </else>
-        </if>
-    </sequence>
-</process>

Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Store.bpel (from rev 562, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Broker.bpel)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Store.bpel	                        (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/results/PurchaseGoodsProcess at Store.bpel	2009-04-12 20:18:00 UTC (rev 584)
@@ -0,0 +1,22 @@
+<process xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
+    <partnerLinks>
+        <partnerLink myRole="StoreService" name="BuyerToStore" partnerLinkType="BuyerToStoreServiceLT"/>
+        <partnerLink myRole="StoreRequester" name="StoreToCreditAgency" partnerLinkType="StoreToCreditAgencyLT" partnerRole="CreditAgencyRequester"/>
+    </partnerLinks>
+    <sequence>
+        <receive operation="buy" partnerLink="BuyerToStore" portType="StorePT"/>
+        <invoke operation="checkCredit" partnerLink="StoreToCreditAgency" portType="CreditAgencyPT"/>
+        <if>
+            <sequence>
+                <receive operation="checkCredit" partnerLink="StoreToCreditAgency" portType="StoreCreditAgencyCallbackPT"/>
+                <reply operation="buy" partnerLink="BuyerToStore" portType="StorePT"/>
+            </sequence>
+            <else>
+                <sequence>
+                    <receive operation="checkCredit" partnerLink="StoreToCreditAgency" portType="StoreCreditAgencyCallbackPT"/>
+                    <reply operation="buy" partnerLink="BuyerToStore" portType="StorePT"/>
+                </sequence>
+            </else>
+        </if>
+    </sequence>
+</process>

Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Broker.scv
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Broker.scv	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Broker.scv	2009-04-12 20:18:00 UTC (rev 584)
@@ -1,15 +0,0 @@
-namespace org.pi4soa.purchase.purchasegoods;
-
-conversation PurchaseGoodsProcess at Broker conforms to Purchasing at Buyer, Purchasing at Store, Common at CreditAgency {
-	role	Buyer, Store, CreditAgency;
-	BuyRequest	buy;
-	buy(BuyRequest) from Buyer to Store request "buy";
-	checkCredit(CreditCheckRequest) from Store to CreditAgency request "checkCredit";
-	if @ CreditAgency {
-		checkCredit(CreditCheckOk) from CreditAgency to Store replyTo "checkCredit";
-		buy(BuyConfirmed) from Store to Buyer replyTo "buy";
-	} else if {
-		checkCredit(CreditCheckInvalid) from CreditAgency to Store replyTo "checkCredit";
-		buy(BuyFailed) from Store to Buyer replyTo "buy";
-	}
-}
\ No newline at end of file

Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Store.scv (from rev 560, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Broker.scv)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Store.scv	                        (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/plugintest/org/jboss/tools/overlord/cdl/bpel/generator/testmodels/PurchaseGoodsProcess at Store.scv	2009-04-12 20:18:00 UTC (rev 584)
@@ -0,0 +1,16 @@
+namespace org.pi4soa.purchase.purchasegoods;
+
+conversation PurchaseGoodsProcess at Store {
+	role	Buyer, Store, CreditAgency;
+	BuyRequest	buy;
+	
+	buy(BuyRequest) from Buyer to Store request "buy";
+	checkCredit(CreditCheckRequest) from Store to CreditAgency request "checkCredit";
+	if @ CreditAgency {
+		checkCredit(CreditCheckOk) from CreditAgency to Store replyTo "checkCredit";
+		buy(BuyConfirmed) from Store to Buyer replyTo "buy";
+	} else if {
+		checkCredit(CreditCheckInvalid) from CreditAgency to Store replyTo "checkCredit";
+		buy(BuyFailed) from Store to Buyer replyTo "buy";
+	}
+}
\ No newline at end of file

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcessTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcessTest.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/BPELProcessTest.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -195,6 +195,26 @@
 		}
 	}	
 	
+	public void testGetPartnerLink() {
+		BPELLanguageModel model=new DefaultBPELLanguageModel(null);
+
+		BPELProcess component=new BPELProcess(model);
+		String name="testName";
+		
+		PartnerLink pl=new PartnerLink(model);
+		pl.setName(name);
+		
+		component.addPartnerLink(pl, 0);
+		
+		if (component.getPartnerLink(name) == null) {
+			fail("Failed to get partner link for '"+name+"'");
+		}
+		
+		if (component.getPartnerLink("unknown") != null) {
+			fail("Should not have returned a partner link");
+		}
+	}	
+
 	public void testSetEventHandlers() {
 		BPELLanguageModel model=new DefaultBPELLanguageModel(null);
 

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLinkTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLinkTest.java	2009-04-12 11:50:52 UTC (rev 583)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/PartnerLinkTest.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -98,6 +98,10 @@
 		
 		PartnerLink component=new PartnerLink(model);		
 		
+		if (component.getName() != null) {
+			fail("Name should be null");
+		}
+		
 		component.setName(name);
 		
 		if (component.getName().equals(name) == false) {
@@ -111,8 +115,12 @@
 
 		String plt="testPartnerLinkType";
 		
-		PartnerLink component=new PartnerLink(model);		
+		PartnerLink component=new PartnerLink(model);	
 		
+		if (component.getPartnerLinkType() != null) {
+			fail("Partner link type should be null");
+		}
+		
 		component.setPartnerLinkType(plt);
 		
 		if (component.getPartnerLinkType().equals(plt) == false) {
@@ -126,8 +134,12 @@
 
 		String mr="testMyRole";
 		
-		PartnerLink component=new PartnerLink(model);		
+		PartnerLink component=new PartnerLink(model);
 		
+		if (component.getMyRole() != null) {
+			fail("My role is not null");
+		}
+		
 		component.setMyRole(mr);
 		
 		if (component.getMyRole().equals(mr) == false) {
@@ -141,8 +153,12 @@
 
 		String pr="testPartnerRole";
 		
-		PartnerLink component=new PartnerLink(model);		
+		PartnerLink component=new PartnerLink(model);	
 		
+		if (component.getPartnerRole() != null) {
+			fail("Partner role should be null");
+		}
+		
 		component.setPartnerRole(pr);
 		
 		if (component.getPartnerRole().equals(pr) == false) {

Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/util/XMLUtilsTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/util/XMLUtilsTest.java	                        (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/util/XMLUtilsTest.java	2009-04-12 20:18:00 UTC (rev 584)
@@ -0,0 +1,52 @@
+/*
+ * 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.jboss.tools.overlord.cdl.bpel.util;
+
+import junit.framework.TestCase;
+
+public class XMLUtilsTest extends TestCase {
+
+	public void testNamespace() {
+		String namespace="http://namespace";
+		String elemName="testElement";
+
+		String expected="<"+elemName+" xmlns=\""+namespace+"\"/>\r\n";
+		
+		try {
+			javax.xml.parsers.DocumentBuilderFactory factory=
+				javax.xml.parsers.DocumentBuilderFactory.
+							newInstance();
+			factory.setNamespaceAware(true);
+			
+			org.w3c.dom.Document doc=
+					factory.newDocumentBuilder().newDocument();
+
+			org.w3c.dom.Element elem=
+					doc.createElementNS(namespace, elemName);
+			
+			String str=XMLUtils.toText(elem);
+			
+			if (str.equals(expected) == false) {
+				fail("Expected result '"+expected+"', got: '"+str+"'");
+			}
+			
+		} catch(Exception e) {
+			fail("Failed: "+e);
+		}
+	}
+}




More information about the overlord-commits mailing list