This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-spring-boot-3.x
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git


The following commit(s) were added to refs/heads/camel-spring-boot-3.x by this 
push:
     new 6c336b25288 [create-pull-request] automated change (#1027)
6c336b25288 is described below

commit 6c336b252881f27f426f7815b3b14504e405d37d
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Nov 30 06:39:21 2023 +0100

    [create-pull-request] automated change (#1027)
    
    Co-authored-by: orpiske <orpi...@users.noreply.github.com>
---
 .../camel/springboot/catalog/components/jetty.json |  8 ++++
 .../camel-jetty-starter/src/main/docs/jetty.json   | 27 +++++++++++
 .../JettyHttpComponentConfiguration9.java          | 52 ++++++++++++++++++++++
 3 files changed, 87 insertions(+)

diff --git 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/jetty.json
 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/jetty.json
index 50fc5dfd8e9..ed1d12e9fc1 100644
--- 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/jetty.json
+++ 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/jetty.json
@@ -36,6 +36,10 @@
     "sendServerVersion": { "kind": "property", "displayName": "Send Server 
Version", "group": "consumer", "label": "consumer", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "defaultValue": true, "description": "If 
the option is true, jetty will send the server header with the jetty version 
information to the client which sends the request. NOTE please make sure there 
is no any other camel-jett [...]
     "useContinuation": { "kind": "property", "displayName": "Use 
Continuation", "group": "consumer", "label": "consumer", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, 
"deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 
true, "description": "Whether or not to use Jetty continuations for the Jetty 
Server." },
     "useXForwardedForHeader": { "kind": "property", "displayName": "Use 
XForwarded For Header", "group": "consumer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, 
"deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 
false, "description": "To use the X-Forwarded-For header in 
HttpServletRequest.getRemoteAddr." },
+    "fileSizeThreshold": { "kind": "property", "displayName": "File Size 
Threshold", "group": "consumer (advanced)", "label": "consumer,advanced", 
"required": false, "type": "integer", "javaType": "int", "deprecated": false, 
"deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 0, 
"description": "The size threshold after which files will be written to disk 
for multipart\/form-data requests. By default the files are not written to 
disk" },
+    "filesLocation": { "kind": "property", "displayName": "Files Location", 
"group": "consumer (advanced)", "label": "consumer,advanced", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"deprecationNote": "", "autowired": false, "secret": false, "description": "The 
directory location where files will be store for multipart\/form-data requests. 
By default the files are written in the system temporary folder" },
+    "maxFileSize": { "kind": "property", "displayName": "Max File Size", 
"group": "consumer (advanced)", "label": "consumer,advanced", "required": 
false, "type": "integer", "javaType": "long", "deprecated": false, 
"deprecationNote": "", "autowired": false, "secret": false, "defaultValue": -1, 
"description": "The maximum size allowed for uploaded files. -1 means no limit" 
},
+    "maxRequestSize": { "kind": "property", "displayName": "Max Request Size", 
"group": "consumer (advanced)", "label": "consumer,advanced", "required": 
false, "type": "integer", "javaType": "long", "deprecated": false, 
"deprecationNote": "", "autowired": false, "secret": false, "defaultValue": -1, 
"description": "The maximum size allowed for multipart\/form-data requests. -1 
means no limit" },
     "threadPool": { "kind": "property", "displayName": "Thread Pool", "group": 
"consumer (advanced)", "label": "consumer,advanced", "required": false, "type": 
"object", "javaType": "org.eclipse.jetty.util.thread.ThreadPool", "deprecated": 
false, "deprecationNote": "", "autowired": false, "secret": false, 
"description": "To use a custom thread pool for the server. This option should 
only be used in special circumstances." },
     "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 [...]
     "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 [...]
@@ -85,12 +89,16 @@
     "eagerCheckContentAvailable": { "kind": "parameter", "displayName": "Eager 
Check Content Available", "group": "consumer (advanced)", "label": 
"consumer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether to eager check whether the HTTP 
requests has content if the content-length header is 0 or not present. This can 
be turned on in case HTTP clients do not send s [...]
     "exceptionHandler": { "kind": "parameter", "displayName": "Exception 
Handler", "group": "consumer (advanced)", "label": "consumer,advanced", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
let the consumer use a custom ExceptionHandler. Notice if the option 
bridgeErrorHandler is enabled then this option is not in use. By default the 
con [...]
     "exchangePattern": { "kind": "parameter", "displayName": "Exchange 
Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut", 
"InOptionalOut" ], "deprecated": false, "autowired": false, "secret": false, 
"description": "Sets the exchange pattern when the consumer creates an 
exchange." },
+    "fileSizeThreshold": { "kind": "parameter", "displayName": "File Size 
Threshold", "group": "consumer (advanced)", "label": "consumer,advanced", 
"required": false, "type": "integer", "javaType": "java.lang.Integer", 
"deprecated": false, "autowired": false, "secret": false, "description": "The 
size threshold after which files will be written to disk for 
multipart\/form-data requests. By default the files are not written to disk" },
+    "filesLocation": { "kind": "parameter", "displayName": "Files Location", 
"group": "consumer (advanced)", "label": "consumer,advanced", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "The directory location 
where files will be store for multipart\/form-data requests. By default the 
files are written in the system temporary folder" },
     "filterInitParameters": { "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 starting the jett [...]
     "filters": { "kind": "parameter", "displayName": "Filters", "group": 
"consumer (advanced)", "label": "consumer,advanced", "required": false, "type": 
"array", "javaType": "java.util.List<javax.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": { "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: You can not  [...]
     "mapHttpMessageBody": { "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": { "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 Form Encoded  [...]
     "mapHttpMessageHeaders": { "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." },
+    "maxFileSize": { "kind": "parameter", "displayName": "Max File Size", 
"group": "consumer (advanced)", "label": "consumer,advanced", "required": 
false, "type": "integer", "javaType": "java.lang.Long", "deprecated": false, 
"autowired": false, "secret": false, "description": "The maximum size allowed 
for uploaded files. -1 means no limit" },
+    "maxRequestSize": { "kind": "parameter", "displayName": "Max Request 
Size", "group": "consumer (advanced)", "label": "consumer,advanced", 
"required": false, "type": "integer", "javaType": "java.lang.Long", 
"deprecated": false, "autowired": false, "secret": false, "description": "The 
maximum size allowed for multipart\/form-data requests. -1 means no limit" },
     "multipartFilter": { "kind": "parameter", "displayName": "Multipart 
Filter", "group": "consumer (advanced)", "label": "consumer,advanced", 
"required": false, "type": "object", "javaType": "javax.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": { "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": { "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." },
diff --git a/components-starter/camel-jetty-starter/src/main/docs/jetty.json 
b/components-starter/camel-jetty-starter/src/main/docs/jetty.json
index 3a6ce46dfb1..a100f9c115b 100644
--- a/components-starter/camel-jetty-starter/src/main/docs/jetty.json
+++ b/components-starter/camel-jetty-starter/src/main/docs/jetty.json
@@ -65,6 +65,19 @@
       "description": "This option is used to set the ErrorHandler that Jetty 
server uses. The option is a org.eclipse.jetty.server.handler.ErrorHandler 
type.",
       "sourceType": 
"org.apache.camel.component.jetty9.springboot.JettyHttpComponentConfiguration9"
     },
+    {
+      "name": "camel.component.jetty.file-size-threshold",
+      "type": "java.lang.Integer",
+      "description": "The size threshold after which files will be written to 
disk for multipart\/form-data requests. By default the files are not written to 
disk",
+      "sourceType": 
"org.apache.camel.component.jetty9.springboot.JettyHttpComponentConfiguration9",
+      "defaultValue": 0
+    },
+    {
+      "name": "camel.component.jetty.files-location",
+      "type": "java.lang.String",
+      "description": "The directory location where files will be store for 
multipart\/form-data requests. By default the files are written in the system 
temporary folder",
+      "sourceType": 
"org.apache.camel.component.jetty9.springboot.JettyHttpComponentConfiguration9"
+    },
     {
       "name": "camel.component.jetty.header-filter-strategy",
       "type": "org.apache.camel.spi.HeaderFilterStrategy",
@@ -95,6 +108,20 @@
       "description": "Specifies the location of the Java keystore file, which 
contains the Jetty server's own X.509 certificate in a key entry.",
       "sourceType": 
"org.apache.camel.component.jetty9.springboot.JettyHttpComponentConfiguration9"
     },
+    {
+      "name": "camel.component.jetty.max-file-size",
+      "type": "java.lang.Long",
+      "description": "The maximum size allowed for uploaded files. -1 means no 
limit",
+      "sourceType": 
"org.apache.camel.component.jetty9.springboot.JettyHttpComponentConfiguration9",
+      "defaultValue": -1
+    },
+    {
+      "name": "camel.component.jetty.max-request-size",
+      "type": "java.lang.Long",
+      "description": "The maximum size allowed for multipart\/form-data 
requests. -1 means no limit",
+      "sourceType": 
"org.apache.camel.component.jetty9.springboot.JettyHttpComponentConfiguration9",
+      "defaultValue": -1
+    },
     {
       "name": "camel.component.jetty.max-threads",
       "type": "java.lang.Integer",
diff --git 
a/components-starter/camel-jetty-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
 
b/components-starter/camel-jetty-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
index 725b1519186..1b62f773856 100644
--- 
a/components-starter/camel-jetty-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
+++ 
b/components-starter/camel-jetty-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
@@ -118,6 +118,26 @@ public class JettyHttpComponentConfiguration9
      * To use the X-Forwarded-For header in HttpServletRequest.getRemoteAddr.
      */
     private Boolean useXForwardedForHeader = false;
+    /**
+     * The size threshold after which files will be written to disk for
+     * multipart/form-data requests. By default the files are not written to
+     * disk
+     */
+    private Integer fileSizeThreshold = 0;
+    /**
+     * The directory location where files will be store for multipart/form-data
+     * requests. By default the files are written in the system temporary 
folder
+     */
+    private String filesLocation;
+    /**
+     * The maximum size allowed for uploaded files. -1 means no limit
+     */
+    private Long maxFileSize = -1L;
+    /**
+     * The maximum size allowed for multipart/form-data requests. -1 means no
+     * limit
+     */
+    private Long maxRequestSize = -1L;
     /**
      * To use a custom thread pool for the server. This option should only be
      * used in special circumstances. The option is a
@@ -331,6 +351,38 @@ public class JettyHttpComponentConfiguration9
         this.useXForwardedForHeader = useXForwardedForHeader;
     }
 
+    public Integer getFileSizeThreshold() {
+        return fileSizeThreshold;
+    }
+
+    public void setFileSizeThreshold(Integer fileSizeThreshold) {
+        this.fileSizeThreshold = fileSizeThreshold;
+    }
+
+    public String getFilesLocation() {
+        return filesLocation;
+    }
+
+    public void setFilesLocation(String filesLocation) {
+        this.filesLocation = filesLocation;
+    }
+
+    public Long getMaxFileSize() {
+        return maxFileSize;
+    }
+
+    public void setMaxFileSize(Long maxFileSize) {
+        this.maxFileSize = maxFileSize;
+    }
+
+    public Long getMaxRequestSize() {
+        return maxRequestSize;
+    }
+
+    public void setMaxRequestSize(Long maxRequestSize) {
+        this.maxRequestSize = maxRequestSize;
+    }
+
     public ThreadPool getThreadPool() {
         return threadPool;
     }

Reply via email to