Stefano,

I'd like to make a few quick suggestions about the
store interface.

Maybe the message interface should be refactored first?

Stefano Bagnara wrote:
(Flags? Date? long Uid? Message attributes?)
in ImapMessageAttributes I see: getInternalDate, getInternalDateAsString,
getSize, getEnvelope, getBodyStructure.

I like the way MAPI takes care of this, ie...

GenericMessage
{
        value GetProperty(id);
        SetProperty(id, value);
        [...]
}

  There are
generic "properties" which have id/name,type values.
Some properties may be manatory by a backend, others
may not. eg. IMAP Server may always set the SEEN/boolean
property on a message in the store while the POP
Server may not.  They both though may set CREATED/date
 and the UID/binary properties though.

I think doing things this way would simply the
message store interface a good bit.

Is there really a good reason to have protocol specific
code in the MessageStore/Repository layer?

A generic message interface would abstract the protocol
specific code entirely, leaving it to the protocol handlers.


Do the client runs query over this attributes?

I believe so.  Through the "SEARCH" command...
http://ietfreport.isoc.org/idref/rfc3501/#page-49

Are this attributes sent to the client without the body?
Yes. See FETCH
http://ietfreport.isoc.org/idref/rfc3501/#page-54

The message header only, body only, flags only, etc.
can be fetched.

Regards,
Kervin

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to