From scm-return-20937-apmail-geronimo-scm-archive=geronimo.apache.org@geronimo.apache.org Wed Aug 01 18:40:06 2007 Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 31703 invoked from network); 1 Aug 2007 18:40:03 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 1 Aug 2007 18:40:03 -0000 Received: (qmail 35123 invoked by uid 500); 1 Aug 2007 18:40:03 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 35082 invoked by uid 500); 1 Aug 2007 18:40:03 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 35064 invoked by uid 99); 1 Aug 2007 18:40:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 01 Aug 2007 11:40:02 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 01 Aug 2007 18:39:38 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 8CDB91A981A; Wed, 1 Aug 2007 11:39:39 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r561903 - in /geronimo/server/branches/2.0/modules: geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java geronimo-cxf/src/main/java/org/apache/geronimo/cxf/GeronimoQueryHandler.java Date: Wed, 01 Aug 2007 18:39:38 -0000 To: scm@geronimo.apache.org From: gawor@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20070801183939.8CDB91A981A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: gawor Date: Wed Aug 1 11:39:36 2007 New Revision: 561903 URL: http://svn.apache.org/viewvc?view=rev&rev=561903 Log: fixes for GERONIMO-3196 Modified: geronimo/server/branches/2.0/modules/geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java geronimo/server/branches/2.0/modules/geronimo-cxf/src/main/java/org/apache/geronimo/cxf/GeronimoQueryHandler.java Modified: geronimo/server/branches/2.0/modules/geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.0/modules/geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java?view=diff&rev=561903&r1=561902&r2=561903 ============================================================================== --- geronimo/server/branches/2.0/modules/geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java (original) +++ geronimo/server/branches/2.0/modules/geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java Wed Aug 1 11:39:36 2007 @@ -24,6 +24,7 @@ import java.net.URI; import java.net.URISyntaxException; import java.net.URL; +import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.List; @@ -96,9 +97,9 @@ reader.setFeature("javax.wsdl.importDocuments", true); reader.setFeature("javax.wsdl.verbose", false); Definition def = reader.readWSDL(wsdlUri); - mp.put("", def); updateDefinition(def, mp, smp, base); updateServices(this.service.getName(), this.service.getEndpointName(), def, base); + mp.put("", def); } Element rootElement; @@ -241,6 +242,8 @@ boolean updated = false; Map services = def.getServices(); if (services != null) { + ArrayList servicesToRemove = new ArrayList(); + Iterator serviceIterator = services.entrySet().iterator(); while (serviceIterator.hasNext()) { Map.Entry serviceEntry = (Map.Entry) serviceIterator.next(); @@ -250,9 +253,13 @@ updatePorts(portName, service, baseUri); updated = true; } else { - def.removeService(currServiceName); + servicesToRemove.add(currServiceName); } } + + for (QName serviceToRemove : servicesToRemove) { + def.removeService(serviceToRemove); + } } if (!updated) { LOG.warn("WSDL '" + serviceName + "' service not found."); @@ -263,6 +270,8 @@ boolean updated = false; Map ports = service.getPorts(); if (ports != null) { + ArrayList portsToRemove = new ArrayList(); + Iterator portIterator = ports.entrySet().iterator(); while (portIterator.hasNext()) { Map.Entry portEntry = (Map.Entry) portIterator.next(); @@ -272,8 +281,12 @@ updatePortLocation(port, baseUri); updated = true; } else { - service.removePort(currPortName); + portsToRemove.add(currPortName); } + } + + for (String portToRemove : portsToRemove) { + service.removePort(portToRemove); } } if (!updated) { Modified: geronimo/server/branches/2.0/modules/geronimo-cxf/src/main/java/org/apache/geronimo/cxf/GeronimoQueryHandler.java URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.0/modules/geronimo-cxf/src/main/java/org/apache/geronimo/cxf/GeronimoQueryHandler.java?view=diff&rev=561903&r1=561902&r2=561903 ============================================================================== --- geronimo/server/branches/2.0/modules/geronimo-cxf/src/main/java/org/apache/geronimo/cxf/GeronimoQueryHandler.java (original) +++ geronimo/server/branches/2.0/modules/geronimo-cxf/src/main/java/org/apache/geronimo/cxf/GeronimoQueryHandler.java Wed Aug 1 11:39:36 2007 @@ -16,6 +16,7 @@ */ package org.apache.geronimo.cxf; +import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -64,6 +65,8 @@ boolean updated = false; Map services = def.getServices(); if (services != null) { + ArrayList servicesToRemove = new ArrayList(); + Iterator serviceIterator = services.entrySet().iterator(); while (serviceIterator.hasNext()) { Map.Entry serviceEntry = (Map.Entry) serviceIterator.next(); @@ -73,9 +76,13 @@ updatePorts(portName, service, baseUri); updated = true; } else { - def.removeService(currServiceName); + servicesToRemove.add(currServiceName); } } + + for (QName serviceToRemove : servicesToRemove) { + def.removeService(serviceToRemove); + } } if (!updated) { LOG.warn("WSDL '" + serviceName.getLocalPart() + "' service not found."); @@ -88,6 +95,8 @@ boolean updated = false; Map ports = service.getPorts(); if (ports != null) { + ArrayList portsToRemove = new ArrayList(); + Iterator portIterator = ports.entrySet().iterator(); while (portIterator.hasNext()) { Map.Entry portEntry = (Map.Entry) portIterator.next(); @@ -97,8 +106,12 @@ updatePortLocation(port, baseUri); updated = true; } else { - service.removePort(currPortName); + portsToRemove.add(currPortName); } + } + + for (String portToRemove : portsToRemove) { + service.removePort(portToRemove); } } if (!updated) {