Camel component docs
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a4aeefef Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a4aeefef Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a4aeefef Branch: refs/heads/master Commit: a4aeefef5a1b48168026837d662a0a2e24e3f667 Parents: 28b096a Author: Claus Ibsen <davscl...@apache.org> Authored: Tue Jan 5 18:10:25 2016 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Tue Jan 5 18:10:25 2016 +0100 ---------------------------------------------------------------------- .../camel/component/http/HttpComponent.java | 12 ++++++--- .../camel/component/http/HttpEndpoint.java | 27 ++++++++++++++++++++ 2 files changed, 35 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/a4aeefef/components/camel-http/src/main/java/org/apache/camel/component/http/HttpComponent.java ---------------------------------------------------------------------- diff --git a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpComponent.java b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpComponent.java index 3106f2d..9caa8cc 100644 --- a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpComponent.java +++ b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpComponent.java @@ -203,14 +203,17 @@ public class HttpComponent extends HttpCommonComponent { UrlRewrite urlRewrite = resolveAndRemoveReferenceParameter(parameters, "urlRewrite", UrlRewrite.class); // http client can be configured from URI options HttpClientParams clientParams = new HttpClientParams(); - IntrospectionSupport.setProperties(clientParams, parameters, "httpClient."); + Map<String, Object> httpClientOptions = IntrospectionSupport.extractProperties(parameters, "httpClient."); + IntrospectionSupport.setProperties(clientParams, httpClientOptions); // validate that we could resolve all httpClient. parameters as this component is lenient - validateParameters(uri, parameters, "httpClient."); + validateParameters(uri, httpClientOptions, null); // http client can be configured from URI options HttpConnectionManagerParams connectionManagerParams = new HttpConnectionManagerParams(); // setup the httpConnectionManagerParams - IntrospectionSupport.setProperties(connectionManagerParams, parameters, "httpConnectionManager."); - validateParameters(uri, parameters, "httpConnectionManager."); + Map<String, Object> httpConnectionManagerOptions = IntrospectionSupport.extractProperties(parameters, "httpConnectionManager."); + IntrospectionSupport.setProperties(connectionManagerParams, httpConnectionManagerOptions); + // validate that we could resolve all httpConnectionManager. parameters as this component is lenient + validateParameters(uri, httpConnectionManagerOptions, null); // make sure the component httpConnectionManager is take effect HttpConnectionManager thisHttpConnectionManager = httpConnectionManager; if (thisHttpConnectionManager == null) { @@ -280,6 +283,7 @@ public class HttpComponent extends HttpCommonComponent { } } endpoint.setHttpUri(httpUri); + endpoint.setHttpClientOptions(httpClientOptions); return endpoint; } http://git-wip-us.apache.org/repos/asf/camel/blob/a4aeefef/components/camel-http/src/main/java/org/apache/camel/component/http/HttpEndpoint.java ---------------------------------------------------------------------- diff --git a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpEndpoint.java b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpEndpoint.java index b7ff65b..153774b 100644 --- a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpEndpoint.java +++ b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpEndpoint.java @@ -21,6 +21,7 @@ import java.net.URISyntaxException; import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import java.util.Map; import org.apache.camel.Consumer; import org.apache.camel.PollingConsumer; @@ -51,7 +52,12 @@ public class HttpEndpoint extends HttpCommonEndpoint { @UriParam(label = "advanced") private HttpClientConfigurer httpClientConfigurer; + @UriParam(label = "advanced", prefix = "httpClient.", multiValue = true) + private Map<String, Object> httpClientOptions; + @UriParam(label = "advanced") private HttpConnectionManager httpConnectionManager; + @UriParam(label = "advanced", prefix = "httpConnectionManager.", multiValue = true) + private Map<String, Object> httpConnectionManagerOptions; public HttpEndpoint() { } @@ -185,4 +191,25 @@ public class HttpEndpoint extends HttpCommonEndpoint { this.httpConnectionManager = httpConnectionManager; } + public Map<String, Object> getHttpClientOptions() { + return httpClientOptions; + } + + /** + * To configure the HttpClient using the key/values from the Map. + */ + public void setHttpClientOptions(Map<String, Object> httpClientOptions) { + this.httpClientOptions = httpClientOptions; + } + + public Map<String, Object> getHttpConnectionManagerOptions() { + return httpConnectionManagerOptions; + } + + /** + * To configure the HttpConnectionManager using the key/values from the Map. + */ + public void setHttpConnectionManagerOptions(Map<String, Object> httpConnectionManagerOptions) { + this.httpConnectionManagerOptions = httpConnectionManagerOptions; + } }