javax.mail
public abstract class Message extends Object implements Part
A message is retrieved from a folder, and is normally a lightweight object that retrieves its properties on demand. Fetch profiles may be used to prefetch certain properties of a message.
To send a message, an appropriate subclsass is instantiated, its
properties set, and it is then delivered via a transport using the
Transport.sendMessage
method.
Version: 1.4
See Also: Part
Nested Class Summary | |
---|---|
static class | Message.RecipientType
The types of recipients to which a message can be sent.
|
Field Summary | |
---|---|
protected boolean | expunged
True if this message has been expunged. |
protected Folder | folder
The containing folder. |
protected int | msgnum
The number of this message within its folder, starting from 1,
or 0 if the message was not retrieved from a folder. |
protected Session | session
The session in scope for this message. |
Constructor Summary | |
---|---|
protected | Message()
Constructor with no folder or session. |
protected | Message(Folder folder, int msgnum)
Constructor with a folder and a message number.
|
protected | Message(Session session)
Constructor with a session. |
Method Summary | |
---|---|
abstract void | addFrom(Address[] addresses)
Adds addresses to the identity of the person sending this message. |
void | addRecipient(Message.RecipientType type, Address address)
Adds the recipient address of the given type. |
abstract void | addRecipients(Message.RecipientType type, Address[] addresses)
Adds the recipient addresses of the given type. |
Address[] | getAllRecipients()
Returns all the recipient addresses in the message. |
abstract Flags | getFlags()
Returns the flags for this message.
|
Folder | getFolder()
Returns the folder from which this message was obtained. |
abstract Address[] | getFrom()
Returns the identity of the person(s) who ordered the sending of
this message.
|
int | getMessageNumber()
Returns the message number for this message within its folder. |
abstract Date | getReceivedDate()
Returns the date this message was received. |
abstract Address[] | getRecipients(Message.RecipientType type)
Returns all the recipient addresses of the specified type. |
Address[] | getReplyTo()
Returns the addresses to which replies should be directed. |
abstract Date | getSentDate()
Returns the date this message was sent. |
abstract String | getSubject()
Returns the subject of this message. |
boolean | isExpunged()
Indicates whether this message is expunged. |
boolean | isSet(Flags.Flag flag)
Indicates whether the specified flag is set in this message. |
boolean | match(SearchTerm term)
Indicates whether the specified search term applies to this message. |
abstract Message | reply(boolean replyToAll)
Returns a new message suitable for a reply to this message.
|
abstract void | saveChanges()
Save any changes made to this message into its underlying store, if
the message was obtained from a folder. |
protected void | setExpunged(boolean expunged)
Sets the expunged flag for this message. |
void | setFlag(Flags.Flag flag, boolean set)
Sets the specified flag on this message to the given value. |
abstract void | setFlags(Flags flag, boolean set)
Sets the specified flags on this message to the given value.
|
abstract void | setFrom()
Sets the identity of the person sending this message, as obtained
from the property "mail.user".
|
abstract void | setFrom(Address address)
Sets the identity of the person sending this message. |
protected void | setMessageNumber(int msgnum)
Sets the message number for this message. |
void | setRecipient(Message.RecipientType type, Address address)
Sets the recipient address of the specified type. |
abstract void | setRecipients(Message.RecipientType type, Address[] addresses)
Sets the recipient addresses of the specified type. |
void | setReplyTo(Address[] addresses)
Sets the addresses to which replies should be directed. |
abstract void | setSentDate(Date date)
Sets the date this message was sent. |
abstract void | setSubject(String subject)
Sets the subject of this message. |
Parameters: folder the containing folder msgnum the sequence number within the folder
Parameters: session the session in scope
Parameters: addresses the senders
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values
Parameters: type the recipient type addresses the addresses
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
Modifying any of these flags does not affect the message flags.
Use the setFlags
method to change the message's flags.
In certain implementations, this may be different from the entity that actually sent the message.
See Also: msgnum
Parameters: type the recipient type
See Also: Folder
Parameters: flag the flag
Parameters: term the search term
The subject field is filled in with the original subject prefixed with "Re:" (unless it already starts with "Re:").
Parameters: replyToAll if the reply should be sent to all recipients of this message
This method ensures that any header fields are consistent with the changed message contents.
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
Parameters: flag the flag to be set set the value to be set
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
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 IllegalStateException if this message is obtained from a READ_ONLY folder.
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder
Parameters: address the sender
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
See Also: msgnum
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values
Parameters: type the recipient type addresses the addresses
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
Parameters: date the sent date of this message
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.
Parameters: subject the subject
Throws: IllegalWriteException if the underlying implementation does not support modification of existing values IllegalStateException if this message is obtained from a READ_ONLY folder.