This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new 35154b6 CAMEL-16262: camel-http - Add disable options on component to
turn features off
35154b6 is described below
commit 35154b63ed206c3738446c84fa9785dc63c81930
Author: Claus Ibsen <[email protected]>
AuthorDate: Thu Feb 25 19:06:48 2021 +0100
CAMEL-16262: camel-http - Add disable options on component to turn features
off
---
.../apache/camel/catalog/docs/http-component.adoc | 9 +-
.../component/http/HttpComponentConfigurer.java | 42 ++++++++
.../org/apache/camel/component/http/http.json | 7 ++
.../org/apache/camel/component/http/https.json | 7 ++
.../camel-http/src/main/docs/http-component.adoc | 9 +-
.../apache/camel/component/http/HttpComponent.java | 93 ++++++++++++++++
.../component/dsl/HttpComponentBuilderFactory.java | 120 +++++++++++++++++++++
.../dsl/HttpsComponentBuilderFactory.java | 120 +++++++++++++++++++++
.../modules/ROOT/pages/http-component.adoc | 9 +-
9 files changed, 413 insertions(+), 3 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/http-component.adoc
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/http-component.adoc
index 66cfa4b..cc642c4 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/http-component.adoc
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/http-component.adoc
@@ -54,7 +54,7 @@ route, use the xref:jetty-component.adoc[Jetty Component]
instead.
// component options: START
-The HTTP component supports 27 options, which are listed below.
+The HTTP component supports 34 options, which are listed below.
@@ -65,15 +65,22 @@ The HTTP component supports 27 options, which are listed
below.
| *lazyStartProducer* (producer) | Whether the producer should be started lazy
(on the first message). By starting lazy you can use this to allow CamelContext
and routes to startup in situations where a producer may otherwise fail during
starting and cause the route to fail being started. By deferring this startup
to be lazy then the startup failure can be handled during routing messages via
Camel's routing error handlers. Beware that when the first message is processed
then creating and [...]
| *responsePayloadStreaming{zwsp}Threshold* (producer) | This threshold in
bytes controls whether the response payload should be stored in memory as a
byte array or be streaming based. Set this to -1 to always use streaming mode.
| 8192 | int
| *allowJavaSerializedObject* (advanced) | Whether to allow java serialization
when a request uses context-type=application/x-java-serialized-object. This is
by default turned off. If you enable this then be aware that Java will
deserialize the incoming data from the request to Java and that can be a
potential security risk. | false | boolean
+| *authCachingDisabled* (advanced) | Disables authentication scheme caching |
false | boolean
+| *automaticRetriesDisabled* (advanced) | Disables automatic request recovery
and re-execution | false | boolean
| *autowiredEnabled* (advanced) | Whether autowiring is enabled. This is used
for automatic autowiring options (the option must be marked as autowired) by
looking up in the registry to find if there is a single instance of matching
type, which then gets configured on the component. This can be used for
automatic configuring JDBC data sources, JMS connection factories, AWS Clients,
etc. | true | boolean
| *clientConnectionManager* (advanced) | To use a custom and shared
HttpClientConnectionManager to manage connections. If this has been configured
then this is always used for all endpoints created by this component. | |
HttpClientConnectionManager
| *connectionsPerRoute* (advanced) | The maximum number of connections per
route. | 20 | int
+| *connectionStateDisabled* (advanced) | Disables connection state tracking |
false | boolean
| *connectionTimeToLive* (advanced) | The time for connection to live, the
time unit is millisecond, the default value is always keep alive. | | long
+| *contentCompressionDisabled* (advanced) | Disables automatic content
decompression | false | boolean
+| *cookieManagementDisabled* (advanced) | Disables state (cookie) management |
false | boolean
+| *defaultUserAgentDisabled* (advanced) | Disables the default user agent set
by this builder if none has been provided by the user | false | boolean
| *httpBinding* (advanced) | To use a custom HttpBinding to control the
mapping between Camel message and HttpClient. | | HttpBinding
| *httpClientConfigurer* (advanced) | To use the custom HttpClientConfigurer
to perform configuration of the HttpClient that will be used. | |
HttpClientConfigurer
| *httpConfiguration* (advanced) | To use the shared HttpConfiguration as base
configuration. | | HttpConfiguration
| *httpContext* (advanced) | To use a custom
org.apache.http.protocol.HttpContext when executing requests. | | HttpContext
| *maxTotalConnections* (advanced) | The maximum number of connections. | 200
| int
+| *redirectHandlingDisabled* (advanced) | Disables automatic redirect handling
| false | boolean
| *headerFilterStrategy* (filter) | To use a custom
org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel
message. | | HeaderFilterStrategy
| *proxyAuthDomain* (proxy) | Proxy authentication domain to use | | String
| *proxyAuthHost* (proxy) | Proxy authentication host | | String
diff --git
a/components/camel-http/src/generated/java/org/apache/camel/component/http/HttpComponentConfigurer.java
b/components/camel-http/src/generated/java/org/apache/camel/component/http/HttpComponentConfigurer.java
index c99b399..4996f9c 100644
---
a/components/camel-http/src/generated/java/org/apache/camel/component/http/HttpComponentConfigurer.java
+++
b/components/camel-http/src/generated/java/org/apache/camel/component/http/HttpComponentConfigurer.java
@@ -23,6 +23,10 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
switch (ignoreCase ? name.toLowerCase() : name) {
case "allowjavaserializedobject":
case "allowJavaSerializedObject":
target.setAllowJavaSerializedObject(property(camelContext, boolean.class,
value)); return true;
+ case "authcachingdisabled":
+ case "authCachingDisabled":
target.setAuthCachingDisabled(property(camelContext, boolean.class, value));
return true;
+ case "automaticretriesdisabled":
+ case "automaticRetriesDisabled":
target.setAutomaticRetriesDisabled(property(camelContext, boolean.class,
value)); return true;
case "autowiredenabled":
case "autowiredEnabled":
target.setAutowiredEnabled(property(camelContext, boolean.class, value));
return true;
case "clientconnectionmanager":
@@ -31,12 +35,20 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
case "connectTimeout": target.setConnectTimeout(property(camelContext,
int.class, value)); return true;
case "connectionrequesttimeout":
case "connectionRequestTimeout":
target.setConnectionRequestTimeout(property(camelContext, int.class, value));
return true;
+ case "connectionstatedisabled":
+ case "connectionStateDisabled":
target.setConnectionStateDisabled(property(camelContext, boolean.class,
value)); return true;
case "connectiontimetolive":
case "connectionTimeToLive":
target.setConnectionTimeToLive(property(camelContext, long.class, value));
return true;
case "connectionsperroute":
case "connectionsPerRoute":
target.setConnectionsPerRoute(property(camelContext, int.class, value)); return
true;
+ case "contentcompressiondisabled":
+ case "contentCompressionDisabled":
target.setContentCompressionDisabled(property(camelContext, boolean.class,
value)); return true;
+ case "cookiemanagementdisabled":
+ case "cookieManagementDisabled":
target.setCookieManagementDisabled(property(camelContext, boolean.class,
value)); return true;
case "cookiestore":
case "cookieStore": target.setCookieStore(property(camelContext,
org.apache.http.client.CookieStore.class, value)); return true;
+ case "defaultuseragentdisabled":
+ case "defaultUserAgentDisabled":
target.setDefaultUserAgentDisabled(property(camelContext, boolean.class,
value)); return true;
case "headerfilterstrategy":
case "headerFilterStrategy":
target.setHeaderFilterStrategy(property(camelContext,
org.apache.camel.spi.HeaderFilterStrategy.class, value)); return true;
case "httpbinding":
@@ -65,6 +77,8 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
case "proxyAuthPort": target.setProxyAuthPort(property(camelContext,
java.lang.Integer.class, value)); return true;
case "proxyauthusername":
case "proxyAuthUsername":
target.setProxyAuthUsername(property(camelContext, java.lang.String.class,
value)); return true;
+ case "redirecthandlingdisabled":
+ case "redirectHandlingDisabled":
target.setRedirectHandlingDisabled(property(camelContext, boolean.class,
value)); return true;
case "responsepayloadstreamingthreshold":
case "responsePayloadStreamingThreshold":
target.setResponsePayloadStreamingThreshold(property(camelContext, int.class,
value)); return true;
case "sockettimeout":
@@ -84,6 +98,10 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
switch (ignoreCase ? name.toLowerCase() : name) {
case "allowjavaserializedobject":
case "allowJavaSerializedObject": return boolean.class;
+ case "authcachingdisabled":
+ case "authCachingDisabled": return boolean.class;
+ case "automaticretriesdisabled":
+ case "automaticRetriesDisabled": return boolean.class;
case "autowiredenabled":
case "autowiredEnabled": return boolean.class;
case "clientconnectionmanager":
@@ -92,12 +110,20 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
case "connectTimeout": return int.class;
case "connectionrequesttimeout":
case "connectionRequestTimeout": return int.class;
+ case "connectionstatedisabled":
+ case "connectionStateDisabled": return boolean.class;
case "connectiontimetolive":
case "connectionTimeToLive": return long.class;
case "connectionsperroute":
case "connectionsPerRoute": return int.class;
+ case "contentcompressiondisabled":
+ case "contentCompressionDisabled": return boolean.class;
+ case "cookiemanagementdisabled":
+ case "cookieManagementDisabled": return boolean.class;
case "cookiestore":
case "cookieStore": return org.apache.http.client.CookieStore.class;
+ case "defaultuseragentdisabled":
+ case "defaultUserAgentDisabled": return boolean.class;
case "headerfilterstrategy":
case "headerFilterStrategy": return
org.apache.camel.spi.HeaderFilterStrategy.class;
case "httpbinding":
@@ -126,6 +152,8 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
case "proxyAuthPort": return java.lang.Integer.class;
case "proxyauthusername":
case "proxyAuthUsername": return java.lang.String.class;
+ case "redirecthandlingdisabled":
+ case "redirectHandlingDisabled": return boolean.class;
case "responsepayloadstreamingthreshold":
case "responsePayloadStreamingThreshold": return int.class;
case "sockettimeout":
@@ -146,6 +174,10 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
switch (ignoreCase ? name.toLowerCase() : name) {
case "allowjavaserializedobject":
case "allowJavaSerializedObject": return
target.isAllowJavaSerializedObject();
+ case "authcachingdisabled":
+ case "authCachingDisabled": return target.isAuthCachingDisabled();
+ case "automaticretriesdisabled":
+ case "automaticRetriesDisabled": return
target.isAutomaticRetriesDisabled();
case "autowiredenabled":
case "autowiredEnabled": return target.isAutowiredEnabled();
case "clientconnectionmanager":
@@ -154,12 +186,20 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
case "connectTimeout": return target.getConnectTimeout();
case "connectionrequesttimeout":
case "connectionRequestTimeout": return
target.getConnectionRequestTimeout();
+ case "connectionstatedisabled":
+ case "connectionStateDisabled": return
target.isConnectionStateDisabled();
case "connectiontimetolive":
case "connectionTimeToLive": return target.getConnectionTimeToLive();
case "connectionsperroute":
case "connectionsPerRoute": return target.getConnectionsPerRoute();
+ case "contentcompressiondisabled":
+ case "contentCompressionDisabled": return
target.isContentCompressionDisabled();
+ case "cookiemanagementdisabled":
+ case "cookieManagementDisabled": return
target.isCookieManagementDisabled();
case "cookiestore":
case "cookieStore": return target.getCookieStore();
+ case "defaultuseragentdisabled":
+ case "defaultUserAgentDisabled": return
target.isDefaultUserAgentDisabled();
case "headerfilterstrategy":
case "headerFilterStrategy": return target.getHeaderFilterStrategy();
case "httpbinding":
@@ -188,6 +228,8 @@ public class HttpComponentConfigurer extends
PropertyConfigurerSupport implement
case "proxyAuthPort": return target.getProxyAuthPort();
case "proxyauthusername":
case "proxyAuthUsername": return target.getProxyAuthUsername();
+ case "redirecthandlingdisabled":
+ case "redirectHandlingDisabled": return
target.isRedirectHandlingDisabled();
case "responsepayloadstreamingthreshold":
case "responsePayloadStreamingThreshold": return
target.getResponsePayloadStreamingThreshold();
case "sockettimeout":
diff --git
a/components/camel-http/src/generated/resources/org/apache/camel/component/http/http.json
b/components/camel-http/src/generated/resources/org/apache/camel/component/http/http.json
index c7ac369..10af0bc 100644
---
a/components/camel-http/src/generated/resources/org/apache/camel/component/http/http.json
+++
b/components/camel-http/src/generated/resources/org/apache/camel/component/http/http.json
@@ -28,15 +28,22 @@
"lazyStartProducer": { "kind": "property", "displayName": "Lazy Start
Producer", "group": "producer", "label": "producer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "description": "Whether the producer
should be started lazy (on the first message). By starting lazy you can use
this to allow CamelContext and routes to startup in situations where a producer
may otherwise fail during star [...]
"responsePayloadStreamingThreshold": { "kind": "property", "displayName":
"Response Payload Streaming Threshold", "group": "producer", "label":
"producer", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192,
"description": "This threshold in bytes controls whether the response payload
should be stored in memory as a byte array or be streaming based. Set this to
-1 to always use streaming mode." },
"allowJavaSerializedObject": { "kind": "property", "displayName": "Allow
Java Serialized Object", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether to allow java serialization when a request uses
context-type=application\/x-java-serialized-object. This is by default turned
off. If you enable this then be aware that Java will des [...]
+ "authCachingDisabled": { "kind": "property", "displayName": "Auth Caching
Disabled", "group": "advanced", "label": "advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "description": "Disables authentication
scheme caching" },
+ "automaticRetriesDisabled": { "kind": "property", "displayName":
"Automatic Retries Disabled", "group": "advanced", "label": "advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Disables automatic request recovery and re-execution" },
"autowiredEnabled": { "kind": "property", "displayName": "Autowired
Enabled", "group": "advanced", "label": "advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "Whether autowiring is
enabled. This is used for automatic autowiring options (the option must be
marked as autowired) by looking up in the registry to find if there is a single
instance of matching type, which t [...]
"clientConnectionManager": { "kind": "property", "displayName": "Client
Connection Manager", "group": "advanced", "label": "advanced", "required":
false, "type": "object", "javaType":
"org.apache.http.conn.HttpClientConnectionManager", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a custom and shared
HttpClientConnectionManager to manage connections. If this has been configured
then this is always used for all endpoints created by this component." },
"connectionsPerRoute": { "kind": "property", "displayName": "Connections
Per Route", "group": "advanced", "label": "advanced", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 20, "description": "The maximum number of
connections per route." },
+ "connectionStateDisabled": { "kind": "property", "displayName":
"Connection State Disabled", "group": "advanced", "label": "advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Disables connection state tracking" },
"connectionTimeToLive": { "kind": "property", "displayName": "Connection
Time To Live", "group": "advanced", "label": "advanced", "required": false,
"type": "integer", "javaType": "long", "deprecated": false, "autowired": false,
"secret": false, "description": "The time for connection to live, the time unit
is millisecond, the default value is always keep alive." },
+ "contentCompressionDisabled": { "kind": "property", "displayName":
"Content Compression Disabled", "group": "advanced", "label": "advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Disables automatic content decompression" },
+ "cookieManagementDisabled": { "kind": "property", "displayName": "Cookie
Management Disabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Disables state (cookie) management" },
+ "defaultUserAgentDisabled": { "kind": "property", "displayName": "Default
User Agent Disabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Disables the default user agent set by this builder if none has been provided
by the user" },
"httpBinding": { "kind": "property", "displayName": "Http Binding",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.apache.camel.http.common.HttpBinding", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a custom
HttpBinding to control the mapping between Camel message and HttpClient." },
"httpClientConfigurer": { "kind": "property", "displayName": "Http Client
Configurer", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.http.HttpClientConfigurer", "deprecated": false,
"autowired": false, "secret": false, "description": "To use the custom
HttpClientConfigurer to perform configuration of the HttpClient that will be
used." },
"httpConfiguration": { "kind": "property", "displayName": "Http
Configuration", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType": "org.apache.camel.http.common.HttpConfiguration",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use the shared HttpConfiguration as base configuration." },
"httpContext": { "kind": "property", "displayName": "Http Context",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.apache.http.protocol.HttpContext", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a custom
org.apache.http.protocol.HttpContext when executing requests." },
"maxTotalConnections": { "kind": "property", "displayName": "Max Total
Connections", "group": "advanced", "label": "advanced", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 200, "description": "The maximum number of
connections." },
+ "redirectHandlingDisabled": { "kind": "property", "displayName": "Redirect
Handling Disabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Disables automatic redirect handling" },
"headerFilterStrategy": { "kind": "property", "displayName": "Header
Filter Strategy", "group": "filter", "label": "filter", "required": false,
"type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and
from Camel message." },
"proxyAuthDomain": { "kind": "property", "displayName": "Proxy Auth
Domain", "group": "proxy", "label": "producer,proxy", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Proxy authentication
domain to use" },
"proxyAuthHost": { "kind": "property", "displayName": "Proxy Auth Host",
"group": "proxy", "label": "producer,proxy", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "description": "Proxy authentication host" },
diff --git
a/components/camel-http/src/generated/resources/org/apache/camel/component/http/https.json
b/components/camel-http/src/generated/resources/org/apache/camel/component/http/https.json
index 39e9c0c..f109756 100644
---
a/components/camel-http/src/generated/resources/org/apache/camel/component/http/https.json
+++
b/components/camel-http/src/generated/resources/org/apache/camel/component/http/https.json
@@ -28,15 +28,22 @@
"lazyStartProducer": { "kind": "property", "displayName": "Lazy Start
Producer", "group": "producer", "label": "producer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "description": "Whether the producer
should be started lazy (on the first message). By starting lazy you can use
this to allow CamelContext and routes to startup in situations where a producer
may otherwise fail during star [...]
"responsePayloadStreamingThreshold": { "kind": "property", "displayName":
"Response Payload Streaming Threshold", "group": "producer", "label":
"producer", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192,
"description": "This threshold in bytes controls whether the response payload
should be stored in memory as a byte array or be streaming based. Set this to
-1 to always use streaming mode." },
"allowJavaSerializedObject": { "kind": "property", "displayName": "Allow
Java Serialized Object", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether to allow java serialization when a request uses
context-type=application\/x-java-serialized-object. This is by default turned
off. If you enable this then be aware that Java will des [...]
+ "authCachingDisabled": { "kind": "property", "displayName": "Auth Caching
Disabled", "group": "advanced", "label": "advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "description": "Disables authentication
scheme caching" },
+ "automaticRetriesDisabled": { "kind": "property", "displayName":
"Automatic Retries Disabled", "group": "advanced", "label": "advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Disables automatic request recovery and re-execution" },
"autowiredEnabled": { "kind": "property", "displayName": "Autowired
Enabled", "group": "advanced", "label": "advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "Whether autowiring is
enabled. This is used for automatic autowiring options (the option must be
marked as autowired) by looking up in the registry to find if there is a single
instance of matching type, which t [...]
"clientConnectionManager": { "kind": "property", "displayName": "Client
Connection Manager", "group": "advanced", "label": "advanced", "required":
false, "type": "object", "javaType":
"org.apache.http.conn.HttpClientConnectionManager", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a custom and shared
HttpClientConnectionManager to manage connections. If this has been configured
then this is always used for all endpoints created by this component." },
"connectionsPerRoute": { "kind": "property", "displayName": "Connections
Per Route", "group": "advanced", "label": "advanced", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 20, "description": "The maximum number of
connections per route." },
+ "connectionStateDisabled": { "kind": "property", "displayName":
"Connection State Disabled", "group": "advanced", "label": "advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Disables connection state tracking" },
"connectionTimeToLive": { "kind": "property", "displayName": "Connection
Time To Live", "group": "advanced", "label": "advanced", "required": false,
"type": "integer", "javaType": "long", "deprecated": false, "autowired": false,
"secret": false, "description": "The time for connection to live, the time unit
is millisecond, the default value is always keep alive." },
+ "contentCompressionDisabled": { "kind": "property", "displayName":
"Content Compression Disabled", "group": "advanced", "label": "advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Disables automatic content decompression" },
+ "cookieManagementDisabled": { "kind": "property", "displayName": "Cookie
Management Disabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Disables state (cookie) management" },
+ "defaultUserAgentDisabled": { "kind": "property", "displayName": "Default
User Agent Disabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Disables the default user agent set by this builder if none has been provided
by the user" },
"httpBinding": { "kind": "property", "displayName": "Http Binding",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.apache.camel.http.common.HttpBinding", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a custom
HttpBinding to control the mapping between Camel message and HttpClient." },
"httpClientConfigurer": { "kind": "property", "displayName": "Http Client
Configurer", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.http.HttpClientConfigurer", "deprecated": false,
"autowired": false, "secret": false, "description": "To use the custom
HttpClientConfigurer to perform configuration of the HttpClient that will be
used." },
"httpConfiguration": { "kind": "property", "displayName": "Http
Configuration", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType": "org.apache.camel.http.common.HttpConfiguration",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use the shared HttpConfiguration as base configuration." },
"httpContext": { "kind": "property", "displayName": "Http Context",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.apache.http.protocol.HttpContext", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a custom
org.apache.http.protocol.HttpContext when executing requests." },
"maxTotalConnections": { "kind": "property", "displayName": "Max Total
Connections", "group": "advanced", "label": "advanced", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 200, "description": "The maximum number of
connections." },
+ "redirectHandlingDisabled": { "kind": "property", "displayName": "Redirect
Handling Disabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Disables automatic redirect handling" },
"headerFilterStrategy": { "kind": "property", "displayName": "Header
Filter Strategy", "group": "filter", "label": "filter", "required": false,
"type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and
from Camel message." },
"proxyAuthDomain": { "kind": "property", "displayName": "Proxy Auth
Domain", "group": "proxy", "label": "producer,proxy", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Proxy authentication
domain to use" },
"proxyAuthHost": { "kind": "property", "displayName": "Proxy Auth Host",
"group": "proxy", "label": "producer,proxy", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "description": "Proxy authentication host" },
diff --git a/components/camel-http/src/main/docs/http-component.adoc
b/components/camel-http/src/main/docs/http-component.adoc
index 66cfa4b..cc642c4 100644
--- a/components/camel-http/src/main/docs/http-component.adoc
+++ b/components/camel-http/src/main/docs/http-component.adoc
@@ -54,7 +54,7 @@ route, use the xref:jetty-component.adoc[Jetty Component]
instead.
// component options: START
-The HTTP component supports 27 options, which are listed below.
+The HTTP component supports 34 options, which are listed below.
@@ -65,15 +65,22 @@ The HTTP component supports 27 options, which are listed
below.
| *lazyStartProducer* (producer) | Whether the producer should be started lazy
(on the first message). By starting lazy you can use this to allow CamelContext
and routes to startup in situations where a producer may otherwise fail during
starting and cause the route to fail being started. By deferring this startup
to be lazy then the startup failure can be handled during routing messages via
Camel's routing error handlers. Beware that when the first message is processed
then creating and [...]
| *responsePayloadStreaming{zwsp}Threshold* (producer) | This threshold in
bytes controls whether the response payload should be stored in memory as a
byte array or be streaming based. Set this to -1 to always use streaming mode.
| 8192 | int
| *allowJavaSerializedObject* (advanced) | Whether to allow java serialization
when a request uses context-type=application/x-java-serialized-object. This is
by default turned off. If you enable this then be aware that Java will
deserialize the incoming data from the request to Java and that can be a
potential security risk. | false | boolean
+| *authCachingDisabled* (advanced) | Disables authentication scheme caching |
false | boolean
+| *automaticRetriesDisabled* (advanced) | Disables automatic request recovery
and re-execution | false | boolean
| *autowiredEnabled* (advanced) | Whether autowiring is enabled. This is used
for automatic autowiring options (the option must be marked as autowired) by
looking up in the registry to find if there is a single instance of matching
type, which then gets configured on the component. This can be used for
automatic configuring JDBC data sources, JMS connection factories, AWS Clients,
etc. | true | boolean
| *clientConnectionManager* (advanced) | To use a custom and shared
HttpClientConnectionManager to manage connections. If this has been configured
then this is always used for all endpoints created by this component. | |
HttpClientConnectionManager
| *connectionsPerRoute* (advanced) | The maximum number of connections per
route. | 20 | int
+| *connectionStateDisabled* (advanced) | Disables connection state tracking |
false | boolean
| *connectionTimeToLive* (advanced) | The time for connection to live, the
time unit is millisecond, the default value is always keep alive. | | long
+| *contentCompressionDisabled* (advanced) | Disables automatic content
decompression | false | boolean
+| *cookieManagementDisabled* (advanced) | Disables state (cookie) management |
false | boolean
+| *defaultUserAgentDisabled* (advanced) | Disables the default user agent set
by this builder if none has been provided by the user | false | boolean
| *httpBinding* (advanced) | To use a custom HttpBinding to control the
mapping between Camel message and HttpClient. | | HttpBinding
| *httpClientConfigurer* (advanced) | To use the custom HttpClientConfigurer
to perform configuration of the HttpClient that will be used. | |
HttpClientConfigurer
| *httpConfiguration* (advanced) | To use the shared HttpConfiguration as base
configuration. | | HttpConfiguration
| *httpContext* (advanced) | To use a custom
org.apache.http.protocol.HttpContext when executing requests. | | HttpContext
| *maxTotalConnections* (advanced) | The maximum number of connections. | 200
| int
+| *redirectHandlingDisabled* (advanced) | Disables automatic redirect handling
| false | boolean
| *headerFilterStrategy* (filter) | To use a custom
org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel
message. | | HeaderFilterStrategy
| *proxyAuthDomain* (proxy) | Proxy authentication domain to use | | String
| *proxyAuthHost* (proxy) | Proxy authentication host | | String
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 5a08987..568c53f 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
@@ -152,6 +152,21 @@ public class HttpComponent extends HttpCommonComponent
implements RestProducerFa
description = "This threshold in bytes controls whether the
response payload"
+ " should be stored in memory as a byte array or
be streaming based. Set this to -1 to always use streaming mode.")
protected int responsePayloadStreamingThreshold = 8192;
+ @Metadata(label = "advanced", description = "Disables automatic redirect
handling")
+ private boolean redirectHandlingDisabled;
+ @Metadata(label = "advanced", description = "Disables automatic request
recovery and re-execution")
+ private boolean automaticRetriesDisabled;
+ @Metadata(label = "advanced", description = "Disables automatic content
decompression")
+ private boolean contentCompressionDisabled;
+ @Metadata(label = "advanced", description = "Disables state (cookie)
management")
+ private boolean cookieManagementDisabled;
+ @Metadata(label = "advanced", description = "Disables authentication
scheme caching")
+ private boolean authCachingDisabled;
+ @Metadata(label = "advanced", description = "Disables connection state
tracking")
+ private boolean connectionStateDisabled;
+ @Metadata(label = "advanced",
+ description = "Disables the default user agent set by this
builder if none has been provided by the user")
+ private boolean defaultUserAgentDisabled;
public HttpComponent() {
this(HttpEndpoint.class);
@@ -419,6 +434,28 @@ public class HttpComponent extends HttpCommonComponent
implements RestProducerFa
// validate that we could resolve all httpClient. parameters as this
component is lenient
validateParameters(uri, httpClientOptions, null);
+ if (redirectHandlingDisabled) {
+ clientBuilder.disableRedirectHandling();
+ }
+ if (automaticRetriesDisabled) {
+ clientBuilder.disableRedirectHandling();
+ }
+ if (contentCompressionDisabled) {
+ clientBuilder.disableContentCompression();
+ }
+ if (cookieManagementDisabled) {
+ clientBuilder.disableCookieManagement();
+ }
+ if (authCachingDisabled) {
+ clientBuilder.disableAuthCaching();
+ }
+ if (connectionStateDisabled) {
+ clientBuilder.disableConnectionState();
+ }
+ if (defaultUserAgentDisabled) {
+ clientBuilder.disableDefaultUserAgent();
+ }
+
return clientBuilder;
}
@@ -777,6 +814,62 @@ public class HttpComponent extends HttpCommonComponent
implements RestProducerFa
this.responsePayloadStreamingThreshold =
responsePayloadStreamingThreshold;
}
+ public boolean isRedirectHandlingDisabled() {
+ return redirectHandlingDisabled;
+ }
+
+ public void setRedirectHandlingDisabled(boolean redirectHandlingDisabled) {
+ this.redirectHandlingDisabled = redirectHandlingDisabled;
+ }
+
+ public boolean isAutomaticRetriesDisabled() {
+ return automaticRetriesDisabled;
+ }
+
+ public void setAutomaticRetriesDisabled(boolean automaticRetriesDisabled) {
+ this.automaticRetriesDisabled = automaticRetriesDisabled;
+ }
+
+ public boolean isContentCompressionDisabled() {
+ return contentCompressionDisabled;
+ }
+
+ public void setContentCompressionDisabled(boolean
contentCompressionDisabled) {
+ this.contentCompressionDisabled = contentCompressionDisabled;
+ }
+
+ public boolean isCookieManagementDisabled() {
+ return cookieManagementDisabled;
+ }
+
+ public void setCookieManagementDisabled(boolean cookieManagementDisabled) {
+ this.cookieManagementDisabled = cookieManagementDisabled;
+ }
+
+ public boolean isAuthCachingDisabled() {
+ return authCachingDisabled;
+ }
+
+ public void setAuthCachingDisabled(boolean authCachingDisabled) {
+ this.authCachingDisabled = authCachingDisabled;
+ }
+
+ public boolean isConnectionStateDisabled() {
+ return connectionStateDisabled;
+ }
+
+ public void setConnectionStateDisabled(boolean connectionStateDisabled) {
+ this.connectionStateDisabled = connectionStateDisabled;
+ }
+
+ public boolean isDefaultUserAgentDisabled() {
+ return defaultUserAgentDisabled;
+ }
+
+ public void setDefaultUserAgentDisabled(boolean defaultUserAgentDisabled) {
+ this.defaultUserAgentDisabled = defaultUserAgentDisabled;
+ }
+
@Override
public void doStart() throws Exception {
super.doStart();
diff --git
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpComponentBuilderFactory.java
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpComponentBuilderFactory.java
index aa03d71..baed693 100644
---
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpComponentBuilderFactory.java
+++
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpComponentBuilderFactory.java
@@ -130,6 +130,38 @@ public interface HttpComponentBuilderFactory {
return this;
}
/**
+ * Disables authentication scheme caching.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param authCachingDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder authCachingDisabled(
+ boolean authCachingDisabled) {
+ doSetProperty("authCachingDisabled", authCachingDisabled);
+ return this;
+ }
+ /**
+ * Disables automatic request recovery and re-execution.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param automaticRetriesDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder automaticRetriesDisabled(
+ boolean automaticRetriesDisabled) {
+ doSetProperty("automaticRetriesDisabled",
automaticRetriesDisabled);
+ return this;
+ }
+ /**
* Whether autowiring is enabled. This is used for automatic autowiring
* options (the option must be marked as autowired) by looking up in
the
* registry to find if there is a single instance of matching type,
@@ -183,6 +215,22 @@ public interface HttpComponentBuilderFactory {
return this;
}
/**
+ * Disables connection state tracking.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param connectionStateDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder connectionStateDisabled(
+ boolean connectionStateDisabled) {
+ doSetProperty("connectionStateDisabled", connectionStateDisabled);
+ return this;
+ }
+ /**
* The time for connection to live, the time unit is millisecond, the
* default value is always keep alive.
*
@@ -199,6 +247,55 @@ public interface HttpComponentBuilderFactory {
return this;
}
/**
+ * Disables automatic content decompression.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param contentCompressionDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder contentCompressionDisabled(
+ boolean contentCompressionDisabled) {
+ doSetProperty("contentCompressionDisabled",
contentCompressionDisabled);
+ return this;
+ }
+ /**
+ * Disables state (cookie) management.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param cookieManagementDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder cookieManagementDisabled(
+ boolean cookieManagementDisabled) {
+ doSetProperty("cookieManagementDisabled",
cookieManagementDisabled);
+ return this;
+ }
+ /**
+ * Disables the default user agent set by this builder if none has been
+ * provided by the user.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param defaultUserAgentDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder defaultUserAgentDisabled(
+ boolean defaultUserAgentDisabled) {
+ doSetProperty("defaultUserAgentDisabled",
defaultUserAgentDisabled);
+ return this;
+ }
+ /**
* To use a custom HttpBinding to control the mapping between Camel
* message and HttpClient.
*
@@ -282,6 +379,22 @@ public interface HttpComponentBuilderFactory {
return this;
}
/**
+ * Disables automatic redirect handling.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param redirectHandlingDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpComponentBuilder redirectHandlingDisabled(
+ boolean redirectHandlingDisabled) {
+ doSetProperty("redirectHandlingDisabled",
redirectHandlingDisabled);
+ return this;
+ }
+ /**
* To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter
* header to and from Camel message.
*
@@ -536,15 +649,22 @@ public interface HttpComponentBuilderFactory {
case "lazyStartProducer": ((HttpComponent)
component).setLazyStartProducer((boolean) value); return true;
case "responsePayloadStreamingThreshold": ((HttpComponent)
component).setResponsePayloadStreamingThreshold((int) value); return true;
case "allowJavaSerializedObject": ((HttpComponent)
component).setAllowJavaSerializedObject((boolean) value); return true;
+ case "authCachingDisabled": ((HttpComponent)
component).setAuthCachingDisabled((boolean) value); return true;
+ case "automaticRetriesDisabled": ((HttpComponent)
component).setAutomaticRetriesDisabled((boolean) value); return true;
case "autowiredEnabled": ((HttpComponent)
component).setAutowiredEnabled((boolean) value); return true;
case "clientConnectionManager": ((HttpComponent)
component).setClientConnectionManager((org.apache.http.conn.HttpClientConnectionManager)
value); return true;
case "connectionsPerRoute": ((HttpComponent)
component).setConnectionsPerRoute((int) value); return true;
+ case "connectionStateDisabled": ((HttpComponent)
component).setConnectionStateDisabled((boolean) value); return true;
case "connectionTimeToLive": ((HttpComponent)
component).setConnectionTimeToLive((long) value); return true;
+ case "contentCompressionDisabled": ((HttpComponent)
component).setContentCompressionDisabled((boolean) value); return true;
+ case "cookieManagementDisabled": ((HttpComponent)
component).setCookieManagementDisabled((boolean) value); return true;
+ case "defaultUserAgentDisabled": ((HttpComponent)
component).setDefaultUserAgentDisabled((boolean) value); return true;
case "httpBinding": ((HttpComponent)
component).setHttpBinding((org.apache.camel.http.common.HttpBinding) value);
return true;
case "httpClientConfigurer": ((HttpComponent)
component).setHttpClientConfigurer((org.apache.camel.component.http.HttpClientConfigurer)
value); return true;
case "httpConfiguration": ((HttpComponent)
component).setHttpConfiguration((org.apache.camel.http.common.HttpConfiguration)
value); return true;
case "httpContext": ((HttpComponent)
component).setHttpContext((org.apache.http.protocol.HttpContext) value); return
true;
case "maxTotalConnections": ((HttpComponent)
component).setMaxTotalConnections((int) value); return true;
+ case "redirectHandlingDisabled": ((HttpComponent)
component).setRedirectHandlingDisabled((boolean) value); return true;
case "headerFilterStrategy": ((HttpComponent)
component).setHeaderFilterStrategy((org.apache.camel.spi.HeaderFilterStrategy)
value); return true;
case "proxyAuthDomain": ((HttpComponent)
component).setProxyAuthDomain((java.lang.String) value); return true;
case "proxyAuthHost": ((HttpComponent)
component).setProxyAuthHost((java.lang.String) value); return true;
diff --git
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpsComponentBuilderFactory.java
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpsComponentBuilderFactory.java
index 4d20d49..333d3a5 100644
---
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpsComponentBuilderFactory.java
+++
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HttpsComponentBuilderFactory.java
@@ -131,6 +131,38 @@ public interface HttpsComponentBuilderFactory {
return this;
}
/**
+ * Disables authentication scheme caching.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param authCachingDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder authCachingDisabled(
+ boolean authCachingDisabled) {
+ doSetProperty("authCachingDisabled", authCachingDisabled);
+ return this;
+ }
+ /**
+ * Disables automatic request recovery and re-execution.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param automaticRetriesDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder automaticRetriesDisabled(
+ boolean automaticRetriesDisabled) {
+ doSetProperty("automaticRetriesDisabled",
automaticRetriesDisabled);
+ return this;
+ }
+ /**
* Whether autowiring is enabled. This is used for automatic autowiring
* options (the option must be marked as autowired) by looking up in
the
* registry to find if there is a single instance of matching type,
@@ -185,6 +217,22 @@ public interface HttpsComponentBuilderFactory {
return this;
}
/**
+ * Disables connection state tracking.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param connectionStateDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder connectionStateDisabled(
+ boolean connectionStateDisabled) {
+ doSetProperty("connectionStateDisabled", connectionStateDisabled);
+ return this;
+ }
+ /**
* The time for connection to live, the time unit is millisecond, the
* default value is always keep alive.
*
@@ -201,6 +249,55 @@ public interface HttpsComponentBuilderFactory {
return this;
}
/**
+ * Disables automatic content decompression.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param contentCompressionDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder contentCompressionDisabled(
+ boolean contentCompressionDisabled) {
+ doSetProperty("contentCompressionDisabled",
contentCompressionDisabled);
+ return this;
+ }
+ /**
+ * Disables state (cookie) management.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param cookieManagementDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder cookieManagementDisabled(
+ boolean cookieManagementDisabled) {
+ doSetProperty("cookieManagementDisabled",
cookieManagementDisabled);
+ return this;
+ }
+ /**
+ * Disables the default user agent set by this builder if none has been
+ * provided by the user.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param defaultUserAgentDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder defaultUserAgentDisabled(
+ boolean defaultUserAgentDisabled) {
+ doSetProperty("defaultUserAgentDisabled",
defaultUserAgentDisabled);
+ return this;
+ }
+ /**
* To use a custom HttpBinding to control the mapping between Camel
* message and HttpClient.
*
@@ -285,6 +382,22 @@ public interface HttpsComponentBuilderFactory {
return this;
}
/**
+ * Disables automatic redirect handling.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: advanced
+ *
+ * @param redirectHandlingDisabled the value to set
+ * @return the dsl builder
+ */
+ default HttpsComponentBuilder redirectHandlingDisabled(
+ boolean redirectHandlingDisabled) {
+ doSetProperty("redirectHandlingDisabled",
redirectHandlingDisabled);
+ return this;
+ }
+ /**
* To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter
* header to and from Camel message.
*
@@ -539,15 +652,22 @@ public interface HttpsComponentBuilderFactory {
case "lazyStartProducer": ((HttpComponent)
component).setLazyStartProducer((boolean) value); return true;
case "responsePayloadStreamingThreshold": ((HttpComponent)
component).setResponsePayloadStreamingThreshold((int) value); return true;
case "allowJavaSerializedObject": ((HttpComponent)
component).setAllowJavaSerializedObject((boolean) value); return true;
+ case "authCachingDisabled": ((HttpComponent)
component).setAuthCachingDisabled((boolean) value); return true;
+ case "automaticRetriesDisabled": ((HttpComponent)
component).setAutomaticRetriesDisabled((boolean) value); return true;
case "autowiredEnabled": ((HttpComponent)
component).setAutowiredEnabled((boolean) value); return true;
case "clientConnectionManager": ((HttpComponent)
component).setClientConnectionManager((org.apache.http.conn.HttpClientConnectionManager)
value); return true;
case "connectionsPerRoute": ((HttpComponent)
component).setConnectionsPerRoute((int) value); return true;
+ case "connectionStateDisabled": ((HttpComponent)
component).setConnectionStateDisabled((boolean) value); return true;
case "connectionTimeToLive": ((HttpComponent)
component).setConnectionTimeToLive((long) value); return true;
+ case "contentCompressionDisabled": ((HttpComponent)
component).setContentCompressionDisabled((boolean) value); return true;
+ case "cookieManagementDisabled": ((HttpComponent)
component).setCookieManagementDisabled((boolean) value); return true;
+ case "defaultUserAgentDisabled": ((HttpComponent)
component).setDefaultUserAgentDisabled((boolean) value); return true;
case "httpBinding": ((HttpComponent)
component).setHttpBinding((org.apache.camel.http.common.HttpBinding) value);
return true;
case "httpClientConfigurer": ((HttpComponent)
component).setHttpClientConfigurer((org.apache.camel.component.http.HttpClientConfigurer)
value); return true;
case "httpConfiguration": ((HttpComponent)
component).setHttpConfiguration((org.apache.camel.http.common.HttpConfiguration)
value); return true;
case "httpContext": ((HttpComponent)
component).setHttpContext((org.apache.http.protocol.HttpContext) value); return
true;
case "maxTotalConnections": ((HttpComponent)
component).setMaxTotalConnections((int) value); return true;
+ case "redirectHandlingDisabled": ((HttpComponent)
component).setRedirectHandlingDisabled((boolean) value); return true;
case "headerFilterStrategy": ((HttpComponent)
component).setHeaderFilterStrategy((org.apache.camel.spi.HeaderFilterStrategy)
value); return true;
case "proxyAuthDomain": ((HttpComponent)
component).setProxyAuthDomain((java.lang.String) value); return true;
case "proxyAuthHost": ((HttpComponent)
component).setProxyAuthHost((java.lang.String) value); return true;
diff --git a/docs/components/modules/ROOT/pages/http-component.adoc
b/docs/components/modules/ROOT/pages/http-component.adoc
index 3ed7bdb..6274022 100644
--- a/docs/components/modules/ROOT/pages/http-component.adoc
+++ b/docs/components/modules/ROOT/pages/http-component.adoc
@@ -56,7 +56,7 @@ route, use the xref:jetty-component.adoc[Jetty Component]
instead.
// component options: START
-The HTTP component supports 27 options, which are listed below.
+The HTTP component supports 34 options, which are listed below.
@@ -67,15 +67,22 @@ The HTTP component supports 27 options, which are listed
below.
| *lazyStartProducer* (producer) | Whether the producer should be started lazy
(on the first message). By starting lazy you can use this to allow CamelContext
and routes to startup in situations where a producer may otherwise fail during
starting and cause the route to fail being started. By deferring this startup
to be lazy then the startup failure can be handled during routing messages via
Camel's routing error handlers. Beware that when the first message is processed
then creating and [...]
| *responsePayloadStreaming{zwsp}Threshold* (producer) | This threshold in
bytes controls whether the response payload should be stored in memory as a
byte array or be streaming based. Set this to -1 to always use streaming mode.
| 8192 | int
| *allowJavaSerializedObject* (advanced) | Whether to allow java serialization
when a request uses context-type=application/x-java-serialized-object. This is
by default turned off. If you enable this then be aware that Java will
deserialize the incoming data from the request to Java and that can be a
potential security risk. | false | boolean
+| *authCachingDisabled* (advanced) | Disables authentication scheme caching |
false | boolean
+| *automaticRetriesDisabled* (advanced) | Disables automatic request recovery
and re-execution | false | boolean
| *autowiredEnabled* (advanced) | Whether autowiring is enabled. This is used
for automatic autowiring options (the option must be marked as autowired) by
looking up in the registry to find if there is a single instance of matching
type, which then gets configured on the component. This can be used for
automatic configuring JDBC data sources, JMS connection factories, AWS Clients,
etc. | true | boolean
| *clientConnectionManager* (advanced) | To use a custom and shared
HttpClientConnectionManager to manage connections. If this has been configured
then this is always used for all endpoints created by this component. | |
HttpClientConnectionManager
| *connectionsPerRoute* (advanced) | The maximum number of connections per
route. | 20 | int
+| *connectionStateDisabled* (advanced) | Disables connection state tracking |
false | boolean
| *connectionTimeToLive* (advanced) | The time for connection to live, the
time unit is millisecond, the default value is always keep alive. | | long
+| *contentCompressionDisabled* (advanced) | Disables automatic content
decompression | false | boolean
+| *cookieManagementDisabled* (advanced) | Disables state (cookie) management |
false | boolean
+| *defaultUserAgentDisabled* (advanced) | Disables the default user agent set
by this builder if none has been provided by the user | false | boolean
| *httpBinding* (advanced) | To use a custom HttpBinding to control the
mapping between Camel message and HttpClient. | | HttpBinding
| *httpClientConfigurer* (advanced) | To use the custom HttpClientConfigurer
to perform configuration of the HttpClient that will be used. | |
HttpClientConfigurer
| *httpConfiguration* (advanced) | To use the shared HttpConfiguration as base
configuration. | | HttpConfiguration
| *httpContext* (advanced) | To use a custom
org.apache.http.protocol.HttpContext when executing requests. | | HttpContext
| *maxTotalConnections* (advanced) | The maximum number of connections. | 200
| int
+| *redirectHandlingDisabled* (advanced) | Disables automatic redirect handling
| false | boolean
| *headerFilterStrategy* (filter) | To use a custom
org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel
message. | | HeaderFilterStrategy
| *proxyAuthDomain* (proxy) | Proxy authentication domain to use | | String
| *proxyAuthHost* (proxy) | Proxy authentication host | | String