This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 044985257b4 CAMEL-20110: camel-jetty - Allow to configure idleTimeout
on jetty server (#11982)
044985257b4 is described below
commit 044985257b469fa4b5361a19bd822ae63d7f619f
Author: Claus Ibsen <[email protected]>
AuthorDate: Mon Nov 13 20:37:53 2023 +0100
CAMEL-20110: camel-jetty - Allow to configure idleTimeout on jetty server
(#11982)
---
.../org/apache/camel/catalog/components/jetty.json | 15 +++++----
.../camel/component/jetty/JettyHttpEndpoint.java | 16 ++++++++++
.../jetty11/JettyHttp11EndpointUriFactory.java | 3 +-
.../jetty11/JettyHttpEndpoint11Configurer.java | 6 ++++
.../org/apache/camel/component/jetty11/jetty.json | 15 +++++----
.../component/jetty11/JettyHttpComponent11.java | 4 ++-
.../dsl/JettyHttp11EndpointBuilderFactory.java | 37 ++++++++++++++++++++++
7 files changed, 80 insertions(+), 16 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jetty.json
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jetty.json
index f50af3cbdf0..3ab7ccec6ea 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jetty.json
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jetty.json
@@ -87,12 +87,13 @@
"filterInitParameters": { "index": 24, "kind": "parameter", "displayName":
"Filter Init Parameters", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"java.util.Map<java.lang.String, java.lang.String>", "prefix": "filter.",
"multiValue": true, "deprecated": false, "autowired": false, "secret": false,
"description": "Configuration of the filter init parameters. These parameters
will be applied to the filter list before star [...]
"filters": { "index": 25, "kind": "parameter", "displayName": "Filters",
"group": "consumer (advanced)", "label": "consumer,advanced", "required":
false, "type": "array", "javaType": "java.util.List<jakarta.servlet.Filter>",
"deprecated": false, "autowired": false, "secret": false, "description":
"Allows using a custom filters which is putted into a list and can be find in
the Registry. Multiple values can be separated by comma." },
"handlers": { "index": 26, "kind": "parameter", "displayName": "Handlers",
"group": "consumer (advanced)", "label": "consumer,advanced", "required":
false, "type": "array", "javaType":
"java.util.List<org.eclipse.jetty.server.Handler>", "deprecated": false,
"autowired": false, "secret": false, "description": "Specifies a
comma-delimited set of Handler instances to lookup in your Registry. These
handlers are added to the Jetty servlet context (for example, to add security).
Important: [...]
- "mapHttpMessageBody": { "index": 27, "kind": "parameter", "displayName":
"Map Http Message Body", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Body of the exchange will be mapped to HTTP body. Setting this to false will
avoid the HTTP mapping." },
- "mapHttpMessageFormUrlEncodedBody": { "index": 28, "kind": "parameter",
"displayName": "Map Http Message Form Url Encoded Body", "group": "consumer
(advanced)", "label": "consumer,advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "If this option is true
then IN exchange Form Encoded body of the exchange will be mapped to HTTP.
Setting this to false will avoid the HTTP [...]
- "mapHttpMessageHeaders": { "index": 29, "kind": "parameter",
"displayName": "Map Http Message Headers", "group": "consumer (advanced)",
"label": "consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Headers of the exchange will be mapped to HTTP headers. Setting this to false
will avoid the HTTP Headers mapping." },
- "multipartFilter": { "index": 30, "kind": "parameter", "displayName":
"Multipart Filter", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"jakarta.servlet.Filter", "deprecated": false, "autowired": false, "secret":
false, "description": "Allows using a custom multipart filter. Note: setting
multipartFilterRef forces the value of enableMultipartFilter to true." },
- "optionsEnabled": { "index": 31, "kind": "parameter", "displayName":
"Options Enabled", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Specifies whether to enable HTTP OPTIONS
for this Servlet consumer. By default OPTIONS is turned off." },
- "traceEnabled": { "index": 32, "kind": "parameter", "displayName": "Trace
Enabled", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Specifies whether to enable HTTP TRACE for this Servlet
consumer. By default TRACE is turned off." },
- "sslContextParameters": { "index": 33, "kind": "parameter", "displayName":
"Ssl Context Parameters", "group": "security", "label": "security", "required":
false, "type": "object", "javaType":
"org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false,
"autowired": false, "secret": false, "description": "To configure security
using SSLContextParameters" }
+ "idleTimeout": { "index": 27, "kind": "parameter", "displayName": "Idle
Timeout", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "integer", "javaType": "long", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": -1, "description": "The
max idle time (in milli seconds) is applied to an HTTP request for IO
operations and delayed dispatch. Idle time 0 implies an infinite timeout, -1
(default) implies no HTTP channel timeout [...]
+ "mapHttpMessageBody": { "index": 28, "kind": "parameter", "displayName":
"Map Http Message Body", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Body of the exchange will be mapped to HTTP body. Setting this to false will
avoid the HTTP mapping." },
+ "mapHttpMessageFormUrlEncodedBody": { "index": 29, "kind": "parameter",
"displayName": "Map Http Message Form Url Encoded Body", "group": "consumer
(advanced)", "label": "consumer,advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "If this option is true
then IN exchange Form Encoded body of the exchange will be mapped to HTTP.
Setting this to false will avoid the HTTP [...]
+ "mapHttpMessageHeaders": { "index": 30, "kind": "parameter",
"displayName": "Map Http Message Headers", "group": "consumer (advanced)",
"label": "consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Headers of the exchange will be mapped to HTTP headers. Setting this to false
will avoid the HTTP Headers mapping." },
+ "multipartFilter": { "index": 31, "kind": "parameter", "displayName":
"Multipart Filter", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"jakarta.servlet.Filter", "deprecated": false, "autowired": false, "secret":
false, "description": "Allows using a custom multipart filter. Note: setting
multipartFilterRef forces the value of enableMultipartFilter to true." },
+ "optionsEnabled": { "index": 32, "kind": "parameter", "displayName":
"Options Enabled", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Specifies whether to enable HTTP OPTIONS
for this Servlet consumer. By default OPTIONS is turned off." },
+ "traceEnabled": { "index": 33, "kind": "parameter", "displayName": "Trace
Enabled", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Specifies whether to enable HTTP TRACE for this Servlet
consumer. By default TRACE is turned off." },
+ "sslContextParameters": { "index": 34, "kind": "parameter", "displayName":
"Ssl Context Parameters", "group": "security", "label": "security", "required":
false, "type": "object", "javaType":
"org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false,
"autowired": false, "secret": false, "description": "To configure security
using SSLContextParameters" }
}
}
diff --git
a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpEndpoint.java
b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpEndpoint.java
index e55de8d45b2..c4209181e24 100644
---
a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpEndpoint.java
+++
b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpEndpoint.java
@@ -80,6 +80,11 @@ public abstract class JettyHttpEndpoint extends
HttpCommonEndpoint {
@UriParam(label = "security",
description = "To configure security using SSLContextParameters")
private SSLContextParameters sslContextParameters;
+ @UriParam(label = "consumer,advanced", defaultValue = "-1",
+ description = "The max idle time (in milli seconds) is applied
to an HTTP request for IO operations and delayed dispatch."
+ +
+ " Idle time 0 implies an infinite timeout, -1
(default) implies no HTTP channel timeout and the connection timeout is used
instead.")
+ private long idleTimeout = -1;
protected JettyHttpEndpoint(JettyHttpComponent component, String uri, URI
httpURL) {
super(uri, component, httpURL);
@@ -236,6 +241,17 @@ public abstract class JettyHttpEndpoint extends
HttpCommonEndpoint {
this.sslContextParameters = sslContextParameters;
}
+ public long getIdleTimeout() {
+ return idleTimeout;
+ }
+
+ /**
+ * The max idle time is applied to an HTTP request for IO operations and
delayed dispatch.
+ */
+ public void setIdleTimeout(long idleTimeout) {
+ this.idleTimeout = idleTimeout;
+ }
+
public Map<String, String> getFilterInitParameters() {
return filterInitParameters;
}
diff --git
a/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttp11EndpointUriFactory.java
b/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttp11EndpointUriFactory.java
index 599f870212f..e879f3cad18 100644
---
a/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttp11EndpointUriFactory.java
+++
b/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttp11EndpointUriFactory.java
@@ -21,7 +21,7 @@ public class JettyHttp11EndpointUriFactory extends
org.apache.camel.support.comp
private static final Set<String> SECRET_PROPERTY_NAMES;
private static final Set<String> MULTI_VALUE_PREFIXES;
static {
- Set<String> props = new HashSet<>(34);
+ Set<String> props = new HashSet<>(35);
props.add("async");
props.add("bridgeErrorHandler");
props.add("chunked");
@@ -40,6 +40,7 @@ public class JettyHttp11EndpointUriFactory extends
org.apache.camel.support.comp
props.add("httpBinding");
props.add("httpMethodRestrict");
props.add("httpUri");
+ props.add("idleTimeout");
props.add("logException");
props.add("mapHttpMessageBody");
props.add("mapHttpMessageFormUrlEncodedBody");
diff --git
a/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttpEndpoint11Configurer.java
b/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttpEndpoint11Configurer.java
index 58553803a42..e1c82dd8e0e 100644
---
a/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttpEndpoint11Configurer.java
+++
b/components/camel-jetty/src/generated/java/org/apache/camel/component/jetty11/JettyHttpEndpoint11Configurer.java
@@ -51,6 +51,8 @@ public class JettyHttpEndpoint11Configurer extends
PropertyConfigurerSupport imp
case "httpBinding": target.setHttpBinding(property(camelContext,
org.apache.camel.http.common.HttpBinding.class, value)); return true;
case "httpmethodrestrict":
case "httpMethodRestrict":
target.setHttpMethodRestrict(property(camelContext, java.lang.String.class,
value)); return true;
+ case "idletimeout":
+ case "idleTimeout": target.setIdleTimeout(property(camelContext,
long.class, value)); return true;
case "logexception":
case "logException": target.setLogException(property(camelContext,
boolean.class, value)); return true;
case "maphttpmessagebody":
@@ -120,6 +122,8 @@ public class JettyHttpEndpoint11Configurer extends
PropertyConfigurerSupport imp
case "httpBinding": return
org.apache.camel.http.common.HttpBinding.class;
case "httpmethodrestrict":
case "httpMethodRestrict": return java.lang.String.class;
+ case "idletimeout":
+ case "idleTimeout": return long.class;
case "logexception":
case "logException": return boolean.class;
case "maphttpmessagebody":
@@ -190,6 +194,8 @@ public class JettyHttpEndpoint11Configurer extends
PropertyConfigurerSupport imp
case "httpBinding": return target.getHttpBinding();
case "httpmethodrestrict":
case "httpMethodRestrict": return target.getHttpMethodRestrict();
+ case "idletimeout":
+ case "idleTimeout": return target.getIdleTimeout();
case "logexception":
case "logException": return target.isLogException();
case "maphttpmessagebody":
diff --git
a/components/camel-jetty/src/generated/resources/org/apache/camel/component/jetty11/jetty.json
b/components/camel-jetty/src/generated/resources/org/apache/camel/component/jetty11/jetty.json
index f50af3cbdf0..3ab7ccec6ea 100644
---
a/components/camel-jetty/src/generated/resources/org/apache/camel/component/jetty11/jetty.json
+++
b/components/camel-jetty/src/generated/resources/org/apache/camel/component/jetty11/jetty.json
@@ -87,12 +87,13 @@
"filterInitParameters": { "index": 24, "kind": "parameter", "displayName":
"Filter Init Parameters", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"java.util.Map<java.lang.String, java.lang.String>", "prefix": "filter.",
"multiValue": true, "deprecated": false, "autowired": false, "secret": false,
"description": "Configuration of the filter init parameters. These parameters
will be applied to the filter list before star [...]
"filters": { "index": 25, "kind": "parameter", "displayName": "Filters",
"group": "consumer (advanced)", "label": "consumer,advanced", "required":
false, "type": "array", "javaType": "java.util.List<jakarta.servlet.Filter>",
"deprecated": false, "autowired": false, "secret": false, "description":
"Allows using a custom filters which is putted into a list and can be find in
the Registry. Multiple values can be separated by comma." },
"handlers": { "index": 26, "kind": "parameter", "displayName": "Handlers",
"group": "consumer (advanced)", "label": "consumer,advanced", "required":
false, "type": "array", "javaType":
"java.util.List<org.eclipse.jetty.server.Handler>", "deprecated": false,
"autowired": false, "secret": false, "description": "Specifies a
comma-delimited set of Handler instances to lookup in your Registry. These
handlers are added to the Jetty servlet context (for example, to add security).
Important: [...]
- "mapHttpMessageBody": { "index": 27, "kind": "parameter", "displayName":
"Map Http Message Body", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Body of the exchange will be mapped to HTTP body. Setting this to false will
avoid the HTTP mapping." },
- "mapHttpMessageFormUrlEncodedBody": { "index": 28, "kind": "parameter",
"displayName": "Map Http Message Form Url Encoded Body", "group": "consumer
(advanced)", "label": "consumer,advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "If this option is true
then IN exchange Form Encoded body of the exchange will be mapped to HTTP.
Setting this to false will avoid the HTTP [...]
- "mapHttpMessageHeaders": { "index": 29, "kind": "parameter",
"displayName": "Map Http Message Headers", "group": "consumer (advanced)",
"label": "consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Headers of the exchange will be mapped to HTTP headers. Setting this to false
will avoid the HTTP Headers mapping." },
- "multipartFilter": { "index": 30, "kind": "parameter", "displayName":
"Multipart Filter", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"jakarta.servlet.Filter", "deprecated": false, "autowired": false, "secret":
false, "description": "Allows using a custom multipart filter. Note: setting
multipartFilterRef forces the value of enableMultipartFilter to true." },
- "optionsEnabled": { "index": 31, "kind": "parameter", "displayName":
"Options Enabled", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Specifies whether to enable HTTP OPTIONS
for this Servlet consumer. By default OPTIONS is turned off." },
- "traceEnabled": { "index": 32, "kind": "parameter", "displayName": "Trace
Enabled", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Specifies whether to enable HTTP TRACE for this Servlet
consumer. By default TRACE is turned off." },
- "sslContextParameters": { "index": 33, "kind": "parameter", "displayName":
"Ssl Context Parameters", "group": "security", "label": "security", "required":
false, "type": "object", "javaType":
"org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false,
"autowired": false, "secret": false, "description": "To configure security
using SSLContextParameters" }
+ "idleTimeout": { "index": 27, "kind": "parameter", "displayName": "Idle
Timeout", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "integer", "javaType": "long", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": -1, "description": "The
max idle time (in milli seconds) is applied to an HTTP request for IO
operations and delayed dispatch. Idle time 0 implies an infinite timeout, -1
(default) implies no HTTP channel timeout [...]
+ "mapHttpMessageBody": { "index": 28, "kind": "parameter", "displayName":
"Map Http Message Body", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Body of the exchange will be mapped to HTTP body. Setting this to false will
avoid the HTTP mapping." },
+ "mapHttpMessageFormUrlEncodedBody": { "index": 29, "kind": "parameter",
"displayName": "Map Http Message Form Url Encoded Body", "group": "consumer
(advanced)", "label": "consumer,advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "If this option is true
then IN exchange Form Encoded body of the exchange will be mapped to HTTP.
Setting this to false will avoid the HTTP [...]
+ "mapHttpMessageHeaders": { "index": 30, "kind": "parameter",
"displayName": "Map Http Message Headers", "group": "consumer (advanced)",
"label": "consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "description": "If this option is true then IN exchange
Headers of the exchange will be mapped to HTTP headers. Setting this to false
will avoid the HTTP Headers mapping." },
+ "multipartFilter": { "index": 31, "kind": "parameter", "displayName":
"Multipart Filter", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"jakarta.servlet.Filter", "deprecated": false, "autowired": false, "secret":
false, "description": "Allows using a custom multipart filter. Note: setting
multipartFilterRef forces the value of enableMultipartFilter to true." },
+ "optionsEnabled": { "index": 32, "kind": "parameter", "displayName":
"Options Enabled", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Specifies whether to enable HTTP OPTIONS
for this Servlet consumer. By default OPTIONS is turned off." },
+ "traceEnabled": { "index": 33, "kind": "parameter", "displayName": "Trace
Enabled", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": false,
"description": "Specifies whether to enable HTTP TRACE for this Servlet
consumer. By default TRACE is turned off." },
+ "sslContextParameters": { "index": 34, "kind": "parameter", "displayName":
"Ssl Context Parameters", "group": "security", "label": "security", "required":
false, "type": "object", "javaType":
"org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false,
"autowired": false, "secret": false, "description": "To configure security
using SSLContextParameters" }
}
}
diff --git
a/components/camel-jetty/src/main/java/org/apache/camel/component/jetty11/JettyHttpComponent11.java
b/components/camel-jetty/src/main/java/org/apache/camel/component/jetty11/JettyHttpComponent11.java
index a26829a0578..e3b6a0c5d66 100644
---
a/components/camel-jetty/src/main/java/org/apache/camel/component/jetty11/JettyHttpComponent11.java
+++
b/components/camel-jetty/src/main/java/org/apache/camel/component/jetty11/JettyHttpComponent11.java
@@ -60,7 +60,9 @@ public class JettyHttpComponent11 extends JettyHttpComponent {
org.eclipse.jetty.server.HttpConfiguration httpConfig = new
org.eclipse.jetty.server.HttpConfiguration();
httpConfig.setSendServerVersion(endpoint.isSendServerVersion());
httpConfig.setSendDateHeader(endpoint.isSendDateHeader());
-
+ if (endpoint.getIdleTimeout() != -1) {
+ httpConfig.setIdleTimeout(endpoint.getIdleTimeout());
+ }
if (requestBufferSize != null) {
// Does not work
// httpConfig.setRequestBufferSize(requestBufferSize);
diff --git
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JettyHttp11EndpointBuilderFactory.java
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JettyHttp11EndpointBuilderFactory.java
index 00799d5c8fb..30cedbea383 100644
---
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JettyHttp11EndpointBuilderFactory.java
+++
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JettyHttp11EndpointBuilderFactory.java
@@ -1050,6 +1050,43 @@ public interface JettyHttp11EndpointBuilderFactory {
doSetProperty("handlers", handlers);
return this;
}
+ /**
+ * The max idle time (in milli seconds) is applied to an HTTP request
+ * for IO operations and delayed dispatch. Idle time 0 implies an
+ * infinite timeout, -1 (default) implies no HTTP channel timeout and
+ * the connection timeout is used instead.
+ *
+ * The option is a: <code>long</code> type.
+ *
+ * Default: -1
+ * Group: consumer (advanced)
+ *
+ * @param idleTimeout the value to set
+ * @return the dsl builder
+ */
+ default AdvancedJettyHttp11EndpointBuilder idleTimeout(long
idleTimeout) {
+ doSetProperty("idleTimeout", idleTimeout);
+ return this;
+ }
+ /**
+ * The max idle time (in milli seconds) is applied to an HTTP request
+ * for IO operations and delayed dispatch. Idle time 0 implies an
+ * infinite timeout, -1 (default) implies no HTTP channel timeout and
+ * the connection timeout is used instead.
+ *
+ * The option will be converted to a <code>long</code>
type.
+ *
+ * Default: -1
+ * Group: consumer (advanced)
+ *
+ * @param idleTimeout the value to set
+ * @return the dsl builder
+ */
+ default AdvancedJettyHttp11EndpointBuilder idleTimeout(
+ String idleTimeout) {
+ doSetProperty("idleTimeout", idleTimeout);
+ return this;
+ }
/**
* If this option is true then IN exchange Body of the exchange will be
* mapped to HTTP body. Setting this to false will avoid the HTTP