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 <claus.ib...@gmail.com>
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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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: &lt;code&gt;boolean&lt;/code&gt; 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

Reply via email to