You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bv...@apache.org on 2012/02/11 11:31:32 UTC
svn commit: r1243023 -
/camel/trunk/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
Author: bvahdat
Date: Sat Feb 11 10:31:31 2012
New Revision: 1243023
URL: http://svn.apache.org/viewvc?rev=1243023&view=rev
Log:
CAMEL-4998: Optimized the logic in that now we do NOT touch the spring WebServiceTemplate at all if no timeout configuration is given.
Modified:
camel/trunk/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
Modified: camel/trunk/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java?rev=1243023&r1=1243022&r2=1243023&view=diff
==============================================================================
--- camel/trunk/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java (original)
+++ camel/trunk/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java Sat Feb 11 10:31:31 2012
@@ -90,6 +90,10 @@ public class SpringWebserviceProducer ex
}
private static void populateTimeout(SpringWebserviceConfiguration configuration) throws Exception {
+ if (!(configuration.getTimeout() > -1)) {
+ return;
+ }
+
WebServiceTemplate webServiceTemplate = configuration.getWebServiceTemplate();
List<WebServiceMessageSender> webServiceMessageSenders = new ArrayList<WebServiceMessageSender>(webServiceTemplate.getMessageSenders().length);
Collections.addAll(webServiceMessageSenders, webServiceTemplate.getMessageSenders());
@@ -99,41 +103,26 @@ public class SpringWebserviceProducer ex
setTimeOut(commonsHttpMessageSender, configuration);
} else if (webServiceMessageSender instanceof HttpsUrlConnectionMessageSender) {
// Should check HttpsUrlConnectionMessageSender beforehand as it extends HttpUrlConnectionMessageSender
- if (shouldConsiderTimeoutConfiguration(configuration)) {
- webServiceMessageSenders.remove(webServiceMessageSender);
- webServiceMessageSenders.add(new CamelHttpsUrlConnectionMessageSender(configuration, (HttpsUrlConnectionMessageSender) webServiceMessageSender));
- }
+ webServiceMessageSenders.remove(webServiceMessageSender);
+ webServiceMessageSenders.add(new CamelHttpsUrlConnectionMessageSender(configuration, (HttpsUrlConnectionMessageSender) webServiceMessageSender));
} else if (webServiceMessageSender instanceof HttpUrlConnectionMessageSender) {
- if (shouldConsiderTimeoutConfiguration(configuration)) {
- webServiceMessageSenders.remove(webServiceMessageSender);
- webServiceMessageSenders.add(new CamelHttpUrlConnectionMessageSender(configuration, (HttpUrlConnectionMessageSender) webServiceMessageSender));
- }
+ webServiceMessageSenders.remove(webServiceMessageSender);
+ webServiceMessageSenders.add(new CamelHttpUrlConnectionMessageSender(configuration, (HttpUrlConnectionMessageSender) webServiceMessageSender));
} else {
- // Warn only if the timeout option has been explicitly specified
- if (shouldConsiderTimeoutConfiguration(configuration)) {
- // For example this will be the case during unit-testing with the net.javacrumbs.spring-ws-test API
- LOG.warn("Ignoring the timeout option for {} as there's no provided API available to populate it!", webServiceMessageSender);
- }
+ // For example this will be the case during unit-testing with the net.javacrumbs.spring-ws-test API
+ LOG.warn("Ignoring the timeout option for {} as there's no provided API available to populate it!", webServiceMessageSender);
}
}
webServiceTemplate.setMessageSenders(webServiceMessageSenders.toArray(new WebServiceMessageSender[webServiceMessageSenders.size()]));
}
- private static boolean shouldConsiderTimeoutConfiguration(SpringWebserviceConfiguration configuration) {
- return configuration.getTimeout() > -1;
- }
-
private static void setTimeOut(HttpURLConnection connection, SpringWebserviceConfiguration configuration) {
- if (shouldConsiderTimeoutConfiguration(configuration)) {
- connection.setReadTimeout(configuration.getTimeout());
- }
+ connection.setReadTimeout(configuration.getTimeout());
}
private static void setTimeOut(CommonsHttpMessageSender commonsHttpMessageSender, SpringWebserviceConfiguration configuration) {
- if (shouldConsiderTimeoutConfiguration(configuration)) {
- commonsHttpMessageSender.setReadTimeout(configuration.getTimeout());
- }
+ commonsHttpMessageSender.setReadTimeout(configuration.getTimeout());
}
protected static class CamelHttpUrlConnectionMessageSender extends HttpUrlConnectionMessageSender {
@@ -166,7 +155,7 @@ public class SpringWebserviceProducer ex
// Populate the single acceptGzipEncoding property beforehand as we have got a proper set/is API for it
setAcceptGzipEncoding(webServiceMessageSender.isAcceptGzipEncoding());
- // Populate the fields having no getXXX available on HttpsUrlConnectionMessageSender
+ // Populate the fields not having getXXX available on HttpsUrlConnectionMessageSender
ReflectionHelper.doWithFields(HttpsUrlConnectionMessageSender.class, new FieldCallback() {
@Override