From 5945f19898650b6b61073183c44932fe345dde92 Mon Sep 17 00:00:00 2001 From: Arjen Poutsma Date: Tue, 2 Feb 2010 15:52:44 +0000 Subject: [PATCH] Generified core & support module --- .../ws/client/core/WebServiceTemplate.java | 12 ++++----- .../ws/soap/saaj/support/SaajUtils.java | 24 +++++++++--------- .../transport/AbstractReceiverConnection.java | 10 ++++---- .../transport/AbstractSenderConnection.java | 10 ++++---- .../ws/transport/TransportInputStream.java | 4 +-- .../context/TransportContextHolder.java | 6 ++--- .../http/AbstractHttpSenderConnection.java | 8 +++--- .../transport/http/CommonsHttpConnection.java | 18 ++++++------- .../http/CommonsHttpMessageSender.java | 14 +++++------ .../transport/http/HttpServletConnection.java | 6 +++-- .../ws/transport/http/HttpUrlConnection.java | 10 ++++---- .../http/MessageDispatcherServlet.java | 19 ++++++-------- .../http/WsdlDefinitionHandlerAdapter.java | 20 ++++++++------- .../support/EnumerationIterator.java | 10 ++++---- .../provider/AbstractPortTypesProvider.java | 25 +++++++++---------- .../provider/DefaultConcretePartProvider.java | 18 ++++++------- .../provider/DefaultMessagesProvider.java | 8 +++--- .../wsdl/wsdl11/provider/Soap11Provider.java | 4 +-- .../wsdl/wsdl11/provider/Soap12Provider.java | 4 +-- .../MarshallingPayloadEndpointTest.java | 9 ++++--- .../transport/MockTransportInputStream.java | 15 +++++------ .../transport/MockTransportOutputStream.java | 4 +-- ...rviceMessageSenderIntegrationTestCase.java | 18 ++++++------- .../http/HttpExchangeConnection.java | 12 ++++----- .../transport/jms/JmsReceiverConnection.java | 4 +-- .../ws/transport/jms/JmsSenderConnection.java | 4 +-- .../jms/support/JmsTransportUtils.java | 10 ++++---- .../mail/MailReceiverConnection.java | 6 ++--- .../transport/mail/MailSenderConnection.java | 12 ++++----- 29 files changed, 163 insertions(+), 161 deletions(-) diff --git a/core/src/main/java/org/springframework/ws/client/core/WebServiceTemplate.java b/core/src/main/java/org/springframework/ws/client/core/WebServiceTemplate.java index 0f553f6d..905efc33 100644 --- a/core/src/main/java/org/springframework/ws/client/core/WebServiceTemplate.java +++ b/core/src/main/java/org/springframework/ws/client/core/WebServiceTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2006 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,9 +26,6 @@ import javax.xml.transform.Transformer; import javax.xml.transform.TransformerConfigurationException; import javax.xml.transform.TransformerException; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import org.springframework.beans.factory.BeanInitializationException; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; @@ -62,6 +59,9 @@ import org.springframework.ws.transport.context.TransportContextHolder; import org.springframework.ws.transport.http.HttpUrlConnectionMessageSender; import org.springframework.ws.transport.support.TransportUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + /** * The central class for client-side Web services. It provides a message-driven approach to sending and * receiving {@link WebServiceMessage} instances. @@ -408,7 +408,7 @@ public class WebServiceTemplate extends WebServiceAccessor implements WebService return Boolean.TRUE; } }); - return retVal != null && retVal.booleanValue(); + return retVal != null && retVal; } catch (TransformerConfigurationException ex) { throw new WebServiceTransformerException("Could not create transformer", ex); @@ -479,7 +479,7 @@ public class WebServiceTemplate extends WebServiceAccessor implements WebService Assert.notNull(responseCallback, "responseCallback must not be null"); Boolean result = (Boolean) sendAndReceive(uri, requestCallback, new WebServiceMessageCallbackMessageExtractor(responseCallback)); - return result != null && result.booleanValue(); + return result != null && result; } public Object sendAndReceive(WebServiceMessageCallback requestCallback, diff --git a/core/src/main/java/org/springframework/ws/soap/saaj/support/SaajUtils.java b/core/src/main/java/org/springframework/ws/soap/saaj/support/SaajUtils.java index 513bc187..d91cb621 100644 --- a/core/src/main/java/org/springframework/ws/soap/saaj/support/SaajUtils.java +++ b/core/src/main/java/org/springframework/ws/soap/saaj/support/SaajUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2006 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,10 +34,6 @@ import javax.xml.soap.SOAPEnvelope; import javax.xml.soap.SOAPException; import javax.xml.soap.SOAPMessage; -import org.w3c.dom.Element; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import org.springframework.core.io.Resource; import org.springframework.util.Assert; import org.springframework.util.ClassUtils; @@ -46,6 +42,10 @@ import org.springframework.ws.soap.saaj.SaajSoapMessageException; import org.springframework.ws.transport.TransportConstants; import org.springframework.xml.namespace.QNameUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.w3c.dom.Element; + /** * Collection of generic utility methods to work with SAAJ. Includes conversion from SAAJ {@link Name} objects to {@link * QName}s and vice-versa, and SAAJ version checking. @@ -71,7 +71,7 @@ public abstract class SaajUtils { private static final String SAAJ_13_CLASS_NAME = "javax.xml.soap.SAAJMetaFactory"; // Maps SOAPElement class names to Integer SAAJ versions (SAAJ_11, SAAJ_12, SAAJ_13) - private static final Map saajVersions = Collections.synchronizedMap(new HashMap()); + private static final Map saajVersions = Collections.synchronizedMap(new HashMap()); private static int saajVersion = SAAJ_12; @@ -175,25 +175,25 @@ public abstract class SaajUtils { public static int getSaajVersion(SOAPElement soapElement) { Assert.notNull(soapElement, "'soapElement' must not be null"); Class soapElementClass = soapElement.getClass(); - Integer saajVersion = (Integer) saajVersions.get(soapElementClass.getName()); + Integer saajVersion = saajVersions.get(soapElementClass.getName()); if (saajVersion == null) { if (isSaaj12(soapElement)) { if (isSaaj13(soapElement)) { - saajVersion = new Integer(SAAJ_13); + saajVersion = SAAJ_13; } else { - saajVersion = new Integer(SAAJ_12); + saajVersion = SAAJ_12; } } else { - saajVersion = new Integer(SAAJ_11); + saajVersion = SAAJ_11; } saajVersions.put(soapElementClass.getName(), saajVersion); if (logger.isTraceEnabled()) { logger.trace("SOAPElement [" + soapElement.getClass().getName() + "] implements " + - getSaajVersionString(saajVersion.intValue())); + getSaajVersionString(saajVersion)); } } - return saajVersion.intValue(); + return saajVersion; } private static boolean isSaaj13(SOAPElement soapElement) { diff --git a/core/src/main/java/org/springframework/ws/transport/AbstractReceiverConnection.java b/core/src/main/java/org/springframework/ws/transport/AbstractReceiverConnection.java index 3996baa6..7596c0bf 100644 --- a/core/src/main/java/org/springframework/ws/transport/AbstractReceiverConnection.java +++ b/core/src/main/java/org/springframework/ws/transport/AbstractReceiverConnection.java @@ -60,15 +60,15 @@ public abstract class AbstractReceiverConnection extends AbstractWebServiceConne /** * Returns an iteration over all the header names this request contains. Returns an empty Iterator if - * there areno headers. + * there are no headers. */ - protected abstract Iterator getRequestHeaderNames() throws IOException; + protected abstract Iterator getRequestHeaderNames() throws IOException; /** * Returns an iteration over all the string values of the specified header. Returns an empty Iterator * if there are no headers of the specified name. */ - protected abstract Iterator getRequestHeaders(String name) throws IOException; + protected abstract Iterator getRequestHeaders(String name) throws IOException; /** Returns the input stream to read the response from. */ protected abstract InputStream getRequestInputStream() throws IOException; @@ -94,12 +94,12 @@ public abstract class AbstractReceiverConnection extends AbstractWebServiceConne } @Override - public Iterator getHeaderNames() throws IOException { + public Iterator getHeaderNames() throws IOException { return getRequestHeaderNames(); } @Override - public Iterator getHeaders(String name) throws IOException { + public Iterator getHeaders(String name) throws IOException { return getRequestHeaders(name); } diff --git a/core/src/main/java/org/springframework/ws/transport/AbstractSenderConnection.java b/core/src/main/java/org/springframework/ws/transport/AbstractSenderConnection.java index 2c970c99..9eb9a087 100644 --- a/core/src/main/java/org/springframework/ws/transport/AbstractSenderConnection.java +++ b/core/src/main/java/org/springframework/ws/transport/AbstractSenderConnection.java @@ -80,15 +80,15 @@ public abstract class AbstractSenderConnection extends AbstractWebServiceConnect /** * Returns an iteration over all the header names this request contains. Returns an empty Iterator if - * there areno headers. + * there are no headers. */ - protected abstract Iterator getResponseHeaderNames() throws IOException; + protected abstract Iterator getResponseHeaderNames() throws IOException; /** * Returns an iteration over all the string values of the specified header. Returns an empty Iterator * if there are no headers of the specified name. */ - protected abstract Iterator getResponseHeaders(String name) throws IOException; + protected abstract Iterator getResponseHeaders(String name) throws IOException; /** Returns the input stream to read the response from. */ protected abstract InputStream getResponseInputStream() throws IOException; @@ -116,12 +116,12 @@ public abstract class AbstractSenderConnection extends AbstractWebServiceConnect } @Override - public Iterator getHeaderNames() throws IOException { + public Iterator getHeaderNames() throws IOException { return getResponseHeaderNames(); } @Override - public Iterator getHeaders(String name) throws IOException { + public Iterator getHeaders(String name) throws IOException { return getResponseHeaders(name); } diff --git a/core/src/main/java/org/springframework/ws/transport/TransportInputStream.java b/core/src/main/java/org/springframework/ws/transport/TransportInputStream.java index 21219608..f383a31a 100644 --- a/core/src/main/java/org/springframework/ws/transport/TransportInputStream.java +++ b/core/src/main/java/org/springframework/ws/transport/TransportInputStream.java @@ -108,11 +108,11 @@ public abstract class TransportInputStream extends InputStream { * Returns an iteration over all the header names this stream contains. Returns an empty Iterator if * there are no headers. */ - public abstract Iterator getHeaderNames() throws IOException; + public abstract Iterator getHeaderNames() throws IOException; /** * Returns an iteration over all the string values of the specified header. Returns an empty Iterator * if there are no headers of the specified name. */ - public abstract Iterator getHeaders(String name) throws IOException; + public abstract Iterator getHeaders(String name) throws IOException; } diff --git a/core/src/main/java/org/springframework/ws/transport/context/TransportContextHolder.java b/core/src/main/java/org/springframework/ws/transport/context/TransportContextHolder.java index 3deccd6b..19ffe1df 100644 --- a/core/src/main/java/org/springframework/ws/transport/context/TransportContextHolder.java +++ b/core/src/main/java/org/springframework/ws/transport/context/TransportContextHolder.java @@ -1,5 +1,5 @@ /* - * Copyright 2006 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,7 +25,7 @@ package org.springframework.ws.transport.context; */ public abstract class TransportContextHolder { - private static final ThreadLocal transportContextHolder = new TransportThreadLocal(); + private static final ThreadLocal transportContextHolder = new TransportThreadLocal(); /** * Associate the given TransportContext with the current thread. @@ -45,7 +45,7 @@ public abstract class TransportContextHolder { return (TransportContext) transportContextHolder.get(); } - private static class TransportThreadLocal extends ThreadLocal { + private static class TransportThreadLocal extends ThreadLocal { public String toString() { return "Transport State"; diff --git a/core/src/main/java/org/springframework/ws/transport/http/AbstractHttpSenderConnection.java b/core/src/main/java/org/springframework/ws/transport/http/AbstractHttpSenderConnection.java index f7922d52..3ca623e9 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/AbstractHttpSenderConnection.java +++ b/core/src/main/java/org/springframework/ws/transport/http/AbstractHttpSenderConnection.java @@ -90,9 +90,9 @@ public abstract class AbstractHttpSenderConnection extends AbstractSenderConnect /** Determine whether the response is a GZIP response. */ private boolean isGzipResponse() throws IOException { - Iterator iterator = getResponseHeaders(HttpTransportConstants.HEADER_CONTENT_ENCODING); + Iterator iterator = getResponseHeaders(HttpTransportConstants.HEADER_CONTENT_ENCODING); if (iterator.hasNext()) { - String encodingHeader = (String) iterator.next(); + String encodingHeader = iterator.next(); return encodingHeader.toLowerCase().indexOf(HttpTransportConstants.CONTENT_ENCODING_GZIP) != -1; } return false; @@ -120,9 +120,9 @@ public abstract class AbstractHttpSenderConnection extends AbstractSenderConnect /** Determine whether the response is a XML message. */ private boolean isXmlResponse() throws IOException { - Iterator iterator = getResponseHeaders(HttpTransportConstants.HEADER_CONTENT_TYPE); + Iterator iterator = getResponseHeaders(HttpTransportConstants.HEADER_CONTENT_TYPE); if (iterator.hasNext()) { - String contentType = ((String) iterator.next()).toLowerCase(); + String contentType = iterator.next().toLowerCase(); return contentType.indexOf("xml") != -1; } return false; diff --git a/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpConnection.java b/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpConnection.java index 105bf979..bce51769 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpConnection.java +++ b/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpConnection.java @@ -25,17 +25,17 @@ import java.net.URISyntaxException; import java.util.Arrays; import java.util.Iterator; -import org.apache.commons.httpclient.Header; -import org.apache.commons.httpclient.HttpClient; -import org.apache.commons.httpclient.URIException; -import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; -import org.apache.commons.httpclient.methods.ByteArrayRequestEntity; -import org.apache.commons.httpclient.methods.PostMethod; - import org.springframework.util.Assert; import org.springframework.ws.WebServiceMessage; import org.springframework.ws.transport.WebServiceConnection; +import org.apache.commons.httpclient.Header; +import org.apache.commons.httpclient.HttpClient; +import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; +import org.apache.commons.httpclient.URIException; +import org.apache.commons.httpclient.methods.ByteArrayRequestEntity; +import org.apache.commons.httpclient.methods.PostMethod; + /** * Implementation of {@link WebServiceConnection} that is based on Jakarta Commons HttpClient. Exposes a {@link * PostMethod}. @@ -148,7 +148,7 @@ public class CommonsHttpConnection extends AbstractHttpSenderConnection { } @Override - protected Iterator getResponseHeaderNames() throws IOException { + protected Iterator getResponseHeaderNames() throws IOException { Header[] headers = postMethod.getResponseHeaders(); String[] names = new String[headers.length]; for (int i = 0; i < headers.length; i++) { @@ -158,7 +158,7 @@ public class CommonsHttpConnection extends AbstractHttpSenderConnection { } @Override - protected Iterator getResponseHeaders(String name) throws IOException { + protected Iterator getResponseHeaders(String name) throws IOException { Header[] headers = postMethod.getResponseHeaders(name); String[] values = new String[headers.length]; for (int i = 0; i < headers.length; i++) { diff --git a/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpMessageSender.java b/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpMessageSender.java index 5efbfcc1..5777e2b4 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpMessageSender.java +++ b/core/src/main/java/org/springframework/ws/transport/http/CommonsHttpMessageSender.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2009 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,6 +21,11 @@ import java.net.URI; import java.util.Iterator; import java.util.Properties; +import org.springframework.beans.factory.DisposableBean; +import org.springframework.beans.factory.InitializingBean; +import org.springframework.util.Assert; +import org.springframework.ws.transport.WebServiceConnection; + import org.apache.commons.httpclient.Credentials; import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpClient; @@ -34,11 +39,6 @@ import org.apache.commons.httpclient.UsernamePasswordCredentials; import org.apache.commons.httpclient.auth.AuthScope; import org.apache.commons.httpclient.methods.PostMethod; -import org.springframework.beans.factory.DisposableBean; -import org.springframework.beans.factory.InitializingBean; -import org.springframework.util.Assert; -import org.springframework.ws.transport.WebServiceConnection; - /** * WebServiceMessageSender implementation that uses Jakarta * Commons HttpClient to execute POST requests. @@ -167,7 +167,7 @@ public class CommonsHttpMessageSender extends AbstractHttpWebServiceMessageSende * int) */ public void setMaxConnectionsPerHost(Properties maxConnectionsPerHost) throws URIException { - for (Iterator iterator = maxConnectionsPerHost.keySet().iterator(); iterator.hasNext();) { + for (Iterator iterator = maxConnectionsPerHost.keySet().iterator(); iterator.hasNext();) { String host = (String) iterator.next(); HostConfiguration hostConfiguration = new HostConfiguration(); if ("*".equals(host)) { diff --git a/core/src/main/java/org/springframework/ws/transport/http/HttpServletConnection.java b/core/src/main/java/org/springframework/ws/transport/http/HttpServletConnection.java index 0dc9333a..be50cf62 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/HttpServletConnection.java +++ b/core/src/main/java/org/springframework/ws/transport/http/HttpServletConnection.java @@ -98,12 +98,14 @@ public class HttpServletConnection extends AbstractReceiverConnection */ @Override - protected Iterator getRequestHeaderNames() throws IOException { + @SuppressWarnings("unchecked") + protected Iterator getRequestHeaderNames() throws IOException { return new EnumerationIterator(getHttpServletRequest().getHeaderNames()); } @Override - protected Iterator getRequestHeaders(String name) throws IOException { + @SuppressWarnings("unchecked") + protected Iterator getRequestHeaders(String name) throws IOException { return new EnumerationIterator(getHttpServletRequest().getHeaders(name)); } diff --git a/core/src/main/java/org/springframework/ws/transport/http/HttpUrlConnection.java b/core/src/main/java/org/springframework/ws/transport/http/HttpUrlConnection.java index ad534e4b..68dc369b 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/HttpUrlConnection.java +++ b/core/src/main/java/org/springframework/ws/transport/http/HttpUrlConnection.java @@ -99,8 +99,8 @@ public class HttpUrlConnection extends AbstractHttpSenderConnection { } @Override - protected Iterator getResponseHeaderNames() throws IOException { - List headerNames = new ArrayList(); + protected Iterator getResponseHeaderNames() throws IOException { + List headerNames = new ArrayList(); // Header field 0 is the status line, so we start at 1 int i = 1; while (true) { @@ -115,13 +115,13 @@ public class HttpUrlConnection extends AbstractHttpSenderConnection { } @Override - protected Iterator getResponseHeaders(String name) throws IOException { + protected Iterator getResponseHeaders(String name) throws IOException { String headerField = connection.getHeaderField(name); if (headerField == null) { - return Collections.EMPTY_LIST.iterator(); + return Collections.emptyList().iterator(); } else { - Set tokens = StringUtils.commaDelimitedListToSet(headerField); + Set tokens = StringUtils.commaDelimitedListToSet(headerField); return tokens.iterator(); } } diff --git a/core/src/main/java/org/springframework/ws/transport/http/MessageDispatcherServlet.java b/core/src/main/java/org/springframework/ws/transport/http/MessageDispatcherServlet.java index fbf00801..ebba5cfa 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/MessageDispatcherServlet.java +++ b/core/src/main/java/org/springframework/ws/transport/http/MessageDispatcherServlet.java @@ -16,7 +16,6 @@ package org.springframework.ws.transport.http; -import java.util.Iterator; import java.util.Map; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -122,9 +121,9 @@ public class MessageDispatcherServlet extends FrameworkServlet { private WebServiceMessageReceiver messageReceiver; /** Keys are bean names, values are {@link WsdlDefinition WsdlDefinitions}. */ - private Map wsdlDefinitions; + private Map wsdlDefinitions; - private Map xsdSchemas; + private Map xsdSchemas; private boolean transformWsdlLocations = false; @@ -394,10 +393,9 @@ public class MessageDispatcherServlet extends FrameworkServlet { wsdlDefinitions = BeanFactoryUtils .beansOfTypeIncludingAncestors(getWebApplicationContext(), WsdlDefinition.class, true, false); if (logger.isDebugEnabled()) { - for (Iterator iterator = wsdlDefinitions.entrySet().iterator(); iterator.hasNext();) { - Map.Entry entry = (Map.Entry) iterator.next(); - String beanName = (String) entry.getKey(); - WsdlDefinition definition = (WsdlDefinition) entry.getValue(); + for (Map.Entry entry : wsdlDefinitions.entrySet()) { + String beanName = entry.getKey(); + WsdlDefinition definition = entry.getValue(); logger.debug("Published [" + definition + "] as " + beanName + WSDL_SUFFIX_NAME); } } @@ -408,10 +406,9 @@ public class MessageDispatcherServlet extends FrameworkServlet { xsdSchemas = BeanFactoryUtils .beansOfTypeIncludingAncestors(getWebApplicationContext(), XsdSchema.class, true, false); if (logger.isDebugEnabled()) { - for (Iterator iterator = xsdSchemas.entrySet().iterator(); iterator.hasNext();) { - Map.Entry entry = (Map.Entry) iterator.next(); - String beanName = (String) entry.getKey(); - XsdSchema schema = (XsdSchema) entry.getValue(); + for (Map.Entry entry : xsdSchemas.entrySet()) { + String beanName = entry.getKey(); + XsdSchema schema = entry.getValue(); logger.debug("Published [" + schema + "] as " + beanName + XSD_SUFFIX_NAME); } } diff --git a/core/src/main/java/org/springframework/ws/transport/http/WsdlDefinitionHandlerAdapter.java b/core/src/main/java/org/springframework/ws/transport/http/WsdlDefinitionHandlerAdapter.java index 2545f628..649b6035 100644 --- a/core/src/main/java/org/springframework/ws/transport/http/WsdlDefinitionHandlerAdapter.java +++ b/core/src/main/java/org/springframework/ws/transport/http/WsdlDefinitionHandlerAdapter.java @@ -17,7 +17,6 @@ package org.springframework.ws.transport.http; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; @@ -41,6 +40,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.w3c.dom.Attr; import org.w3c.dom.Document; +import org.w3c.dom.Node; /** * Adapter to use the WsdlDefinition interface with the generic DispatcherServlet. @@ -197,15 +197,17 @@ public class WsdlDefinitionHandlerAdapter extends TransformerObjectSupport imple * @see #transformLocation(String,javax.servlet.http.HttpServletRequest) */ protected void transformLocations(Document definitionDocument, HttpServletRequest request) throws Exception { - List locationNodes = locationXPathExpression.evaluateAsNodeList(definitionDocument); - for (Iterator iterator = locationNodes.iterator(); iterator.hasNext();) { - Attr location = (Attr) iterator.next(); - if (location != null && StringUtils.hasLength(location.getValue())) { - String newLocation = transformLocation(location.getValue(), request); - if (logger.isDebugEnabled()) { - logger.debug("Transforming [" + location.getValue() + "] to [" + newLocation + "]"); + List locationNodes = locationXPathExpression.evaluateAsNodeList(definitionDocument); + for (Node locationNode : locationNodes) { + if (locationNode instanceof Attr) { + Attr location = (Attr) locationNode; + if (StringUtils.hasLength(location.getValue())) { + String newLocation = transformLocation(location.getValue(), request); + if (logger.isDebugEnabled()) { + logger.debug("Transforming [" + location.getValue() + "] to [" + newLocation + "]"); + } + location.setValue(newLocation); } - location.setValue(newLocation); } } } diff --git a/core/src/main/java/org/springframework/ws/transport/support/EnumerationIterator.java b/core/src/main/java/org/springframework/ws/transport/support/EnumerationIterator.java index fa669b38..4d5c3151 100644 --- a/core/src/main/java/org/springframework/ws/transport/support/EnumerationIterator.java +++ b/core/src/main/java/org/springframework/ws/transport/support/EnumerationIterator.java @@ -1,5 +1,5 @@ /* - * Copyright 2006 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,11 +25,11 @@ import java.util.Iterator; * @author Arjen Poutsma * @since 1.0.0 */ -public class EnumerationIterator implements Iterator { +public class EnumerationIterator implements Iterator { - private final Enumeration enumeration; + private final Enumeration enumeration; - public EnumerationIterator(Enumeration enumeration) { + public EnumerationIterator(Enumeration enumeration) { this.enumeration = enumeration; } @@ -37,7 +37,7 @@ public class EnumerationIterator implements Iterator { return enumeration.hasMoreElements(); } - public Object next() { + public T next() { return enumeration.nextElement(); } diff --git a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/AbstractPortTypesProvider.java b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/AbstractPortTypesProvider.java index a8a9613d..c698b141 100644 --- a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/AbstractPortTypesProvider.java +++ b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/AbstractPortTypesProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2008 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,12 +32,12 @@ import javax.wsdl.PortType; import javax.wsdl.WSDLException; import javax.xml.namespace.QName; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import org.springframework.util.Assert; import org.springframework.util.StringUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + /** * Abstract base class for {@link PortTypesProvider} implementations. * @@ -94,14 +94,15 @@ public abstract class AbstractPortTypesProvider implements PortTypesProvider { } private void createOperations(Definition definition, PortType portType) throws WSDLException { - Map operations = new HashMap(); - for (Iterator iterator = definition.getMessages().values().iterator(); iterator.hasNext();) { + // TODO: use MultivaluedMap + Map> operations = new HashMap>(); + for (Iterator iterator = definition.getMessages().values().iterator(); iterator.hasNext();) { Message message = (Message) iterator.next(); String operationName = getOperationName(message); if (StringUtils.hasText(operationName)) { - List messages = (List) operations.get(operationName); + List messages = operations.get(operationName); if (messages == null) { - messages = new ArrayList(); + messages = new ArrayList(); operations.put(operationName, messages); } messages.add(message); @@ -110,13 +111,11 @@ public abstract class AbstractPortTypesProvider implements PortTypesProvider { if (operations.isEmpty() && logger.isWarnEnabled()) { logger.warn("No operations were created, make sure the WSDL contains messages"); } - for (Iterator iterator = operations.keySet().iterator(); iterator.hasNext();) { - String operationName = (String) iterator.next(); + for (String operationName : operations.keySet()) { Operation operation = definition.createOperation(); operation.setName(operationName); - List messages = (List) operations.get(operationName); - for (Iterator messagesIterator = messages.iterator(); messagesIterator.hasNext();) { - Message message = (Message) messagesIterator.next(); + List messages = operations.get(operationName); + for (Message message : messages) { if (isInputMessage(message)) { Input input = definition.createInput(); input.setMessage(message); diff --git a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultConcretePartProvider.java b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultConcretePartProvider.java index c102a06b..480136fc 100644 --- a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultConcretePartProvider.java +++ b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultConcretePartProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2008 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,12 +34,12 @@ import javax.wsdl.Service; import javax.wsdl.WSDLException; import javax.xml.namespace.QName; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import org.springframework.util.Assert; import org.springframework.util.StringUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + /** * Default implementation of the {@link BindingsProvider} and {@link ServicesProvider} interfaces. *

@@ -96,7 +96,7 @@ public class DefaultConcretePartProvider implements BindingsProvider, ServicesPr * @see #populateBindingFault(Definition,javax.wsdl.BindingFault,javax.wsdl.Fault) */ public void addBindings(Definition definition) throws WSDLException { - for (Iterator iterator = definition.getPortTypes().values().iterator(); iterator.hasNext();) { + for (Iterator iterator = definition.getPortTypes().values().iterator(); iterator.hasNext();) { PortType portType = (PortType) iterator.next(); Binding binding = definition.createBinding(); binding.setPortType(portType); @@ -136,7 +136,7 @@ public class DefaultConcretePartProvider implements BindingsProvider, ServicesPr private void createBindingOperations(Definition definition, Binding binding) throws WSDLException { PortType portType = binding.getPortType(); - for (Iterator operationIterator = portType.getOperations().iterator(); operationIterator.hasNext();) { + for (Iterator operationIterator = portType.getOperations().iterator(); operationIterator.hasNext();) { Operation operation = (Operation) operationIterator.next(); BindingOperation bindingOperation = definition.createBindingOperation(); bindingOperation.setOperation(operation); @@ -155,7 +155,7 @@ public class DefaultConcretePartProvider implements BindingsProvider, ServicesPr createBindingOutput(definition, operation, bindingOperation); createBindingInput(definition, operation, bindingOperation); } - for (Iterator faultIterator = operation.getFaults().values().iterator(); faultIterator.hasNext();) { + for (Iterator faultIterator = operation.getFaults().values().iterator(); faultIterator.hasNext();) { Fault fault = (Fault) faultIterator.next(); BindingFault bindingFault = definition.createBindingFault(); populateBindingFault(definition, bindingFault, fault); @@ -284,10 +284,10 @@ public class DefaultConcretePartProvider implements BindingsProvider, ServicesPr } private void createPorts(Definition definition, Service service) throws WSDLException { - for (Iterator iterator = definition.getBindings().values().iterator(); iterator.hasNext();) { + for (Iterator iterator = definition.getBindings().values().iterator(); iterator.hasNext();) { Binding binding = (Binding) iterator.next(); Port port = null; - for (Iterator iterator1 = service.getPorts().values().iterator(); iterator1.hasNext();) { + for (Iterator iterator1 = service.getPorts().values().iterator(); iterator1.hasNext();) { Port existingPort = (Port) iterator1.next(); if (binding.equals(existingPort.getBinding())) { port = existingPort; diff --git a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultMessagesProvider.java b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultMessagesProvider.java index 7267e4c2..381766e3 100644 --- a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultMessagesProvider.java +++ b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/DefaultMessagesProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2008 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,14 +26,14 @@ import javax.wsdl.extensions.ExtensibilityElement; import javax.wsdl.extensions.schema.Schema; import javax.xml.namespace.QName; +import org.springframework.util.Assert; + import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import org.springframework.util.Assert; - /** * Default implementation of the {@link MessagesProvider}. *

@@ -49,7 +49,7 @@ public class DefaultMessagesProvider implements MessagesProvider { public void addMessages(Definition definition) throws WSDLException { Types types = definition.getTypes(); Assert.notNull(types, "No types element present in definition"); - for (Iterator iterator = types.getExtensibilityElements().iterator(); iterator.hasNext();) { + for (Iterator iterator = types.getExtensibilityElements().iterator(); iterator.hasNext();) { ExtensibilityElement extensibilityElement = (ExtensibilityElement) iterator.next(); if (extensibilityElement instanceof Schema) { Schema schema = (Schema) extensibilityElement; diff --git a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap11Provider.java b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap11Provider.java index c8e764ba..5b31db1c 100644 --- a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap11Provider.java +++ b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap11Provider.java @@ -307,7 +307,7 @@ public class Soap11Provider extends DefaultConcretePartProvider { */ @Override protected void populatePort(Definition definition, Port port) throws WSDLException { - for (Iterator iterator = port.getBinding().getExtensibilityElements().iterator(); iterator.hasNext();) { + for (Iterator iterator = port.getBinding().getExtensibilityElements().iterator(); iterator.hasNext();) { if (iterator.next() instanceof SOAPBinding) { // this is a SOAP 1.1 binding, create a SOAP Address for it super.populatePort(definition, port); @@ -342,7 +342,7 @@ public class Soap11Provider extends DefaultConcretePartProvider { * @throws WSDLException in case of errors * @see ExtensionRegistry#createExtension(Class, QName) */ - private ExtensibilityElement createSoapExtension(Definition definition, Class parentType, String localName) + private ExtensibilityElement createSoapExtension(Definition definition, Class parentType, String localName) throws WSDLException { return definition.getExtensionRegistry() .createExtension(parentType, new QName(SOAP_11_NAMESPACE_URI, localName)); diff --git a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap12Provider.java b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap12Provider.java index b3139ad6..2d5a75c7 100644 --- a/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap12Provider.java +++ b/core/src/main/java/org/springframework/ws/wsdl/wsdl11/provider/Soap12Provider.java @@ -310,7 +310,7 @@ public class Soap12Provider extends DefaultConcretePartProvider { */ @Override protected void populatePort(Definition definition, Port port) throws WSDLException { - for (Iterator iterator = port.getBinding().getExtensibilityElements().iterator(); iterator.hasNext();) { + for (Iterator iterator = port.getBinding().getExtensibilityElements().iterator(); iterator.hasNext();) { if (iterator.next() instanceof SOAP12Binding) { // this is a SOAP 1.2 binding, create a SOAP Address for it super.populatePort(definition, port); @@ -345,7 +345,7 @@ public class Soap12Provider extends DefaultConcretePartProvider { * @throws WSDLException in case of errors * @see javax.wsdl.extensions.ExtensionRegistry#createExtension(Class, QName) */ - private ExtensibilityElement createSoapExtension(Definition definition, Class parentType, String localName) + private ExtensibilityElement createSoapExtension(Definition definition, Class parentType, String localName) throws WSDLException { return definition.getExtensionRegistry() .createExtension(parentType, new QName(SOAP_12_NAMESPACE_URI, localName)); diff --git a/core/src/test/java/org/springframework/ws/server/endpoint/MarshallingPayloadEndpointTest.java b/core/src/test/java/org/springframework/ws/server/endpoint/MarshallingPayloadEndpointTest.java index 9e24c757..c7d306c8 100644 --- a/core/src/test/java/org/springframework/ws/server/endpoint/MarshallingPayloadEndpointTest.java +++ b/core/src/test/java/org/springframework/ws/server/endpoint/MarshallingPayloadEndpointTest.java @@ -27,8 +27,6 @@ import javax.xml.transform.TransformerFactory; import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource; -import org.custommonkey.xmlunit.XMLTestCase; -import org.easymock.MockControl; import org.springframework.oxm.Marshaller; import org.springframework.oxm.Unmarshaller; import org.springframework.oxm.XmlMappingException; @@ -42,6 +40,9 @@ import org.springframework.ws.mime.MimeMessage; import org.springframework.xml.transform.StringResult; import org.springframework.xml.transform.StringSource; +import org.custommonkey.xmlunit.XMLTestCase; +import org.easymock.MockControl; + public class MarshallingPayloadEndpointTest extends XMLTestCase { private Transformer transformer; @@ -70,7 +71,7 @@ public class MarshallingPayloadEndpointTest extends XMLTestCase { StringWriter writer = new StringWriter(); transformer.transform(source, new StreamResult(writer)); assertXMLEqual("Invalid source", "", writer.toString()); - return new Long(42); + return 42L; } catch (Exception e) { fail(e.getMessage()); @@ -93,7 +94,7 @@ public class MarshallingPayloadEndpointTest extends XMLTestCase { AbstractMarshallingPayloadEndpoint endpoint = new AbstractMarshallingPayloadEndpoint() { @Override protected Object invokeInternal(Object requestObject) throws Exception { - assertEquals("Invalid request object", new Long(42), requestObject); + assertEquals("Invalid request object", 42L, requestObject); return "result"; } }; diff --git a/core/src/test/java/org/springframework/ws/transport/MockTransportInputStream.java b/core/src/test/java/org/springframework/ws/transport/MockTransportInputStream.java index d75ed61b..664b3ae5 100644 --- a/core/src/test/java/org/springframework/ws/transport/MockTransportInputStream.java +++ b/core/src/test/java/org/springframework/ws/transport/MockTransportInputStream.java @@ -19,19 +19,20 @@ package org.springframework.ws.transport; import java.io.IOException; import java.io.InputStream; import java.util.Arrays; +import java.util.HashMap; import java.util.Iterator; -import java.util.Properties; +import java.util.Map; import org.springframework.util.Assert; import org.springframework.util.StringUtils; public class MockTransportInputStream extends TransportInputStream { - private Properties headers; + private Map headers; private InputStream inputStream; - public MockTransportInputStream(InputStream inputStream, Properties headers) { + public MockTransportInputStream(InputStream inputStream, Map headers) { Assert.notNull(inputStream, "inputStream must not be null"); Assert.notNull(headers, "headers must not be null"); this.inputStream = inputStream; @@ -41,7 +42,7 @@ public class MockTransportInputStream extends TransportInputStream { public MockTransportInputStream(InputStream inputStream) { Assert.notNull(inputStream, "inputStream must not be null"); this.inputStream = inputStream; - headers = new Properties(); + headers = new HashMap(); } @Override @@ -50,13 +51,13 @@ public class MockTransportInputStream extends TransportInputStream { } @Override - public Iterator getHeaderNames() throws IOException { + public Iterator getHeaderNames() throws IOException { return headers.keySet().iterator(); } @Override - public Iterator getHeaders(String name) throws IOException { - String[] values = StringUtils.delimitedListToStringArray(headers.getProperty(name), ", "); + public Iterator getHeaders(String name) throws IOException { + String[] values = StringUtils.delimitedListToStringArray(headers.get(name), ", "); return Arrays.asList(values).iterator(); } } diff --git a/core/src/test/java/org/springframework/ws/transport/MockTransportOutputStream.java b/core/src/test/java/org/springframework/ws/transport/MockTransportOutputStream.java index 030d8d2b..9c2f325e 100644 --- a/core/src/test/java/org/springframework/ws/transport/MockTransportOutputStream.java +++ b/core/src/test/java/org/springframework/ws/transport/MockTransportOutputStream.java @@ -25,7 +25,7 @@ import org.springframework.util.Assert; public class MockTransportOutputStream extends TransportOutputStream { - private Map headers = new HashMap(); + private Map headers = new HashMap(); private OutputStream outputStream; @@ -39,7 +39,7 @@ public class MockTransportOutputStream extends TransportOutputStream { return outputStream; } - public Map getHeaders() { + public Map getHeaders() { return headers; } diff --git a/core/src/test/java/org/springframework/ws/transport/http/AbstractHttpWebServiceMessageSenderIntegrationTestCase.java b/core/src/test/java/org/springframework/ws/transport/http/AbstractHttpWebServiceMessageSenderIntegrationTestCase.java index bc72be81..446683c8 100644 --- a/core/src/test/java/org/springframework/ws/transport/http/AbstractHttpWebServiceMessageSenderIntegrationTestCase.java +++ b/core/src/test/java/org/springframework/ws/transport/http/AbstractHttpWebServiceMessageSenderIntegrationTestCase.java @@ -36,12 +36,7 @@ import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMResult; -import org.custommonkey.xmlunit.XMLTestCase; -import org.custommonkey.xmlunit.XMLUnit; -import org.mortbay.jetty.Server; -import org.mortbay.jetty.servlet.Context; -import org.mortbay.jetty.servlet.ServletHolder; - +import org.springframework.beans.factory.InitializingBean; import org.springframework.util.FileCopyUtils; import org.springframework.ws.WebServiceMessage; import org.springframework.ws.WebServiceMessageFactory; @@ -51,7 +46,12 @@ import org.springframework.ws.transport.FaultAwareWebServiceConnection; import org.springframework.ws.transport.WebServiceConnection; import org.springframework.xml.transform.StringResult; import org.springframework.xml.transform.StringSource; -import org.springframework.beans.factory.InitializingBean; + +import org.custommonkey.xmlunit.XMLTestCase; +import org.custommonkey.xmlunit.XMLUnit; +import org.mortbay.jetty.Server; +import org.mortbay.jetty.servlet.Context; +import org.mortbay.jetty.servlet.ServletHolder; public abstract class AbstractHttpWebServiceMessageSenderIntegrationTestCase extends XMLTestCase { @@ -244,7 +244,7 @@ public abstract class AbstractHttpWebServiceMessageSenderIntegrationTestCase ext } public void setContentLength(int contentLength) { - this.contentLength = new Integer(contentLength); + this.contentLength = contentLength; } public void setResponse(boolean response) { @@ -273,7 +273,7 @@ public abstract class AbstractHttpWebServiceMessageSenderIntegrationTestCase ext if (response) { httpServletResponse.setContentType("text/xml"); if (contentLength != null) { - httpServletResponse.setContentLength(contentLength.intValue()); + httpServletResponse.setContentLength(contentLength); } if (gzip) { httpServletResponse.addHeader("Content-Encoding", "gzip"); diff --git a/support/src/main/java/org/springframework/ws/transport/http/HttpExchangeConnection.java b/support/src/main/java/org/springframework/ws/transport/http/HttpExchangeConnection.java index 06a92601..e91a3f79 100644 --- a/support/src/main/java/org/springframework/ws/transport/http/HttpExchangeConnection.java +++ b/support/src/main/java/org/springframework/ws/transport/http/HttpExchangeConnection.java @@ -26,8 +26,6 @@ import java.util.Collections; import java.util.Iterator; import java.util.List; -import com.sun.net.httpserver.HttpExchange; - import org.springframework.util.Assert; import org.springframework.util.FileCopyUtils; import org.springframework.ws.WebServiceMessage; @@ -36,6 +34,8 @@ import org.springframework.ws.transport.EndpointAwareWebServiceConnection; import org.springframework.ws.transport.FaultAwareWebServiceConnection; import org.springframework.ws.transport.WebServiceConnection; +import com.sun.net.httpserver.HttpExchange; + /** * Implementation of {@link WebServiceConnection} that is based on the Java 6 HttpServer {@link HttpExchange}. * @@ -93,14 +93,14 @@ public class HttpExchangeConnection extends AbstractReceiverConnection */ @Override - protected Iterator getRequestHeaderNames() throws IOException { + protected Iterator getRequestHeaderNames() throws IOException { return httpExchange.getRequestHeaders().keySet().iterator(); } @Override - protected Iterator getRequestHeaders(String name) throws IOException { - List headers = httpExchange.getRequestHeaders().get(name); - return headers != null ? headers.iterator() : Collections.EMPTY_LIST.iterator(); + protected Iterator getRequestHeaders(String name) throws IOException { + List headers = httpExchange.getRequestHeaders().get(name); + return headers != null ? headers.iterator() : Collections.emptyList().iterator(); } @Override diff --git a/support/src/main/java/org/springframework/ws/transport/jms/JmsReceiverConnection.java b/support/src/main/java/org/springframework/ws/transport/jms/JmsReceiverConnection.java index e226d997..00386075 100644 --- a/support/src/main/java/org/springframework/ws/transport/jms/JmsReceiverConnection.java +++ b/support/src/main/java/org/springframework/ws/transport/jms/JmsReceiverConnection.java @@ -137,7 +137,7 @@ public class JmsReceiverConnection extends AbstractReceiverConnection { */ @Override - protected Iterator getRequestHeaderNames() throws IOException { + protected Iterator getRequestHeaderNames() throws IOException { try { return JmsTransportUtils.getHeaderNames(requestMessage); } @@ -147,7 +147,7 @@ public class JmsReceiverConnection extends AbstractReceiverConnection { } @Override - protected Iterator getRequestHeaders(String name) throws IOException { + protected Iterator getRequestHeaders(String name) throws IOException { try { return JmsTransportUtils.getHeaders(requestMessage, name); } diff --git a/support/src/main/java/org/springframework/ws/transport/jms/JmsSenderConnection.java b/support/src/main/java/org/springframework/ws/transport/jms/JmsSenderConnection.java index 3bc97d6c..b32af74a 100644 --- a/support/src/main/java/org/springframework/ws/transport/jms/JmsSenderConnection.java +++ b/support/src/main/java/org/springframework/ws/transport/jms/JmsSenderConnection.java @@ -290,7 +290,7 @@ public class JmsSenderConnection extends AbstractSenderConnection { } @Override - protected Iterator getResponseHeaderNames() throws IOException { + protected Iterator getResponseHeaderNames() throws IOException { try { return JmsTransportUtils.getHeaderNames(responseMessage); } @@ -300,7 +300,7 @@ public class JmsSenderConnection extends AbstractSenderConnection { } @Override - protected Iterator getResponseHeaders(String name) throws IOException { + protected Iterator getResponseHeaders(String name) throws IOException { try { return JmsTransportUtils.getHeaders(responseMessage, name); } diff --git a/support/src/main/java/org/springframework/ws/transport/jms/support/JmsTransportUtils.java b/support/src/main/java/org/springframework/ws/transport/jms/support/JmsTransportUtils.java index df1bbf00..20cd1772 100644 --- a/support/src/main/java/org/springframework/ws/transport/jms/support/JmsTransportUtils.java +++ b/support/src/main/java/org/springframework/ws/transport/jms/support/JmsTransportUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2007 the original author or authors. + * Copyright 2005-2010 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -130,9 +130,9 @@ public abstract class JmsTransportUtils { * Returns an iterator over all header names in the given message. Delegates to {@link * #jmsPropertyToHeader(String)}. */ - public static Iterator getHeaderNames(Message message) throws JMSException { + public static Iterator getHeaderNames(Message message) throws JMSException { Enumeration properties = message.getPropertyNames(); - List results = new ArrayList(); + List results = new ArrayList(); while (properties.hasMoreElements()) { String property = (String) properties.nextElement(); if (property.startsWith(JmsTransportConstants.PROPERTY_PREFIX)) { @@ -147,14 +147,14 @@ public abstract class JmsTransportUtils { * Returns an iterator over all the header values of the given message and header name. Delegates to {@link * #headerToJmsProperty(String)}. */ - public static Iterator getHeaders(Message message, String name) throws JMSException { + public static Iterator getHeaders(Message message, String name) throws JMSException { String propertyName = headerToJmsProperty(name); String value = message.getStringProperty(propertyName); if (value != null) { return Collections.singletonList(value).iterator(); } else { - return Collections.EMPTY_LIST.iterator(); + return Collections.emptyList().iterator(); } } diff --git a/support/src/main/java/org/springframework/ws/transport/mail/MailReceiverConnection.java b/support/src/main/java/org/springframework/ws/transport/mail/MailReceiverConnection.java index ca08ddcf..bdceccef 100644 --- a/support/src/main/java/org/springframework/ws/transport/mail/MailReceiverConnection.java +++ b/support/src/main/java/org/springframework/ws/transport/mail/MailReceiverConnection.java @@ -134,9 +134,9 @@ public class MailReceiverConnection extends AbstractReceiverConnection { */ @Override - protected Iterator getRequestHeaderNames() throws IOException { + protected Iterator getRequestHeaderNames() throws IOException { try { - List headers = new ArrayList(); + List headers = new ArrayList(); Enumeration enumeration = requestMessage.getAllHeaders(); while (enumeration.hasMoreElements()) { Header header = (Header) enumeration.nextElement(); @@ -150,7 +150,7 @@ public class MailReceiverConnection extends AbstractReceiverConnection { } @Override - protected Iterator getRequestHeaders(String name) throws IOException { + protected Iterator getRequestHeaders(String name) throws IOException { try { String[] headers = requestMessage.getHeader(name); return Arrays.asList(headers).iterator(); diff --git a/support/src/main/java/org/springframework/ws/transport/mail/MailSenderConnection.java b/support/src/main/java/org/springframework/ws/transport/mail/MailSenderConnection.java index 0107a1d6..d2a53e12 100644 --- a/support/src/main/java/org/springframework/ws/transport/mail/MailSenderConnection.java +++ b/support/src/main/java/org/springframework/ws/transport/mail/MailSenderConnection.java @@ -45,9 +45,6 @@ import javax.mail.internet.MimeMessage; import javax.mail.search.HeaderTerm; import javax.mail.search.SearchTerm; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import org.springframework.util.Assert; import org.springframework.ws.WebServiceMessage; import org.springframework.ws.transport.AbstractSenderConnection; @@ -55,6 +52,9 @@ import org.springframework.ws.transport.TransportConstants; import org.springframework.ws.transport.WebServiceConnection; import org.springframework.ws.transport.mail.support.MailTransportUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + /** * Implementation of {@link WebServiceConnection} that is used for client-side Mail access. Exposes a {@link Message} * request and response message. @@ -255,9 +255,9 @@ public class MailSenderConnection extends AbstractSenderConnection { } @Override - protected Iterator getResponseHeaderNames() throws IOException { + protected Iterator getResponseHeaderNames() throws IOException { try { - List headers = new ArrayList(); + List headers = new ArrayList(); Enumeration enumeration = responseMessage.getAllHeaders(); while (enumeration.hasMoreElements()) { Header header = (Header) enumeration.nextElement(); @@ -271,7 +271,7 @@ public class MailSenderConnection extends AbstractSenderConnection { } @Override - protected Iterator getResponseHeaders(String name) throws IOException { + protected Iterator getResponseHeaders(String name) throws IOException { try { String[] headers = responseMessage.getHeader(name); return Arrays.asList(headers).iterator();