[jboss-svn-commits] JBL Code SVN: r38386 - in labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src: test/java/org/jboss/soa/esb/services/soapui/orderprocessing and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Jul 24 13:00:40 EDT 2013


Author: tcunning
Date: 2013-07-24 13:00:39 -0400 (Wed, 24 Jul 2013)
New Revision: 38386

Modified:
   labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
   labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02.xml
   labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02_JBESB-1329.xml
Log:
JBESB-3942
When elements are removed from the template, the accompanying cloned comments were not being removed.     Make sure when removing an element to remove associated comments.


Modified: labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java	2013-07-18 14:39:18 UTC (rev 38385)
+++ labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java	2013-07-24 17:00:39 UTC (rev 38386)
@@ -771,6 +771,8 @@
                 if(collectionSize == -1) {
                     // It's a collection, but has no entries that match the OGNL expression for this element...
                     if(clonePoint == element) {
+                        //First we need to remove siblings
+                        removeSiblings(clonePoint);
                         // If the clonePoint is the element itself, we remove it... we're done with it...
                         clonePoint.getParentNode().removeChild(clonePoint);
                         elementRemoved = true;
@@ -780,6 +782,8 @@
                         resetClonePoint(clonePoint);
                     }
                 } else if(collectionSize == 0) {
+                    // First we need to remove siblings
+                    removeSiblings(clonePoint);
                     // It's a collection, but has no entries, remove it...
                     clonePoint.getParentNode().removeChild(clonePoint);
                     elementRemoved = true;
@@ -799,6 +803,25 @@
         }
     }
 
+    private void removeSiblings(Element element) {
+        Node sibling = element.getPreviousSibling();
+
+        while(sibling != null) {
+            if(sibling.getNodeType() == Node.COMMENT_NODE) {
+                element.getParentNode().removeChild(sibling);
+                break;
+            } else if(sibling.getNodeType() == Node.TEXT_NODE) {
+                // continue...                       
+                sibling = sibling.getPreviousSibling();
+                element.getParentNode().removeChild(sibling.getNextSibling());
+            } else {
+                // It's an Element, CData, PI etc
+                break;
+            }
+        }
+
+    }
+    
     private void expandChildren(Element element, Map params) {
         List<Node> children = YADOMUtil.copyNodeList(element.getChildNodes());
         for (Node node : children) {

Modified: labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02.xml	2013-07-18 14:39:18 UTC (rev 38385)
+++ labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02.xml	2013-07-24 17:00:39 UTC (rev 38386)
@@ -4,13 +4,12 @@
       <end:processOrder>
          <!--Optional:-->
          <order>
+
             <!--Optional:-->
             <id>123</id>
-            <!--Zero or more repetitions: - cloned-->
-
             <!--Optional:-->
             <shipTo>Skeagh Bridge</shipTo>
          </order>
       </end:processOrder>
    </soapenv:Body>
-</soapenv:Envelope>
\ No newline at end of file
+</soapenv:Envelope>

Modified: labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02_JBESB-1329.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02_JBESB-1329.xml	2013-07-18 14:39:18 UTC (rev 38385)
+++ labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/orderprocessing/expected_02_JBESB-1329.xml	2013-07-24 17:00:39 UTC (rev 38386)
@@ -4,7 +4,6 @@
       <end:processOrder>
          <!--Optional:-->
          <order>
-            <!--Zero or more repetitions: - cloned-->
 
             <!--Optional:-->
             <id>123</id>
@@ -13,4 +12,4 @@
          </order>
       </end:processOrder>
    </soapenv:Body>
-</soapenv:Envelope>
\ No newline at end of file
+</soapenv:Envelope>



More information about the jboss-svn-commits mailing list