| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Session session = …;
Message msg = new MimeMessage(session);
Based on 55 examples
public abstract class Message extends Object implements Part
This class models an email message. This is an abstract class. Subclasses provide actual implementations.
Message implements the Part interface. Message contains a set of attributes and a "content". Messages within a folder also have a set of flags that describe its state within the folder.
Message defines some new attributes in addition to those defined
in the Part
interface. These attributes specify meta-data
for the message - i.e., addressing and descriptive information about
the message.
Message objects are obtained either from a Folder or by constructing a new Message object of the appropriate subclass. Messages that have been received are normally retrieved from a folder named "INBOX".
A Message object obtained from a folder is just a lightweight
reference to the actual message. The Message is 'lazily' filled
up (on demand) when each item is requested from the message. Note
that certain folder implementations may return Message objects that
are pre-filled with certain user-specified items.
To send a message, an appropriate subclass of Message (e.g.,
MimeMessage) is instantiated, the attributes and content are
filled in, and the message is sent using the Transport.send
method.
Nested Class Summary | |
---|---|
static class |
This inner class defines the types of recipients allowed by the Message class. |
Field Summary | |
---|---|
protected boolean |
expunged
True if this message has been expunged. |
protected Folder |
folder
The containing folder, if this message is obtained from a folder |
protected int |
msgnum
The number of this message within its folder, or zero if the message was not retrieved from a folder. |
protected Session |
session
The Session object for this Message |
Constructor Summary | |
---|---|
protected |
Message() No-arg version of the constructor. |
protected |
Constructor that takes a Folder and a message number. |
protected |
Constructor that takes a Session. |
Method Summary | |
---|---|
abstract void |
Add these addresses to the existing "From" attribute |
void |
addRecipient(Message.RecipientType type, Address address) Add this recipient address to the existing ones of the given type. |
abstract void |
addRecipients(Message.RecipientType type, Address[] addresses) Add these recipient addresses to the existing ones of the given type. |
Address[] |
Get all the recipient addresses for the message. |
abstract Flags |
getFlags() Returns a Flags object containing the flags for
this message.
|
Folder |
Get the folder from which this message was obtained. |
abstract Address[] |
getFrom() Returns the "From" attribute. |
int |
Get the Message number for this Message. |
abstract Date |
Get the date this message was received. |
abstract Address[] |
Get all the recipient addresses of the given type. |
Address[] |
Get the addresses to which replies should be directed. |
abstract Date |
Get the date this message was sent. |
abstract String |
Get the subject of this message. |
boolean |
Checks whether this message is expunged. |
boolean |
isSet(Flags.Flag flag) Check whether the flag specified in the flag
argument is set in this message.
|
boolean |
match(SearchTerm term) Apply the specified Search criterion to this message. |
abstract Message |
reply(boolean replyToAll) Get a new Message suitable for a reply to this message. |
abstract void |
Save any changes made to this message into the message-store when the containing folder is closed, if the message is contained in a folder. |
void |
send() Use the Transport.send(message) method to send Messages |
protected void |
setExpunged(boolean expunged) Sets the expunged flag for this Message. |
void |
setFlag(Flags.Flag flag, boolean set) Set the specified flag on this message to the specified value. |
abstract void |
Set the specified flags on this message to the specified value. |
abstract void |
setFrom() Set the "From" attribute in this Message. |
abstract void |
Set the "From" attribute in this Message. |
protected void |
setMessageNumber(int msgnum) Set the Message number for this Message. |
void |
setRecipient(Message.RecipientType type, Address address) Set the recipient address. |
abstract void |
setRecipients(Message.RecipientType type, Address[] addresses) Set the recipient addresses. |
void |
setReplyTo(Address[] addresses) Set the addresses to which replies should be directed. |
abstract void |
setSentDate(Date date) Set the sent date of this message. |
abstract void |
setSubject(String subject) Set the subject of this message. |
Field Detail |
---|
protected boolean expunged
protected Folder folder
protected int msgnum
protected Session session
Constructor Detail |
---|
protected Message()
protected Message(Folder folder, int msgnum)
folder
- containing foldermsgnum
- this message's sequence number within this folderprotected Message(Session session)
session
- A Session objectMethod Detail |
---|
public abstract void addFrom(Address[] addresses) throws MessagingException
addresses
- the sendersMessagingException
public void addRecipient(Message.RecipientType type, Address address) throws MessagingException
The default implementation uses the addRecipients
method.
type
- the recipient typeaddress
- the addressMessagingException
public abstract void addRecipients(Message.RecipientType type, Address[] addresses) throws MessagingException
type
- the recipient typeaddresses
- the addressesMessagingException
public Address[] getAllRecipients() throws MessagingException
getRecipients
method.
This method returns null
if none of the recipient
headers are present in this message. It may Return an empty array
if any recipient header is present, but contains no addresses.
MessagingException
public abstract Flags getFlags() throws MessagingException
Flags
object containing the flags for
this message.
Modifying any of the flags in this returned Flags object will
not affect the flags of this message. Use setFlags()
to do that.
MessagingException
public Folder getFolder()
public abstract Address[] getFrom() throws MessagingException
In certain implementations, this may be different from the entity that actually sent the message.
This method returns null
if this attribute
is not present in this message. Returns an empty array if
this attribute is present, but contains no addresses.
MessagingException
public int getMessageNumber()
Valid message numbers start at 1. Messages that do not belong to any folder (like newly composed or derived messages) have 0 as their message number.
public abstract Date getReceivedDate() throws MessagingException
MessagingException
public abstract Address[] getRecipients(Message.RecipientType type) throws MessagingException
This method returns null
if no recipients of
the given type are present in this message. It may return an
empty array if the header is present, but contains no addresses.
type
- the recipient typeMessagingException
public Address[] getReplyTo() throws MessagingException
The default implementation simply calls the getFrom
method.
This method returns null
if the corresponding
header is not present. Returns an empty array if the header
is present, but contains no addresses.
MessagingException
public abstract Date getSentDate() throws MessagingException
MessagingException
public abstract String getSubject() throws MessagingException
MessagingException
public boolean isExpunged()
getMessageNumber()
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 explicit
expunge()
is done on the Folder.
See the description of expunge()
for more details on
expunge handling.
public boolean isSet(Flags.Flag flag) throws MessagingException
flag
argument is set in this message.
The default implementation uses getFlags
.
flag
- the flagMessagingException
public boolean match(SearchTerm term) throws MessagingException
term
- the Search criterionMessagingException
public abstract Message reply(boolean replyToAll) throws MessagingException
If replyToAll
is set, the new Message will be addressed
to all recipients of this message. Otherwise, the reply will be
addressed to only the sender of this message (using the value
of the getReplyTo
method).
The "Subject" field is filled in with the original subject prefixed with "Re:" (unless it already starts with "Re:").
The reply message will use the same session as this message.
replyToAll
- reply should be sent to all recipients
of this messageMessagingException
public abstract void saveChanges() throws MessagingException
Messages obtained from folders opened READ_ONLY should not be modified and saveChanges should not be called on such messages.
MessagingException
public void send()
protected void setExpunged(boolean expunged)
expunged
- the expunged flagpublic void setFlag(Flags.Flag flag, boolean set) throws MessagingException
MessageChangedEvent
being
delivered to any MessageChangedListener registered on this
Message's containing folder.
The default implementation uses the setFlags
method.
flag
- Flags.Flag object containing the flag to be setset
- the value to be setMessagingException
public abstract void setFlags(Flags flag, boolean set) throws MessagingException
Flags
object are unaffected.
This will result in a MessageChangedEvent
being
delivered to any MessageChangedListener registered on this
Message's containing folder.
flag
- Flags object containing the flags to be setset
- the value to be setMessagingException
public abstract void setFrom() throws MessagingException
MessagingException
public abstract void setFrom(Address address) throws MessagingException
address
- the senderMessagingException
protected void setMessageNumber(int msgnum)
msgnum
public void setRecipient(Message.RecipientType type, Address address) throws MessagingException
The default implementation uses the setRecipients
method.
type
- the recipient typeaddress
- the addressMessagingException
public abstract void setRecipients(Message.RecipientType type, Address[] addresses) throws MessagingException
type
- the recipient typeaddresses
- the addressesMessagingException
public void setReplyTo(Address[] addresses) throws MessagingException
The default implementation provided here just throws the MethodNotSupportedException.
addresses
- addresses to which replies should be directedMessagingException
public abstract void setSentDate(Date date) throws MessagingException
date
- the sent date of this messageMessagingException
public abstract void setSubject(String subject) throws MessagingException
subject
- the subjectMessagingException
| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |