[overlord-commits] Overlord SVN: r573 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src: test/org/jboss/tools/overlord/cdl/bpel/model/component and 1 other directory.

overlord-commits at lists.jboss.org overlord-commits at lists.jboss.org
Sat Apr 4 08:13:21 EDT 2009


Author: objectiser
Date: 2009-04-04 08:13:21 -0400 (Sat, 04 Apr 2009)
New Revision: 573

Modified:
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntil.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/While.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntilTest.java
   cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/WhileTest.java
Log:
Update to cope with additional 'standard elements' in BPEL activities.

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntil.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntil.java	2009-04-03 22:50:19 UTC (rev 572)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntil.java	2009-04-04 12:13:21 UTC (rev 573)
@@ -121,8 +121,14 @@
 			existingElem = existing.getDOMElement();
 		}
 
+		org.w3c.dom.Element insertBefore=null;
+		
+		if (m_condition != null) {
+			insertBefore = m_condition.getDOMElement();
+		}
+		
 		setChildElement(existingElem, act.getDOMElement(),
-				getDOMElement().getFirstChild());
+				insertBefore);
 	}
 
 	/**

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/While.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/While.java	2009-04-03 22:50:19 UTC (rev 572)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/java/org/jboss/tools/overlord/cdl/bpel/model/component/While.java	2009-04-04 12:13:21 UTC (rev 573)
@@ -93,8 +93,14 @@
 	public void setCondition(Condition cond) {
 		m_condition = cond;
 		
+		org.w3c.dom.Element insertBefore=null;
+		
+		if (m_activity != null) {
+			insertBefore = m_activity.getDOMElement();
+		}
+
 		setChildElement(findChildElement(Condition.CONDITION),
-				cond.getDOMElement(), getDOMElement().getFirstChild());
+				cond.getDOMElement(), insertBefore);
 	}
 	
 	/**

Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntilTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntilTest.java	2009-04-03 22:50:19 UTC (rev 572)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/RepeatUntilTest.java	2009-04-04 12:13:21 UTC (rev 573)
@@ -89,6 +89,69 @@
 		}
 	}
 	
+	public void testSetActivityInitFromDOM() {
+		BPELLanguageModel model=new DefaultBPELLanguageModel(null);
+
+		String expr1="Test Expression 1";
+		
+		String xml="<repeatUntil xmlns=\"http://docs.oasis-open.org/wsbpel/2.0/process/executable\">"+
+				"<targets/>"+
+				"<condition>"+expr1+"</condition>"+
+		       "</repeatUntil>";
+		
+		org.w3c.dom.Element elem=null;
+		
+		try {
+			javax.xml.parsers.DocumentBuilderFactory factory=
+				javax.xml.parsers.DocumentBuilderFactory.newInstance();
+			
+			factory.setNamespaceAware(true);
+			
+			javax.xml.parsers.DocumentBuilder builder=
+						factory.newDocumentBuilder();
+			
+			java.io.InputStream is=new java.io.ByteArrayInputStream(xml.getBytes());
+			
+			org.w3c.dom.Document doc=builder.parse(is);
+			elem = doc.getDocumentElement();
+			
+			is.close();
+		} catch(Exception e) {
+			fail("Failed to convert to doc");
+		}
+		
+		RepeatUntil component=new RepeatUntil(model, elem);		
+		
+		if (component.getCondition() == null) {
+			fail("Condition not set");
+		}
+
+		if (component.getActivity() != null) {
+			fail("Activity should be null");
+		}
+
+		if (component.getDOMElement().getChildNodes().getLength() != 2) {
+			fail("Two child elements expected: "+
+					component.getDOMElement().getChildNodes().getLength());
+		}
+		
+		If sub=new If(model);
+		
+		component.setActivity(sub);
+		
+		if (component.getDOMElement().getChildNodes().getLength() != 3) {
+			fail("Three child elements expected: "+
+					component.getDOMElement().getChildNodes().getLength());
+		}
+		
+		if (component.getDOMElement().getChildNodes().item(1).
+				getLocalName().equals(If.IF) == false) {
+			fail("Second element was not an 'if': "+
+					component.getDOMElement().getChildNodes().item(1).
+									getLocalName());
+		}
+	}
+	
 	public void testSetConditionNew() {
 		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/WhileTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/WhileTest.java	2009-04-03 22:50:19 UTC (rev 572)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.bpel/src/test/org/jboss/tools/overlord/cdl/bpel/model/component/WhileTest.java	2009-04-04 12:13:21 UTC (rev 573)
@@ -89,6 +89,67 @@
 		}
 	}
 	
+	public void testSetConditionInitFromDOM() {
+		BPELLanguageModel model=new DefaultBPELLanguageModel(null);
+
+		String expr1="Test Expression 1";
+		
+		String xml="<while xmlns=\"http://docs.oasis-open.org/wsbpel/2.0/process/executable\">"+
+			   "<targets/>"+
+		       "<sequence/>"+
+		       "</while>";
+		
+		org.w3c.dom.Element elem=null;
+		
+		try {
+			javax.xml.parsers.DocumentBuilderFactory factory=
+				javax.xml.parsers.DocumentBuilderFactory.newInstance();
+			
+			factory.setNamespaceAware(true);
+			
+			javax.xml.parsers.DocumentBuilder builder=
+						factory.newDocumentBuilder();
+			
+			java.io.InputStream is=new java.io.ByteArrayInputStream(xml.getBytes());
+			
+			org.w3c.dom.Document doc=builder.parse(is);
+			elem = doc.getDocumentElement();
+			
+			is.close();
+		} catch(Exception e) {
+			fail("Failed to convert to doc");
+		}
+		
+		While component=new While(model, elem);		
+		
+		if (component.getActivity() == null) {
+			fail("Activity should be set");
+		}
+		
+		if (component.getDOMElement().getChildNodes().getLength() != 2) {
+			fail("Two child elements expected: "+
+					component.getDOMElement().getChildNodes().getLength());
+		}
+
+		Condition cond=new Condition(model);
+		
+		cond.setExpression(expr1);
+		
+		component.setCondition(cond);
+		
+		if (component.getDOMElement().getChildNodes().getLength() != 3) {
+			fail("Three child elements expected: "+
+					component.getDOMElement().getChildNodes().getLength());
+		}
+		
+		if (component.getDOMElement().getChildNodes().item(1).
+				getLocalName().equals(Condition.CONDITION) == false) {
+			fail("Second element was not a 'condition': "+
+					component.getDOMElement().getChildNodes().item(1).
+									getLocalName());
+		}
+	}
+	
 	public void testSetConditionNew() {
 		BPELLanguageModel model=new DefaultBPELLanguageModel(null);
 




More information about the overlord-commits mailing list