Class FileItemIteratorImpl

    • Constructor Detail

      • FileItemIteratorImpl

        public FileItemIteratorImpl​(FileUploadBase fileUploadBase,
                                    RequestContext requestContext)
                             throws FileUploadException,
                                    java.io.IOException
        Creates a new instance.
        Parameters:
        fileUploadBase - Main processor.
        requestContext - The request context.
        Throws:
        FileUploadException - An error occurred while parsing the request.
        java.io.IOException - An I/O error occurred.
    • Method Detail

      • getSizeMax

        public long getSizeMax()
        Description copied from interface: FileItemIterator
        Returns the maximum size of the complete HTTP request. A SizeLimitExceededException will be thrown, if the HTTP request will exceed this value. By default, this value will be copied from the FileUploadBase object, however, the user may replace the default value with a request specific value by invoking FileItemIterator.setSizeMax(long) on this object.
        Specified by:
        getSizeMax in interface FileItemIterator
        Returns:
        The maximum size of the complete HTTP request. The value -1 indicates "unlimited".
      • setSizeMax

        public void setSizeMax​(long sizeMax)
        Description copied from interface: FileItemIterator
        Returns the maximum size of the complete HTTP request. A SizeLimitExceededException will be thrown, if the HTTP request will exceed this value. By default, this value will be copied from the FileUploadBase object, however, the user may replace the default value with a request specific value by invoking FileItemIterator.setSizeMax(long) on this object. Note: Setting the maximum size on this object will work only, if the iterator is not yet initialized. In other words: If the methods FileItemIterator.hasNext(), FileItemIterator.next() have not yet been invoked.
        Specified by:
        setSizeMax in interface FileItemIterator
        Parameters:
        sizeMax - The maximum size of the complete HTTP request. The value -1 indicates "unlimited".
      • setFileSizeMax

        public void setFileSizeMax​(long fileSizeMax)
        Description copied from interface: FileItemIterator
        Sets the maximum size of a single file. An FileSizeLimitExceededException will be thrown, if there is an uploaded file, which is exceeding this value. By default, this value will be copied from the FileUploadBase object, however, the user may replace the default value with a request specific value by invoking FileItemIterator.setFileSizeMax(long) on this object, so there is no need to configure it here. Note:Changing this value doesn't affect files, that have already been uploaded.
        Specified by:
        setFileSizeMax in interface FileItemIterator
        Parameters:
        fileSizeMax - The maximum size of a single, uploaded file. The value -1 indicates "unlimited".
      • init

        protected void init​(FileUploadBase fileUploadBase,
                            RequestContext pRequestContext)
                     throws FileUploadException,
                            java.io.IOException
        Initializes the multipart stream for processing the request.
        Parameters:
        fileUploadBase - The file upload base configuration
        pRequestContext - The request context - unused
        Throws:
        FileUploadException - If the request content type is invalid or size exceeds limits
        java.io.IOException - If an I/O error occurs
      • getMultiPartStream

        public MultipartStream getMultiPartStream()
                                           throws FileUploadException,
                                                  java.io.IOException
        Returns the underlying MultipartStream, initializing it if necessary.
        Returns:
        The MultipartStream for this iterator
        Throws:
        FileUploadException - If the request content type is invalid or size exceeds limits
        java.io.IOException - If an I/O error occurs
      • hasNext

        public boolean hasNext()
                        throws FileUploadException,
                               java.io.IOException
        Returns, whether another instance of FileItemStream is available.
        Specified by:
        hasNext in interface FileItemIterator
        Returns:
        True, if one or more additional file items are available, otherwise false.
        Throws:
        FileUploadException - Parsing or processing the file item failed.
        java.io.IOException - Reading the file item failed.
      • next

        public FileItemStream next()
                            throws FileUploadException,
                                   java.io.IOException
        Returns the next available FileItemStream.
        Specified by:
        next in interface FileItemIterator
        Returns:
        FileItemStream instance, which provides access to the next file item.
        Throws:
        java.util.NoSuchElementException - No more items are available. Use hasNext() to prevent this exception.
        FileUploadException - Parsing or processing the file item failed.
        java.io.IOException - Reading the file item failed.