[
https://issues.apache.org/jira/browse/JAMES-808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12538196
]
Zsombor Gegesy commented on JAMES-808:
--------------------------------------
1, as the code is in the core of the imap backend, i can't see any problem with
this coupling. When we will have more than 2 protocol to handle, we can
refactor it into something generic.
2, probably yes, but as the mime message are sent as 'literals' it means the
following:
1, we have to send the length of message before we wrote out the mime message
2, coupling with the IMAP protocol :-)
3, threading issues, if we dont write the whole message in a small
synchronized block.
> Fetch command is not very efficient
> -----------------------------------
>
> Key: JAMES-808
> URL: https://issues.apache.org/jira/browse/JAMES-808
> Project: James
> Issue Type: Improvement
> Components: IMAPServer
> Affects Versions: Trunk
> Reporter: Zsombor Gegesy
> Assignee: Robert Burrell Donkin
> Fix For: Trunk
>
> Attachments: opt.patch
>
>
> Currently the implementation of the FETCH command is not very efficient. For
> example to retrieve one mail the following conversions will happens:
> 1, the backend creates a MimeMessage from a file/database blob/thin air/etc
> 2, the frontend converts into a byte array, with correct CRLF line endings.
> (I don't get, why it's needed, every incoming MimeMessage is already in this
> format, isn't it ?)
> 3, the frontend appends it into a StringBuffer in the FetchCommand class
> 4, after some String manipulation it gets sent over an InternetPrintWriter
> which checks also that all line endings in correct style.
> I'm not sure that the whole thing is absolutly necessary. There is two other
> problem with the current code :
> 1, it doesn't calculate the correct MessageResult flags, so the backend cant
> optimize out the unnecessary things.
> 2, It doesn't parse the BODY[]<0.1024> style commands.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]