You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mi...@apache.org on 2009/07/11 01:02:45 UTC
svn commit: r793138 - in /ode/branches/APACHE_ODE_1.X/utils/src:
main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
test/resources/wsdl-utils.wsdl
Author: midon
Date: Fri Jul 10 23:02:44 2009
New Revision: 793138
URL: http://svn.apache.org/viewvc?rev=793138&view=rev
Log:
avoid ConcurrentModificationException
Modified:
ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
ode/branches/APACHE_ODE_1.X/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
ode/branches/APACHE_ODE_1.X/utils/src/test/resources/wsdl-utils.wsdl
Modified: ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java?rev=793138&r1=793137&r2=793138&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java (original)
+++ ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java Fri Jul 10 23:02:44 2009
@@ -49,6 +49,7 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
+import java.util.Iterator;
/**
* @author <a href="mailto:midon@intalio.com">Alexis Midon</a>
@@ -307,12 +308,12 @@
public static Collection<UnknownExtensibilityElement> getHttpHeaders(List extensibilityElements) {
final Collection<UnknownExtensibilityElement> unknownExtElements = CollectionsX.filter(extensibilityElements, UnknownExtensibilityElement.class);
- for (UnknownExtensibilityElement extensibilityElement : unknownExtElements) {
- final Element e = extensibilityElement.getElement();
+ for (Iterator<UnknownExtensibilityElement> iterator = unknownExtElements.iterator(); iterator.hasNext();) {
+ Element e = iterator.next().getElement();
// keep only the header elements
if (!Namespaces.ODE_HTTP_EXTENSION_NS.equalsIgnoreCase(e.getNamespaceURI())
- || !"header".equals(extensibilityElement.getElement().getLocalName())) {
- unknownExtElements.remove(extensibilityElement);
+ || !"header".equals(e.getLocalName())) {
+ iterator.remove();
}
}
return unknownExtElements;
Modified: ode/branches/APACHE_ODE_1.X/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java?rev=793138&r1=793137&r2=793138&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java Fri Jul 10 23:02:44 2009
@@ -36,6 +36,7 @@
import java.net.URL;
import java.util.Iterator;
import java.util.Map;
+import java.util.Collection;
/**
* @author <a href="mailto:midon@intalio.com">Alexis Midon</a>
@@ -204,4 +205,12 @@
mimeContent = WsdlUtils.getMimeContent(operation.getBindingInput().getExtensibilityElements());
assertNull("No content-type expected here!", mimeContent);
}
+
+ public void testGetHeaders() {
+ Binding binding = definition.getBinding(new QName("http://axis2.ode.apache.org", "DummyServiceHttpBinding"));
+ BindingOperation operation = binding.getBindingOperation("hello", null, null);
+ Collection headers = WsdlUtils.getHttpHeaders(operation.getBindingOutput().getExtensibilityElements());
+ assertNotNull("A header is expected!", headers);
+ assertTrue("A header is expected!", headers.size()==1);
+ }
}
Modified: ode/branches/APACHE_ODE_1.X/utils/src/test/resources/wsdl-utils.wsdl
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/utils/src/test/resources/wsdl-utils.wsdl?rev=793138&r1=793137&r2=793138&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/utils/src/test/resources/wsdl-utils.wsdl (original)
+++ ode/branches/APACHE_ODE_1.X/utils/src/test/resources/wsdl-utils.wsdl Fri Jul 10 23:02:44 2009
@@ -26,6 +26,7 @@
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:odex="http://www.apache.org/ode/type/extension/http"
targetNamespace="http://axis2.ode.apache.org">
<wsdl:message name="helloRequest">
<wsdl:part name="TestPart" type="xs:string"/>
@@ -60,6 +61,9 @@
</wsdl:input>
<wsdl:output>
<mime:content type="text/xml" part="hello"/>
+ <!-- dummy headers to test getHeaders() -->
+ <odex:header name="Age" part="age_part"/>
+ <odex:foo name="Age" part="age_part"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>