|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjavax.mail.Message
public abstract class Message
このクラスは電子メールメッセージをモデル化します。 これは抽象クラスです。サブクラスは実際の実装を提供します。
Message は Part インタフェースを実装します。 Message は一連の属性と "内容" を含みます。 フォルダ内の Message は、フォルダ内の状態を表す一連のフラグも含んでいます。
Message は Part
インタフェースに定義される属性に加え、新規の属性を定義します。
これらの属性はメッセージのメタデータ、つまり、メッセージのアドレッシング及び説明的情報を指定します。
Message オブジェクトは、Folder から、 又は適切なサブクラスの新規 Message オブジェクトを構築する事により取得されます。 受信済みの Message は、通常 "INBOX" というフォルダから取り出されます。
フォルダから取得される Message オブジェクトは、実際のメッセージへの軽量な参照に過ぎません。
Message は、各項目がメッセージから要求される時に(オンデマンドに)入力されます。
一部のフォルダ実装は、特定のユーザ指定項目が入力済みの Message オブジェクトを返す事ができます。
メッセージを送信するには、Message の適切なサブクラス (MimeMessage 等) がインスタンス化され、
属性と内容が入力され、Transport.send
メソッドを使用してメッセージが送信されます。
Part
入れ子のクラスの概要 | |
---|---|
static class |
Message.RecipientType
この内部クラスは、Message クラスにより許可される受信者の型を定義します。 |
フィールドの概要 | |
---|---|
protected boolean |
expunged
このメッセージが消去された場合は true になります。 |
protected Folder |
folder
このメッセージがフォルダから取得される場合は、メッセージの含まれるフォルダです。 |
protected int |
msgnum
フォルダ内のこのメッセージの番号です。 |
protected Session |
session
この Message の Session オブジェクトです。 |
インタフェース javax.mail.Part から継承されたフィールド |
---|
ATTACHMENT, INLINE |
コンストラクタの概要 | |
---|---|
protected |
Message()
引数なしのコンストラクタです。 |
protected |
Message(Folder folder,
int msgnum)
Folder 及びメッセージ番号を受け取るコンストラクタです。 |
protected |
Message(Session session)
Session を受け取るコンストラクタです。 |
メソッドの概要 | |
---|---|
abstract void |
addFrom(Address[] addresses)
これらのアドレスを既存の "From" 属性に追加します。 |
void |
addRecipient(Message.RecipientType type,
Address address)
この受信者アドレスを、指定された型の既存のアドレスに追加します。 |
abstract void |
addRecipients(Message.RecipientType type,
Address[] addresses)
これらの受信者アドレスを、指定された型の既存のアドレスに追加します。 |
Address[] |
getAllRecipients()
メッセージの全ての受信者アドレスを取得します。 |
abstract Flags |
getFlags()
このメッセージのフラグを含む Flags オブジェクトを返します。 |
Folder |
getFolder()
このメッセージが取得されたフォルダを取得します。 |
abstract Address[] |
getFrom()
"From" 属性を返します。 |
int |
getMessageNumber()
この Message の Message 番号を取得します。 |
abstract Date |
getReceivedDate()
このメッセージが受信された日付を取得します。 |
abstract Address[] |
getRecipients(Message.RecipientType type)
指定された型の全ての受信者アドレスを取得します。 |
Address[] |
getReplyTo()
返信の送信先のアドレスを取得します。 |
abstract Date |
getSentDate()
このメッセージが送信された日付を取得します。 |
abstract String |
getSubject()
このメッセージの件名を取得します。 |
boolean |
isExpunged()
このメッセージが消去されているかどうかをチェックします。 |
boolean |
isSet(Flags.Flag flag)
flag 引数に指定されたフラグがこのメッセージ内に設定されているかどうかをチェックします。 |
boolean |
match(SearchTerm term)
指定された Search 基準をこのメッセージに適用します。 |
abstract Message |
reply(boolean replyToAll)
このメッセージの返信に適した新しい Message を取得します。 |
abstract void |
saveChanges()
メッセージがフォルダに含まれる場合、そのフォルダが閉じる際に、 このメッセージに対する全ての変更をメッセージストアに保存します。 |
protected void |
setExpunged(boolean expunged)
この Message の消去済みフラグを設定します。 |
void |
setFlag(Flags.Flag flag,
boolean set)
このメッセージ上の指定されたフラグを、指定された値に設定します。 |
abstract void |
setFlags(Flags flag,
boolean set)
このメッセージ上の指定されたフラグを、指定された値に設定します。 |
abstract void |
setFrom()
この Message 中の "From" 属性を設定します。 |
abstract void |
setFrom(Address address)
この Message 中の "From" 属性を設定します。 |
protected void |
setMessageNumber(int msgnum)
この Message の Message 番号を設定します。 |
void |
setRecipient(Message.RecipientType type,
Address address)
受信者アドレスを設定します。 |
abstract void |
setRecipients(Message.RecipientType type,
Address[] addresses)
受信者アドレスを設定します。 |
void |
setReplyTo(Address[] addresses)
返信の送信先のアドレスを設定します (通常、アドレスは 1 つだけ指定します)。 |
abstract void |
setSentDate(Date date)
このメッセージの送信日付を設定します。 |
abstract void |
setSubject(String subject)
このメッセージの件名を設定します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
インタフェース javax.mail.Part から継承されたメソッド |
---|
addHeader, getAllHeaders, getContent, getContentType, getDataHandler, getDescription, getDisposition, getFileName, getHeader, getInputStream, getLineCount, getMatchingHeaders, getNonMatchingHeaders, getSize, isMimeType, removeHeader, setContent, setContent, setDataHandler, setDescription, setDisposition, setFileName, setHeader, setText, writeTo |
フィールドの詳細 |
---|
protected int msgnum
protected boolean expunged
protected Folder folder
protected Session session
コンストラクタの詳細 |
---|
protected Message()
protected Message(Folder folder, int msgnum)
folder
- この Message を含むフォルダmsgnum
- このフォルダ内のこのメッセージのシーケンス番号protected Message(Session session)
session
- Session オブジェクトメソッドの詳細 |
---|
public abstract Address[] getFrom() throws MessagingException
一部の実装において、これはメッセージを実際に送信したエンティティと異なる事があります。
この属性がこのメッセージ中に存在しない場合、このメソッドは null
を返します。
この属性は存在するがアドレスは含まない場合、空の配列を返します。
MessagingException
public abstract void setFrom() throws MessagingException
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public abstract void setFrom(Address address) throws MessagingException
address
- 送信者
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public abstract void addFrom(Address[] addresses) throws MessagingException
addresses
- 送信者
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合
MessagingException
public abstract Address[] getRecipients(Message.RecipientType type) throws MessagingException
指定された型のヘッダがこのメッセージ中に存在しない場合、
このメソッドは null
を返します。
ヘッダは存在するがアドレスを含まない場合は、空の配列を返します。
type
- 受信者の型
MessagingException
Message.RecipientType.TO
,
Message.RecipientType.CC
,
Message.RecipientType.BCC
public Address[] getAllRecipients() throws MessagingException
getRecipients
メソッドを使用して、
TO、CC、及び BCC の各受信者を抽出します。
受信者ヘッダがこのメッセージ中に存在しない場合、このメソッドは null
を返します。
受信者ヘッダは存在するがアドレスを含まない場合は、空の配列を返します。
MessagingException
Message.RecipientType.TO
,
Message.RecipientType.CC
,
Message.RecipientType.BCC
,
getRecipients(javax.mail.Message.RecipientType)
public abstract void setRecipients(Message.RecipientType type, Address[] addresses) throws MessagingException
type
- 受信者の型addresses
- アドレス
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public final void setRecipient(Message.RecipientType type, Address address) throws MessagingException
デフォルトの実装は setRecipients
メソッドを使用します。
type
- 受信者の型address
- アドレス
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合public abstract void addRecipients(Message.RecipientType type, Address[] addresses) throws MessagingException
type
- 受信者の型addresses
- アドレス
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public final void addRecipient(Message.RecipientType type, Address address) throws MessagingException
デフォルトの実装は addRecipients
メソッドを使用します。
type
- 受信者の型address
- アドレス
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合public Address[] getReplyTo() throws MessagingException
デフォルトの実装は単に getFrom
メソッドを呼び出します。
対応するヘッダが存在しない場合、このメソッドは null
を返します。
ヘッダは存在するがアドレスを含まない場合は、空の配列を返します。
MessagingException
getFrom()
public void setReplyTo(Address[] addresses) throws MessagingException
ここで提供されるデフォルトの実装は、MethodNotSupportedException をスローするだけです。
addresses
- 返信の送信先のアドレス
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合
MethodNotSupportedException
- 実装がこの属性の設定をサポートしない場合public abstract String getSubject() throws MessagingException
MessagingException
public abstract void setSubject(String subject) throws MessagingException
subject
- 件名
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public abstract Date getSentDate() throws MessagingException
MessagingException
public abstract void setSentDate(Date date) throws MessagingException
date
- このメッセージの送信日付
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public abstract Date getReceivedDate() throws MessagingException
MessagingException
public abstract Flags getFlags() throws MessagingException
Flags
オブジェクトを返します。
返されたこの Flags オブジェクト中のフラグを変更しても、メッセージには反映されません。
メッセージのフラグを変更する為には、setFlags()
を使って下さい。
MessagingException
Flags
,
setFlags(javax.mail.Flags, boolean)
public boolean isSet(Flags.Flag flag) throws MessagingException
flag
引数に指定されたフラグがこのメッセージ内に設定されているかどうかをチェックします。
デフォルトの実装は getFlags
を使用します。
flag
- フラグ
MessagingException
Flags.Flag
,
Flags.Flag.ANSWERED
,
Flags.Flag.DELETED
,
Flags.Flag.DRAFT
,
Flags.Flag.FLAGGED
,
Flags.Flag.RECENT
,
Flags.Flag.SEEN
public abstract void setFlags(Flags flag, boolean set) throws MessagingException
Flags
オブジェクト中に指定されていない、
このメッセージ中のすべてのフラグは影響を受けません。
これにより、この Message を含むフォルダ上に登録されている
全ての MessageChangedListener に MessageChangedEvent
が配信されます。
flag
- 設定されるフラグを含む Flags オブジェクトset
- 設定される値
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合MessageChangedEvent
public final void setFlag(Flags.Flag flag, boolean set) throws MessagingException
MessageChangedEvent
が配信される事になります。
デフォルトの実装は setFlags
メソッドを使用します。
flag
- 設定されるフラグを含む Flags オブジェクトset
- 設定される値
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合MessageChangedEvent
public final int getMessageNumber()
有効なメッセージ番号は 1 から始まります。 どのフォルダにも属さないメッセージ (新規の作成又は派生されたメッセージ) のメッセージ番号は 0 です。
protected void setMessageNumber(int msgnum)
public final Folder getFolder()
public boolean isExpunged()
getMessageNumber()
を除く全てのメソッドが無効です。
包含 Folder 上での明示的な expunge()
要求により消去されるメッセージは、
直ちに Folder から削除されます。
別のソースから外部的に消去されるメッセージには "消去済み" のマークが付けられ、
isExpunged() メソッドに対して true が返されます。
但し、Folder 上で明示的な expunge()
が実行されるまで Folder から削除されません。
消去処理の詳細については expunge()
の説明を参照して下さい。
Folder.expunge()
protected void setExpunged(boolean expunged)
expunged
- 消去済みフラグpublic abstract Message reply(boolean replyToAll) throws MessagingException
replyToAll
が true の場合、
新しい Message はこのメッセージの全ての受信者に送られます。
それ以外の場合、返信はこのメッセージの送信者だけに
送られます (getReplyTo
メソッドの値を使用)。
"Subject" フィールドには、元の件名の前に "Re:" が付けられて 入力されます (既に先頭が "Re:" でない場合)。
返信メッセージはこのメッセージと同じセッションを使用します。
replyToAll
- 返信はこのメッセージの全ての受信者に送信する場合 true
MessagingException
public abstract void saveChanges() throws MessagingException
READ_ONLY で開かれているフォルダから取得されたメッセージを変更してはいけません。 又、そうしたメッセージ上で saveChanges を呼び出してはいけません。
MessagingException
IllegalWriteException
- 実装が既存値の変更をサポートしない場合
IllegalStateException
- このメッセージが READ_ONLY フォルダから取得された場合public final boolean match(SearchTerm term) throws MessagingException
term
- Search 基準
MessagingException
SearchTerm
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |