Package net.fortuna.mstor.model
Class MStorMessage
- java.lang.Object
-
- javax.mail.Message
-
- javax.mail.internet.MimeMessage
-
- net.fortuna.mstor.model.MStorMessage
-
- All Implemented Interfaces:
Serializable
,javax.mail.internet.MimePart
,javax.mail.Part
,Taggable
public final class MStorMessage extends javax.mail.internet.MimeMessage implements Serializable, Taggable
Implementation of a message for the mstor javamail provider.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description MStorMessage(javax.mail.Folder folder, int msgnum)
MStorMessage(javax.mail.Folder folder, InputStream in, int msgnum)
MStorMessage(javax.mail.Folder folder, InputStream in, int msgnum, MessageDelegate delegate)
MStorMessage(javax.mail.Folder folder, javax.mail.internet.InternetHeaders headers, byte[] content, int msgnum)
MStorMessage(javax.mail.internet.MimeMessage m)
MStorMessage(javax.mail.Session session)
MStorMessage(javax.mail.Session session, InputStream in)
MStorMessage(MessageDelegate delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addHeader(String s, String s1)
void
addHeaderLine(String s)
void
addTag(String tag)
Add the specified model to the associated tags.Enumeration<String>
getAllHeaderLines()
Enumeration<javax.mail.Header>
getAllHeaders()
protected InputStream
getContentStream()
String[]
getHeader(String name)
String
getHeader(String name, String delimiter)
MStorMessage
getInReplyTo()
Enumeration<String>
getMatchingHeaderLines(String[] names)
Enumeration<javax.mail.Header>
getMatchingHeaders(String[] names)
Enumeration<String>
getNonMatchingHeaderLines(String[] names)
Enumeration<javax.mail.Header>
getNonMatchingHeaders(String[] names)
Date
getReceivedDate()
List<MStorMessage>
getReferences()
Tags
getTags()
Returns tags associated with this message.protected long
getUid()
Returns the UID associated with the message.void
removeHeader(String s)
void
removeTag(String tag)
Remove the specified model from the associated tags.void
saveChanges()
Attempts to save metadata after callingsaveChanges
in the superclass.protected void
setExpunged(boolean expunged)
void
setFlag(javax.mail.Flags.Flag flag, boolean set)
void
setFlags(javax.mail.Flags flags, boolean set)
void
setHeader(String s, String s1)
protected void
updateHeaders()
Attempts to update headers in metadata after updating headers in superclass.-
Methods inherited from class javax.mail.internet.MimeMessage
addFrom, addRecipients, addRecipients, createInternetHeaders, createMimeMessage, getAllRecipients, getContent, getContentID, getContentLanguage, getContentMD5, getContentType, getDataHandler, getDescription, getDisposition, getEncoding, getFileName, getFlags, getFrom, getInputStream, getLineCount, getMessageID, getRawInputStream, getRecipients, getReplyTo, getSender, getSentDate, getSize, getSubject, isMimeType, isSet, parse, reply, reply, setContent, setContent, setContentID, setContentLanguage, setContentMD5, setDataHandler, setDescription, setDescription, setDisposition, setFileName, setFrom, setFrom, setFrom, setRecipients, setRecipients, setReplyTo, setSender, setSentDate, setSubject, setSubject, setText, setText, setText, updateMessageID, writeTo, writeTo
-
-
-
-
Constructor Detail
-
MStorMessage
public MStorMessage(javax.mail.Session session)
- Parameters:
session
- the session associated with the message
-
MStorMessage
public MStorMessage(javax.mail.Session session, InputStream in)
- Parameters:
session
- the session associated with the messagein
- an input stream to read message data from
-
MStorMessage
public MStorMessage(javax.mail.internet.MimeMessage m) throws javax.mail.MessagingException
- Parameters:
m
- a message instance to duplicate- Throws:
javax.mail.MessagingException
- where an unexpected error occurs duplicating the specified message
-
MStorMessage
public MStorMessage(javax.mail.Folder folder, int msgnum)
- Parameters:
folder
- the folder associated with the messagemsgnum
- the message number of the message in the specified folder
-
MStorMessage
public MStorMessage(javax.mail.Folder folder, InputStream in, int msgnum)
- Parameters:
folder
- the folder associated with the messagein
- an input stream to read message data frommsgnum
- the message number of the message in the specified folder
-
MStorMessage
public MStorMessage(MessageDelegate delegate)
- Parameters:
delegate
- a delegate providing implementation-specific message functionality
-
MStorMessage
public MStorMessage(javax.mail.Folder folder, InputStream in, int msgnum, MessageDelegate delegate)
- Parameters:
folder
- the folder associated with the messagein
- an input stream to read message data frommsgnum
- the message number of the message in the specified folderdelegate
- a delegate providing implementation-specific message functionality
-
MStorMessage
public MStorMessage(javax.mail.Folder folder, javax.mail.internet.InternetHeaders headers, byte[] content, int msgnum) throws javax.mail.MessagingException
- Parameters:
folder
- the folder associated with the messageheaders
- headers for the message instancecontent
- message datamsgnum
- the message number of the message in the specified folder- Throws:
javax.mail.MessagingException
- where an unexpected error occurs
-
-
Method Detail
-
getAllHeaderLines
public Enumeration<String> getAllHeaderLines() throws javax.mail.MessagingException
- Specified by:
getAllHeaderLines
in interfacejavax.mail.internet.MimePart
- Overrides:
getAllHeaderLines
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getAllHeaders
public Enumeration<javax.mail.Header> getAllHeaders() throws javax.mail.MessagingException
- Specified by:
getAllHeaders
in interfacejavax.mail.Part
- Overrides:
getAllHeaders
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getHeader
public String getHeader(String name, String delimiter) throws javax.mail.MessagingException
- Specified by:
getHeader
in interfacejavax.mail.internet.MimePart
- Overrides:
getHeader
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getHeader
public String[] getHeader(String name) throws javax.mail.MessagingException
- Specified by:
getHeader
in interfacejavax.mail.Part
- Overrides:
getHeader
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getMatchingHeaderLines
public Enumeration<String> getMatchingHeaderLines(String[] names) throws javax.mail.MessagingException
- Specified by:
getMatchingHeaderLines
in interfacejavax.mail.internet.MimePart
- Overrides:
getMatchingHeaderLines
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getMatchingHeaders
public Enumeration<javax.mail.Header> getMatchingHeaders(String[] names) throws javax.mail.MessagingException
- Specified by:
getMatchingHeaders
in interfacejavax.mail.Part
- Overrides:
getMatchingHeaders
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getNonMatchingHeaderLines
public Enumeration<String> getNonMatchingHeaderLines(String[] names) throws javax.mail.MessagingException
- Specified by:
getNonMatchingHeaderLines
in interfacejavax.mail.internet.MimePart
- Overrides:
getNonMatchingHeaderLines
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getNonMatchingHeaders
public Enumeration<javax.mail.Header> getNonMatchingHeaders(String[] names) throws javax.mail.MessagingException
- Specified by:
getNonMatchingHeaders
in interfacejavax.mail.Part
- Overrides:
getNonMatchingHeaders
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
getContentStream
protected InputStream getContentStream() throws javax.mail.MessagingException
- Overrides:
getContentStream
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
setExpunged
protected void setExpunged(boolean expunged)
- Overrides:
setExpunged
in classjavax.mail.Message
-
getReceivedDate
public Date getReceivedDate() throws javax.mail.MessagingException
- Overrides:
getReceivedDate
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
setFlags
public void setFlags(javax.mail.Flags flags, boolean set) throws javax.mail.MessagingException
- Overrides:
setFlags
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
setFlag
public void setFlag(javax.mail.Flags.Flag flag, boolean set) throws javax.mail.MessagingException
- Overrides:
setFlag
in classjavax.mail.Message
- Throws:
javax.mail.MessagingException
-
setHeader
public void setHeader(String s, String s1) throws javax.mail.MessagingException
- Specified by:
setHeader
in interfacejavax.mail.Part
- Overrides:
setHeader
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
addHeader
public void addHeader(String s, String s1) throws javax.mail.MessagingException
- Specified by:
addHeader
in interfacejavax.mail.Part
- Overrides:
addHeader
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
removeHeader
public void removeHeader(String s) throws javax.mail.MessagingException
- Specified by:
removeHeader
in interfacejavax.mail.Part
- Overrides:
removeHeader
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
addHeaderLine
public void addHeaderLine(String s) throws javax.mail.MessagingException
- Specified by:
addHeaderLine
in interfacejavax.mail.internet.MimePart
- Overrides:
addHeaderLine
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
-
addTag
public void addTag(String tag) throws javax.mail.MessagingException
Description copied from interface:Taggable
Add the specified model to the associated tags.
-
removeTag
public void removeTag(String tag) throws javax.mail.MessagingException
Description copied from interface:Taggable
Remove the specified model from the associated tags.
-
saveChanges
public void saveChanges() throws javax.mail.MessagingException
Attempts to save metadata after callingsaveChanges
in the superclass.- Overrides:
saveChanges
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
- where an error occurs in the delegate save
-
updateHeaders
protected void updateHeaders() throws javax.mail.MessagingException
Attempts to update headers in metadata after updating headers in superclass.- Overrides:
updateHeaders
in classjavax.mail.internet.MimeMessage
- Throws:
javax.mail.MessagingException
- where an error occurs in the delegate update
-
getTags
public Tags getTags() throws javax.mail.MessagingException
Returns tags associated with this message. Note that any changes made to the returned instance will not affect this message.
-
getUid
protected long getUid()
Returns the UID associated with the message.- Returns:
- a long representation of a UID, or -1 if no UID is assigned
-
getInReplyTo
public MStorMessage getInReplyTo()
- Returns:
- a message instance such that this message is a reply to it
-
getReferences
public List<MStorMessage> getReferences()
- Returns:
- a list of message instances related to this message
-
-