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

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-fileupload.git


The following commit(s) were added to refs/heads/master by this push:
     new 994f8526 Pass builder to private constructor
994f8526 is described below

commit 994f85262f951c772e50d8d1f030c97bee0b27c3
Author: Gary D. Gregory <garydgreg...@gmail.com>
AuthorDate: Tue Sep 9 09:53:25 2025 -0700

    Pass builder to private constructor
---
 .../commons/fileupload2/core/DiskFileItem.java     | 22 ++++++++++------------
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git 
a/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/core/DiskFileItem.java
 
b/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/core/DiskFileItem.java
index 992ed4a9..2fb09e25 100644
--- 
a/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/core/DiskFileItem.java
+++ 
b/commons-fileupload2-core/src/main/java/org/apache/commons/fileupload2/core/DiskFileItem.java
@@ -137,8 +137,7 @@ public final class DiskFileItem implements 
FileItem<DiskFileItem> {
          */
         @Override
         public DiskFileItem get() {
-            final var diskFileItem = new DiskFileItem(getFieldName(), 
getContentType(), isFormField(), getFileName(), getBufferSize(), getPath(),
-                    getFileItemHeaders(), getCharset());
+            final var diskFileItem = new DiskFileItem(this);
             final var tracker = getFileCleaningTracker();
             if (tracker != null) {
                 diskFileItem.setFileCleaningTracker(tracker);
@@ -329,16 +328,15 @@ public final class DiskFileItem implements 
FileItem<DiskFileItem> {
      * @param fileItemHeaders The file item headers.
      * @param defaultCharset  The default Charset.
      */
-    private DiskFileItem(final String fieldName, final String contentType, 
final boolean isFormField, final String fileName, final int threshold,
-            final Path repository, final FileItemHeaders fileItemHeaders, 
final Charset defaultCharset) {
-        this.fieldName = fieldName;
-        this.contentType = contentType;
-        this.charsetDefault = defaultCharset;
-        this.isFormField = isFormField;
-        this.fileName = fileName;
-        this.fileItemHeaders = fileItemHeaders;
-        this.threshold = threshold;
-        this.repository = repository != null ? repository : 
PathUtils.getTempDirectory();
+    private DiskFileItem(final Builder builder) {
+        this.fieldName = builder.getFieldName();
+        this.contentType = builder.getContentType();
+        this.charsetDefault = builder.getCharset();
+        this.isFormField = builder.isFormField();
+        this.fileName = builder.getFileName();
+        this.fileItemHeaders = builder.getFileItemHeaders();
+        this.threshold = builder.getThreshold();
+        this.repository = builder.getPath() != null ? builder.getPath() : 
PathUtils.getTempDirectory();
     }
 
     /**

Reply via email to