gnu.mail.providers.mbox
Class MboxMessage

java.lang.Object
  extended by javax.mail.Message
      extended by javax.mail.internet.MimeMessage
          extended by gnu.mail.providers.ReadOnlyMessage
              extended by gnu.mail.providers.mbox.MboxMessage
All Implemented Interfaces:
MimePart, Part

public class MboxMessage
extends gnu.mail.providers.ReadOnlyMessage

The message class implementing the Mbox mail protocol.

Author:
Chris Burdess

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.mail.internet.MimeMessage
MimeMessage.RecipientType
 
Field Summary
protected  java.lang.String fromLine
          The From_ line associated with this message.
protected static java.lang.String STATUS
          Status header key.
 
Fields inherited from class javax.mail.internet.MimeMessage
content, contentStream, dh, flags, headers, modified, saved
 
Fields inherited from class javax.mail.Message
expunged, folder, msgnum, session
 
Fields inherited from interface javax.mail.Part
ATTACHMENT, INLINE
 
Constructor Summary
protected MboxMessage(MboxFolder folder, MimeMessage message, int msgnum)
          Creates a Mbox message.
protected MboxMessage(MboxFolder folder, java.lang.String fromLine, java.io.InputStream in, int msgnum)
          Creates a Mbox message.
 
Method Summary
 boolean equals(java.lang.Object other)
           
protected  void setExpunged(boolean expunged)
          Allow MboxFolder access to set the expunged flag after expunge.
 void setFlags(Flags flag, boolean set)
          Set the specified flags(reflected in the Status header).
protected  void updateHeaders()
          Updates the status header from the current flags.
 
Methods inherited from class gnu.mail.providers.ReadOnlyMessage
addHeader, addHeaderLine, removeHeader, saveChanges, setContent, setContent, setHeader
 
Methods inherited from class javax.mail.internet.MimeMessage
addFrom, addRecipients, addRecipients, createInternetHeaders, getAllHeaderLines, getAllHeaders, getAllRecipients, getContent, getContentID, getContentLanguage, getContentMD5, getContentStream, getContentType, getDataHandler, getDescription, getDisposition, getEncoding, getFileName, getFlags, getFrom, getHeader, getHeader, getInputStream, getLineCount, getMatchingHeaderLines, getMatchingHeaders, getMessageID, getNonMatchingHeaderLines, getNonMatchingHeaders, getRawInputStream, getReceivedDate, getRecipients, getReplyTo, getSender, getSentDate, getSize, getSubject, isMimeType, isSet, parse, reply, setContentID, setContentLanguage, setContentMD5, setDataHandler, setDescription, setDescription, setDisposition, setFileName, setFrom, setFrom, setRecipients, setRecipients, setReplyTo, setSender, setSentDate, setSubject, setSubject, setText, setText, writeTo, writeTo
 
Methods inherited from class javax.mail.Message
addRecipient, getFolder, getMessageNumber, isExpunged, match, setFlag, setMessageNumber, setRecipient
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

STATUS

protected static final java.lang.String STATUS
Status header key. This keeps the mbox flags.

See Also:
Constant Field Values

fromLine

protected java.lang.String fromLine
The From_ line associated with this message. We will preserve this if possible.

Constructor Detail

MboxMessage

protected MboxMessage(MboxFolder folder,
                      java.lang.String fromLine,
                      java.io.InputStream in,
                      int msgnum)
               throws MessagingException
Creates a Mbox message. This is called by the MboxStore.

Throws:
MessagingException

MboxMessage

protected MboxMessage(MboxFolder folder,
                      MimeMessage message,
                      int msgnum)
               throws MessagingException
Creates a Mbox message. This is called by the MboxFolder when appending. It creates a copy of the specified message for the new folder.

Throws:
MessagingException
Method Detail

setExpunged

protected void setExpunged(boolean expunged)
Allow MboxFolder access to set the expunged flag after expunge.

Overrides:
setExpunged in class Message

setFlags

public void setFlags(Flags flag,
                     boolean set)
              throws MessagingException
Set the specified flags(reflected in the Status header).

Overrides:
setFlags in class gnu.mail.providers.ReadOnlyMessage
Parameters:
flag - the flags to be set
set - the value to be set
Throws:
IllegalWriteException - if the underlying implementation does not support modification of existing values
MessagingException

updateHeaders

protected void updateHeaders()
                      throws MessagingException
Updates the status header from the current flags.

Overrides:
updateHeaders in class MimeMessage
Throws:
MessagingException
See Also:
MimeBodyPart.updateHeaders()

equals

public boolean equals(java.lang.Object other)
Overrides:
equals in class java.lang.Object


© Copyright 2003, 2004 The Free Software Foundation, All rights reserved