Add two optional parameters to FileUploadBase.getItemIterator() to pass 
temporary buffers similar to Streams.copy()
-------------------------------------------------------------------------------------------------------------------

                 Key: FILEUPLOAD-198
                 URL: https://issues.apache.org/jira/browse/FILEUPLOAD-198
             Project: Commons FileUpload
          Issue Type: Improvement
    Affects Versions: 1.2.2
         Environment: Fedora 15. Tomcat 6.
            Reporter: Andreas Girgensohn
            Priority: Minor
             Fix For: 1.2.2


When processing a large number of multipart uploads, new byte buffers are 
created for every part of every request.  It would be preferable if the servlet 
could reuse those buffers for the next request.  Failing that, it would already 
be an improvement if FileUploadBase.findNextItem() could pass the same buffer 
to subsequent calls of MultipartStream.skipPreamble() and discardBodyData().

The item iterator would need two temporary buffers.  One would be passed to 
MultipartStream via a new constructor.  The other would be passed to 
readBodyData(), discardBodyData(), and skipPreamble() to be passed on to 
Streams.copy().

This change would require additional signatures for five methods constructors 
and methods but it would reduce memory allocation by a noticeable amount.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to