ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/jakarta/servlet/MultipartConfigElement.java

Path
ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/jakarta/servlet/MultipartConfigElement.java
Status
scanned
Type
file
Name
MultipartConfigElement.java
Extension
.java
Programming language
Java
Mime type
text/plain
File type
ASCII text, with CRLF line terminators
Tag

      
    
Rootfs path

      
    
Size
4459 (4.4 KB)
MD5
74ee16f6894dadcefd882c3837dac46d
SHA1
b96825d641ccb112d3b262123d7fc0f09bb7e24a
SHA256
f214c8446cb57f9f17c4749418be09fd4a96990f1954a52127ab6c75d4782317
SHA512

      
    
SHA1_git
8e0797f390f301088e81b3589856503f88d4ff66
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
MultipartConfigElement.java | 4.4 KB |

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package jakarta.servlet; import java.util.Objects; import jakarta.servlet.annotation.MultipartConfig; /** * The programmatic equivalent of {@link jakarta.servlet.annotation.MultipartConfig} used to configure multipart * handling for a Servlet when registering a Servlet via code. * * @since Servlet 3.0 */ public class MultipartConfigElement { private final String location;// = ""; private final long maxFileSize;// = -1; private final long maxRequestSize;// = -1; private final int fileSizeThreshold;// = 0; /** * Create a programmatic multipart configuration with a specific location and defaults for the remaining * configuration elements. * * @param location The temporary location to store files */ public MultipartConfigElement(String location) { // Keep empty string default if location is null this.location = Objects.requireNonNullElse(location, ""); this.maxFileSize = -1; this.maxRequestSize = -1; this.fileSizeThreshold = 0; } /** * Create a programmatic multipart configuration from the individual configuration elements. * * @param location The temporary location to store files * @param maxFileSize The maximum permitted size for a single file * @param maxRequestSize The maximum permitted size for a request * @param fileSizeThreshold The size above which the file is saved in the temporary location rather than retained in * memory. */ public MultipartConfigElement(String location, long maxFileSize, long maxRequestSize, int fileSizeThreshold) { // Keep empty string default if location is null this.location = Objects.requireNonNullElse(location, ""); this.maxFileSize = maxFileSize; this.maxRequestSize = maxRequestSize; // Avoid threshold values of less than zero as they cause trigger NPEs // in the Commons FileUpload port for fields that have no data. this.fileSizeThreshold = Math.max(fileSizeThreshold, 0); } /** * Create a programmatic configuration from an annotation. * * @param annotation The source annotation to copy to create the programmatic equivalent. */ public MultipartConfigElement(MultipartConfig annotation) { location = annotation.location(); maxFileSize = annotation.maxFileSize(); maxRequestSize = annotation.maxRequestSize(); fileSizeThreshold = annotation.fileSizeThreshold(); } /** * Obtain the location where temporary files should be stored. * * @return the location where temporary files should be stored. */ public String getLocation() { return location; } /** * Obtain the maximum permitted size for a single file. * * @return the maximum permitted size for a single file. */ public long getMaxFileSize() { return maxFileSize; } /** * Obtain the maximum permitted size for a single request. * * @return the maximum permitted size for a single request. */ public long getMaxRequestSize() { return maxRequestSize; } /** * Obtain the size above which the file is saved in the temporary location rather than retained in memory. * * @return the size above which the file is saved in the temporary location rather than retained in memory. */ public int getFileSizeThreshold() { return fileSizeThreshold; } }
Detected license expression
apache-2.0
Detected license expression (SPDX)
Apache-2.0
Percentage of license text
25.0
Copyrights

      
    
Holders

      
    
Authors

      
    
License detections License expression License expression SPDX
apache_2_0-4bde3f57-78aa-4201-96bf-531cba09e7de apache-2.0 Apache-2.0
URL Start line End line
http://www.apache.org/licenses/LICENSE-2.0 9 9