FileUpload.java
Upload User: gdxydsw
Upload Date: 2019-01-29
Package Size: 16721k
Code Size: 3k
Category:

Java Develop

Development Platform:

Java

  1. /*
  2.  * Copyright 2001-2004 The Apache Software Foundation
  3.  *
  4.  * Licensed under the Apache License, Version 2.0 (the "License");
  5.  * you may not use this file except in compliance with the License.
  6.  * You may obtain a copy of the License at
  7.  *
  8.  *     http://www.apache.org/licenses/LICENSE-2.0
  9.  *
  10.  * Unless required by applicable law or agreed to in writing, software
  11.  * distributed under the License is distributed on an "AS IS" BASIS,
  12.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13.  * See the License for the specific language governing permissions and
  14.  * limitations under the License.
  15.  */
  16. package net.jforum.util.legacy.commons.fileupload;
  17. import javax.servlet.http.HttpServletRequest;
  18. /**
  19.  * <p>High level API for processing file uploads.</p>
  20.  *
  21.  * <p>This class handles multiple files per single HTML widget, sent using
  22.  * <code>multipart/mixed</code> encoding type, as specified by
  23.  * <a href="http://www.ietf.org/rfc/rfc1867.txt">RFC 1867</a>.  Use {@link
  24.  * #parseRequest(HttpServletRequest)} to acquire a list of {@link
  25.  * org.apache.commons.fileupload.FileItem}s associated with a given HTML
  26.  * widget.</p>
  27.  *
  28.  * <p>How the data for individual parts is stored is determined by the factory
  29.  * used to create them; a given part may be in memory, on disk, or somewhere
  30.  * else.</p>
  31.  *
  32.  * @author <a href="mailto:Rafal.Krzewski@e-point.pl">Rafal Krzewski</a>
  33.  * @author <a href="mailto:dlr@collab.net">Daniel Rall</a>
  34.  * @author <a href="mailto:jvanzyl@apache.org">Jason van Zyl</a>
  35.  * @author <a href="mailto:jmcnally@collab.net">John McNally</a>
  36.  * @author <a href="mailto:martinc@apache.org">Martin Cooper</a>
  37.  * @author Sean C. Sullivan
  38.  *
  39.  * @version $Id: FileUpload.java,v 1.4 2005/07/26 04:01:16 diegopires Exp $
  40.  */
  41. public class FileUpload
  42.     extends FileUploadBase {
  43.     // ----------------------------------------------------------- Data members
  44.     /**
  45.      * The factory to use to create new form items.
  46.      */
  47.     private FileItemFactory fileItemFactory;
  48.     // ----------------------------------------------------------- Constructors
  49.     /**
  50.      * Constructs an uninitialised instance of this class. A factory must be
  51.      * configured, using <code>setFileItemFactory()</code>, before attempting
  52.      * to parse requests.
  53.      *
  54.      * @see #FileUpload(FileItemFactory)
  55.      */
  56.     public FileUpload() {
  57.         super();
  58.     }
  59.     /**
  60.      * Constructs an instance of this class which uses the supplied factory to
  61.      * create <code>FileItem</code> instances.
  62.      *
  63.      * @see #FileUpload()
  64.      */
  65.     public FileUpload(FileItemFactory fileItemFactory) {
  66.         super();
  67.         this.fileItemFactory = fileItemFactory;
  68.     }
  69.     // ----------------------------------------------------- Property accessors
  70.     /**
  71.      * Returns the factory class used when creating file items.
  72.      *
  73.      * @return The factory class for new file items.
  74.      */
  75.     public FileItemFactory getFileItemFactory() {
  76.         return fileItemFactory;
  77.     }
  78.     /**
  79.      * Sets the factory class to use when creating file items.
  80.      *
  81.      * @param factory The factory class for new file items.
  82.      */
  83.     public void setFileItemFactory(FileItemFactory factory) {
  84.         this.fileItemFactory = factory;
  85.     }
  86. }