Sebb created NET-535:
------------------------

             Summary: IMAP FETCH can overflow reply buffer; provide for partial 
responses
                 Key: NET-535
                 URL: https://issues.apache.org/jira/browse/NET-535
             Project: Commons Net
          Issue Type: New Feature
            Reporter: Sebb


A single IMAP request can return huge amounts of data (e.g. FETCH)

An application gets access to this data by calling one of the methods 
getReplyString() or getReplyStrings() only after the request has completed. 

As well as delaying the response to the application, this may cause the 
application to run out of memory.

IMAP replies which return large amounts of data use untagged multi-line 
responses followed by a tagged status line.

It would be useful if applications could register to receive such responses in 
chunks as they arrived. The array list could then be cleared once the chunk had 
been processed. e.g. the listener could return a boolean to say whether to 
clear the array.

If the array was cleared, this would obviously affect any listeners as these 
are currently only called at the end of the response.
In this case, listeners could be called with a new status of  PARTIAL so they 
could distinguish the different case if necessary.

The chunk listener could be passed the IMAP instance; this would give access to 
the getString[s]() methods. This would be more flexible than passing a String 
or String[] directly.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to