Package com.sun.mail.imap
Class IMAPNestedMessage
java.lang.Object
javax.mail.Message
javax.mail.internet.MimeMessage
com.sun.mail.imap.IMAPMessage
com.sun.mail.imap.IMAPNestedMessage
- All Implemented Interfaces:
ReadableMime,MimePart,Part
This class implements a nested IMAP message
- Author:
- John Mani
-
Nested Class Summary
Nested classes/interfaces inherited from class com.sun.mail.imap.IMAPMessage
IMAPMessage.FetchProfileConditionNested classes/interfaces inherited from class javax.mail.internet.MimeMessage
MimeMessage.RecipientType -
Field Summary
Fields inherited from class com.sun.mail.imap.IMAPMessage
bs, envelope, items, sectionIdFields inherited from class javax.mail.internet.MimeMessage
cachedContent, content, contentStream, dh, flags, headers, modified, savedFields inherited from interface javax.mail.Part
ATTACHMENT, INLINE -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected intprotected ObjectGet the messageCacheLock, associated with this Message's Folder.protected IMAPProtocolGet this message's folder's protocol connection.protected intGet this message's IMAP sequence number.intgetSize()Get the message size.protected booleanbooleanChecks whether this message is expunged.protected booleanisREV1()voidSet/Unset the given flags in this message.Methods inherited from class com.sun.mail.imap.IMAPMessage
addFrom, addHeader, addHeaderLine, addRecipients, fetchItem, forceCheckExpunged, getAllHeaderLines, getAllHeaders, getContentID, getContentLanguage, getContentMD5, getContentStream, getContentType, getDataHandler, getDescription, getDisposition, getEncoding, getFileName, getFlags, getFrom, getHeader, getHeader, getInReplyTo, getItem, getLineCount, getMatchingHeaderLines, getMatchingHeaders, getMessageID, getMimeStream, getModSeq, getNonMatchingHeaderLines, getNonMatchingHeaders, getPeek, getReceivedDate, getRecipients, getReplyTo, getSender, getSentDate, getSizeLong, getSubject, getUID, handleExtensionFetchItems, handleFetchItem, invalidateHeaders, isSet, removeHeader, setContentID, setContentLanguage, setContentMD5, setDataHandler, setDescription, setDisposition, setExpunged, setFileName, setFrom, setHeader, setMessageNumber, setPeek, setRecipients, setReplyTo, setSender, setSentDate, setSubject, setUID, writeToMethods inherited from class javax.mail.internet.MimeMessage
addRecipients, createInternetHeaders, createMimeMessage, getAllRecipients, getContent, getInputStream, getRawInputStream, isMimeType, parse, reply, reply, saveChanges, setContent, setContent, setDescription, setFrom, setFrom, setRecipients, setSubject, setText, setText, setText, updateHeaders, updateMessageID, writeToMethods inherited from class javax.mail.Message
addRecipient, getFolder, getMessageNumber, getSession, match, setFlag, setRecipient
-
Method Details
-
getProtocol
Description copied from class:IMAPMessageGet this message's folder's protocol connection. Throws FolderClosedException, if the protocol connection is not available. ASSERT: Must hold the messageCacheLock.- Overrides:
getProtocolin classIMAPMessage- Returns:
- the IMAPProtocol object for the containing folder
- Throws:
ProtocolException- for protocol errorsFolderClosedException- if the folder is closed
-
isREV1
- Overrides:
isREV1in classIMAPMessage- Throws:
FolderClosedException
-
getMessageCacheLock
Description copied from class:IMAPMessageGet the messageCacheLock, associated with this Message's Folder.- Overrides:
getMessageCacheLockin classIMAPMessage- Returns:
- the message cache lock object
-
getSequenceNumber
protected int getSequenceNumber()Description copied from class:IMAPMessageGet this message's IMAP sequence number. ASSERT: This method must be called only when holding the messageCacheLock.- Overrides:
getSequenceNumberin classIMAPMessage- Returns:
- the message sequence number
-
checkExpunged
- Overrides:
checkExpungedin classIMAPMessage- Throws:
MessageRemovedException
-
isExpunged
public boolean isExpunged()Description copied from class:MessageChecks whether this message is expunged. All other methods exceptgetMessageNumber()are invalid on an expunged Message object.Messages that are expunged due to an explict
expunge()request on the containing Folder are removed from the Folder immediately. Messages that are externally expunged by another source are marked "expunged" and return true for the isExpunged() method, but they are not removed from the Folder until an explicitexpunge()is done on the Folder.See the description of
expunge()for more details on expunge handling.- Overrides:
isExpungedin classMessage- Returns:
- true if the message is expunged
- See Also:
-
getFetchBlockSize
protected int getFetchBlockSize()- Overrides:
getFetchBlockSizein classIMAPMessage
-
ignoreBodyStructureSize
protected boolean ignoreBodyStructureSize()- Overrides:
ignoreBodyStructureSizein classIMAPMessage
-
getSize
Description copied from class:IMAPMessageGet the message size.Note that this returns RFC822.SIZE. That is, it's the size of the whole message, header and body included. Note also that if the size of the message is greater than Integer.MAX_VALUE (2GB), this method returns Integer.MAX_VALUE.
- Specified by:
getSizein interfacePart- Overrides:
getSizein classIMAPMessage- Returns:
- size of content in bytes
- Throws:
MessagingException- for failures
-
setFlags
Description copied from class:IMAPMessageSet/Unset the given flags in this message.- Overrides:
setFlagsin classIMAPMessage- Parameters:
flag- Flags object containing the flags to be setset- the value to be set- Throws:
IllegalWriteException- if the underlying implementation does not support modificationMessagingException- for other failures- See Also:
-