|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
java.lang.Object
|
+--javax.mail.Message
|
+--javax.mail.internet.MimeMessage
このクラスは MIME 形式の電子メールメッセージを表します。これは Message 抽象クラスと MimePart インタフェースを実装します。
新しい MIME 形式メッセージを作成しようとするクライアントは、空の MimeMessage オブジェクトをインスタント化し、適切な属性と内容で満たします。
MIME 準拠のバックエンドストアを実装するサービスプロバイダは、MimeMessage をサブクラス化し、あるメソッドをオーバーライドして、特定の実装を提供できます。もっとも単純なケースは、おそらくプロバイダが MIME 形式の入力ストリームを生成し、ストリームの構文解析をこのクラスに任せることです。
MimeMessage は InternetHeaders クラスを使用して、メッセージのトップレベルの RFC 822 ヘッダを構文解析および格納します。
RFC822 ヘッダフィールドは US-ASCII 文字だけを含まなければなりません。MIME では ASCII 以外の文字をエンコーディングすることにより、特定のヘッダの特定の部分に設定可能です。RFC 2047 はこの処理の規則を指定します。このパッケージで提供される MimeUtility クラスを用いてこの処理を行うことができます。setHeader、addHeader、および addHeaderLine メソッドの呼び出し側は、指定されたヘッダが MIME 要件に従うことを保証する必要があります。また、これらのヘッダフィールドが転送における行の長さ制限 (SMTP の場合は 1000バイト) を超える場合は、送信の前に折りたたむ (ラップする) 必要があります。受信ヘッダは折りたたまれている可能性があります。アプリケーションはヘッダを適切に折りたたみ、展開する責任があります。
MimeUtility,
Part,
Message,
MimePart| 内部クラスの概要 | |
static class |
MimeMessage.RecipientType
この内部クラスは javax.mail.Message.RecipientType クラスを拡張して、補足的な RecipientType を追加します。 |
| クラス javax.mail.Message から継承した内部クラス |
Message.RecipientType |
| フィールドの概要 | |
protected byte[] |
content
この Message の内容のバイトを保持するバイト配列です。 |
protected java.io.InputStream |
contentStream
このメッセージのデータが SharedInputStream インタフェースを実装する InputStream により供給された場合、 contentStream がこのメッセージの内容を表すもう 1 つのストリームです。 |
protected DataHandler |
dh
この Message の内容を表す DataHandler オブジェクトです。 |
protected Flags |
flags
このメッセージの Flags です。 |
protected InternetHeaders |
headers
このメッセージのヘッダを格納する InternetHeaders オブジェクトです。 |
protected boolean |
modified
メッセージが変更されたかどうかを示すフラグです。 |
protected boolean |
saved
このメッセージ上で saveChanges メソッドを呼び出す必要がある場合のフラグです。 |
| クラス javax.mail.Message から継承したフィールド |
expunged, folder, msgnum, session |
| インタフェース javax.mail.Part から継承したフィールド |
ATTACHMENT, INLINE |
| コンストラクタの概要 | |
protected |
MimeMessage(Folder folder,
java.io.InputStream is,
int msgnum)
指定された MIME InputStream のデータを読み取り、構文解析することで、MimeMessage を構築します。 |
protected |
MimeMessage(Folder folder,
int msgnum)
指定された Folder とメッセージ番号を持つ空の MimeMessage オブジェクトを構築します。 |
protected |
MimeMessage(Folder folder,
InternetHeaders headers,
byte[] content,
int msgnum)
指定された InternetHeaders オブジェクトおよび内容から MimeMessage を構築します。 |
|
MimeMessage(MimeMessage source)
source MimeMessage から初期化された内容を持つ新しい MimeMessage を構築します。 |
|
MimeMessage(Session session)
デフォルトのコンストラクタです。 |
|
MimeMessage(Session session,
java.io.InputStream is)
指定された MIME InputStream のデータを読み取り、構文解析することで、MimeMessage を構築します。 |
| メソッドの概要 | |
void |
addFrom(Address[] addresses)
指定されたアドレスを既存の「From」フィールドに追加します。 |
void |
addHeader(java.lang.String name,
java.lang.String value)
この値をこの header_name の既存値に追加します。 |
void |
addHeaderLine(java.lang.String line)
raw RFC 822 ヘッダ行を追加します。 |
void |
addRecipients(Message.RecipientType type,
Address[] addresses)
指定されたアドレスを指定された受信者タイプに追加します。 |
void |
addRecipients(Message.RecipientType type,
java.lang.String addresses)
指定されたアドレスを指定された受信者タイプに追加します。 |
protected InternetHeaders |
createInternetHeaders(java.io.InputStream is)
指定された InputStream からヘッダをロードする InternetHeaders オブジェクトを作成し、返します。 |
java.util.Enumeration |
getAllHeaderLines()
すべてのヘッダ行を String の Enumeration として取得します。 |
java.util.Enumeration |
getAllHeaders()
この Message のすべてのヘッダを Header オブジェクトの列挙として返します。 |
Address[] |
getAllRecipients()
メッセージのすべての受信者アドレスを取得します。 |
java.lang.Object |
getContent()
内容を Java オブジェクトとして返します。 |
java.lang.String |
getContentID()
「Content-ID」ヘッダフィールドの値を返します。 |
java.lang.String[] |
getContentLanguage()
このメッセージの「Content-Language」ヘッダフィールドで指定される言語を取得します。 |
java.lang.String |
getContentMD5()
「Content-MD5」ヘッダフィールドの値を返します。 |
protected java.io.InputStream |
getContentStream()
内容の raw バイトを生成します。 |
java.lang.String |
getContentType()
RFC 822「Content-Type」ヘッダフィールドの値を返します。 |
DataHandler |
getDataHandler()
この Message の内容の DataHandler を返します。 |
java.lang.String |
getDescription()
この Message の「Content-Description」ヘッダフィールドを返します。 |
java.lang.String |
getDisposition()
「Content-Disposition」ヘッダフィールドの値を返します。 |
java.lang.String |
getEncoding()
「Content-Transfer-Encoding」ヘッダフィールドからの内容転送エンコーディングを返します。 |
java.lang.String |
getFileName()
この Message に関連付けられたファイル名を取得します。 |
Flags |
getFlags()
このメッセージのフラグを含む Flags オブジェクトを返します。
|
Address[] |
getFrom()
RFC 822「From」ヘッダフィールドの値を返します。 |
java.lang.String[] |
getHeader(java.lang.String name)
この header_name のすべてのヘッダを取得します。 |
java.lang.String |
getHeader(java.lang.String name,
java.lang.String delimiter)
このヘッダ名のすべてのヘッダを取得し、区切り文字で区切られたヘッダが単一の String として返されます。 |
java.io.InputStream |
getInputStream()
この Message の「content」に対するデコードされた入力ストリームを返します。 |
int |
getLineCount()
このメッセージの内容の行数を返します。 |
java.util.Enumeration |
getMatchingHeaderLines(java.lang.String[] names)
一致するヘッダ行を String の Enumeration として取得します。 |
java.util.Enumeration |
getMatchingHeaders(java.lang.String[] names)
この Message から一致するヘッダを Header オブジェクトの Enumeration として返します。 |
java.lang.String |
getMessageID()
「Message-ID」ヘッダフィールドの値を返します。 |
java.util.Enumeration |
getNonMatchingHeaderLines(java.lang.String[] names)
一致しないヘッダ行を String の Enumeration として取得します。 |
java.util.Enumeration |
getNonMatchingHeaders(java.lang.String[] names)
この Message から一致しないヘッダを Header オブジェクトの Enumeration として返します。 |
java.io.InputStream |
getRawInputStream()
任意の Content-Transfer-Encoding をそのままにして、raw データへの InputStream を返します。 |
java.util.Date |
getReceivedDate()
このメッセージが受信された Date を返します。 |
Address[] |
getRecipients(Message.RecipientType type)
型により指定された受信者を返します。 |
Address[] |
getReplyTo()
RFC 822「Reply-To」ヘッダフィールドの値を返します。 |
java.util.Date |
getSentDate()
RFC 822「Date」フィールドの値を返します。 |
int |
getSize()
このメッセージの内容サイズをバイト単位で返します。 |
java.lang.String |
getSubject()
「Subject」ヘッダフィールドの値を返します。 |
boolean |
isMimeType(java.lang.String mimeType)
指定された MIME タイプの Part かどうかを識別します。 |
boolean |
isSet(Flags.Flag flag)
flag 引数に指定されたフラグがこのメッセージ内に設定されているかどうかをチェックします。
|
protected void |
parse(java.io.InputStream is)
headers および content フィールドを適切に設定する InputStream を構文解析します。 |
void |
removeHeader(java.lang.String name)
この名前を持つすべてのヘッダを削除します。 |
Message |
reply(boolean replyToAll)
このメッセージへの返信に適した新しい Message を取得します。 |
void |
saveChanges()
このメッセージの適切なヘッダフィールドを更新し、メッセージの内容と一貫性があるようにします。 |
void |
setContent(Multipart mp)
このメソッドは Message の内容を Multipart オブジェクトに設定します。 |
void |
setContent(java.lang.Object o,
java.lang.String type)
この Message の内容を設定するための簡易メソッドです。 |
void |
setContentID(java.lang.String cid)
この Message の「Content-ID」ヘッダフィールドを設定します。 |
void |
setContentLanguage(java.lang.String[] languages)
この MimePart の「Content-Language」ヘッダを設定します。 |
void |
setContentMD5(java.lang.String md5)
このメッセージの「Content-MD5」ヘッダフィールドを設定します。 |
void |
setDataHandler(DataHandler dh)
このメソッドはこの部分の内容を設定するための仕組みを提供します。 |
void |
setDescription(java.lang.String description)
この Message の「Content-Description」ヘッダフィールドを設定します。 |
void |
setDescription(java.lang.String description,
java.lang.String charset)
この Message の「Content-Description」ヘッダフィールドを設定します。 |
void |
setDisposition(java.lang.String disposition)
この Message の「Content-Disposition」ヘッダフィールドを設定します。 |
void |
setFileName(java.lang.String filename)
可能であれば、この部分に関連付けられたファイル名を設定します。 |
void |
setFlags(Flags flag,
boolean set)
このメッセージのフラグを設定します。 |
void |
setFrom()
InternetAddress.getLocalAddress メソッドの値を使用して、RFC 822「Form」ヘッダフィールドを設定します。 |
void |
setFrom(Address address)
RFC 822「From」ヘッダフィールドを設定します。 |
void |
setHeader(java.lang.String name,
java.lang.String value)
この header_name の値を設定します。 |
void |
setRecipients(Message.RecipientType type,
Address[] addresses)
指定された受信者のタイプを指定されたアドレスに設定します。 |
void |
setRecipients(Message.RecipientType type,
java.lang.String addresses)
指定された受信者のタイプを指定されたアドレスに設定します。 |
void |
setReplyTo(Address[] addresses)
RFC 822「Reply-To」ヘッダフィールドを設定します。 |
void |
setSentDate(java.util.Date d)
RFC 822「Date」ヘッダフィールドを設定します。 |
void |
setSubject(java.lang.String subject)
「Subject」ヘッダフィールドを設定します。 |
void |
setSubject(java.lang.String subject,
java.lang.String charset)
「Subject」ヘッダフィールドを設定します。 |
void |
setText(java.lang.String text)
指定された String をこの部分のコンテンツとして、「text/plain」の MIME タイプで設定する簡易メソッドです。 |
void |
setText(java.lang.String text,
java.lang.String charset)
「text/plain」の MIME タイプおよび指定された文字セットを使用し、指定された String をこの部分のコンテンツとして設定する簡易メソッドです。 |
protected void |
updateHeaders()
saveChanges メソッドにより呼び出され、実際に MIME ヘッダを更新します。 |
void |
writeTo(java.io.OutputStream os)
メッセージを RFC 822 形式のストリームとして出力します。 |
void |
writeTo(java.io.OutputStream os,
java.lang.String[] ignoreList)
メッセージを RFC 822 形式ストリームとして、指定されたヘッダなしで出力します。 |
| クラス javax.mail.Message から継承したメソッド |
addRecipient, getFolder, getMessageNumber, isExpunged, match, setExpunged, setFlag, setMessageNumber, setRecipient |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
protected DataHandler dh
protected byte[] content
protected java.io.InputStream contentStream
contentStream がこのメッセージの内容を表すもう 1 つのストリームです。この場合、content は null です。protected InternetHeaders headers
protected Flags flags
protected boolean modified
content 配列内の任意のデータは有効であるとみなされ、writeTo メソッドで直接使用されます。このフラグは、空のメッセージが作成されるとき、または saveChanges メソッドが呼び出されるときに true に設定されます。protected boolean saved
saveChanges メソッドを呼び出す必要がある場合のフラグです。このフラグは、public コンストラクタにより false に設定され、saveChanges メソッドにより true に設定されます。writeTo メソッドはこのフラグをチェックし、必要に応じて saveChanges メソッドを呼び出します。これにより、新しく構築されたメッセージ上で、saveChanges メソッドを呼び出し忘れるという一般的な誤りを避けることができます。| コンストラクタの詳細 |
public MimeMessage(Session session)
headers フィールドは空の InternetHeaders オブジェクトに設定されます。flags フィールドは空の Flags オブジェクトに設定されます。modified フラグは true に設定されます。
public MimeMessage(Session session,
java.io.InputStream is)
throws MessagingException
session - このメッセージの Session オブジェクトis - メッセージ入力ストリームMessagingException -
public MimeMessage(MimeMessage source)
throws MessagingException
source MimeMessage から初期化された内容を持つ新しい MimeMessage を構築します。新しいメッセージは元のメッセージと独立しています。
注: 現在の実装はどちらかというと非効率です。必要以上にデータのコピーを行います。
source - 内容のコピー元となるメッセージMessagingException -
protected MimeMessage(Folder folder,
int msgnum)
このメソッドは MimeMessage をサブクラス化するプロバイダ向けです。
protected MimeMessage(Folder folder,
java.io.InputStream is,
int msgnum)
throws MessagingException
このメソッドは MimeMessage をサブクラス化するプロバイダ向けです。
folder - 包含するフォルダis - メッセージ入力ストリームmsgnum - フォルダ内のこのメッセージのメッセージ番号MessagingException -
protected MimeMessage(Folder folder,
InternetHeaders headers,
byte[] content,
int msgnum)
throws MessagingException
MimeMessage をサブクラス化するプロバイダ向けです。folder - 包含するフォルダis - メッセージ入力ストリームmsgnum - フォルダ内のこのメッセージのメッセージ番号MessagingException - | メソッドの詳細 |
protected void parse(java.io.InputStream is)
throws MessagingException
headers および content フィールドを適切に設定する InputStream を構文解析します。また、modified フラグをリセットします。
このメソッドは、InputStream の構文解析時に制御する必要があるサブクラスにより使用されます。
is - メッセージ入力ストリームMessagingException -
public Address[] getFrom()
throws MessagingException
null を返します。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Message 内の getFromMessagingException - headers
public void setFrom(Address address)
throws MessagingException
null の場合は、このヘッダが削除されます。Message 内の setFromaddress - このメッセージの送信者IllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public void setFrom()
throws MessagingException
InternetAddress.getLocalAddress メソッドの値を使用して、RFC 822「Form」ヘッダフィールドを設定します。Message 内の setFromIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public void addFrom(Address[] addresses)
throws MessagingException
Message 内の addFromaddresses - このメッセージの送信者IllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public Address[] getRecipients(Message.RecipientType type)
throws MessagingException
Message.RecipientType.TO 「To」 Message.RecipientType.CC 「Cc」 Message.RecipientType.BCC 「Bcc」 MimeMessage.RecipientType.NEWSGROUPS 「Newsgroups」
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Message 内の getRecipientstype - 受信者の型MessagingException - ヘッダが取得できない場合AddressException - ヘッダの形式に誤りがある場合headers,
Message.RecipientType.TO,
Message.RecipientType.CC,
Message.RecipientType.BCC,
MimeMessage.RecipientType.NEWSGROUPS
public Address[] getAllRecipients()
throws MessagingException
Message 内の getAllRecipientsMessagingException - Message.RecipientType.TO,
Message.RecipientType.CC,
Message.RecipientType.BCC,
MimeMessage.RecipientType.NEWSGROUPS
public void setRecipients(Message.RecipientType type,
Address[] addresses)
throws MessagingException
null の場合は、対応する受信者フィールドが削除されます。Message 内の setRecipientstype - 受信者タイプaddresses - アドレスIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException - getRecipients(javax.mail.Message.RecipientType)
public void setRecipients(Message.RecipientType type,
java.lang.String addresses)
throws MessagingException
null の場合は、対応する受信者フィールドが削除されます。type - 受信者タイプaddresses - アドレスAddressException - アドレス String の構文解析に失敗した場合IllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException - getRecipients(javax.mail.Message.RecipientType)
public void addRecipients(Message.RecipientType type,
Address[] addresses)
throws MessagingException
Message 内の addRecipientstype - 受信者タイプaddresses - アドレスIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public void addRecipients(Message.RecipientType type,
java.lang.String addresses)
throws MessagingException
type - 受信者タイプaddresses - アドレスAddressException - アドレス String の構文解析に失敗した場合IllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public Address[] getReplyTo()
throws MessagingException
getFrom メソッドが呼び出され、その値が返されます。この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。Message 内の getReplyToMessagingException - headers
public void setReplyTo(Address[] addresses)
throws MessagingException
null の場合は、このヘッダが削除されます。Message 内の setReplyToIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.lang.String getSubject()
throws MessagingException
件名が RFC 2047 に従ってエンコードされている場合、デコードされ、Unicode に変換されます。デコーディングまたは変換が失敗した場合、raw データがそのまま返されます。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Message 内の getSubjectMessagingException - headers
public void setSubject(java.lang.String subject)
throws MessagingException
文字セットエンコーディング処理が失敗する場合、MessagingException がスローされ、UnsupportedEncodingException が MessagingException 内の入れ子にされた例外のチェーンに含まれることに注意してください。
Message 内の setSubjectsubject - 件名IllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException. - 文字セット変換が失敗すると、UnsupportedEncodingException が例外チェーンに含まれる場合がある
public void setSubject(java.lang.String subject,
java.lang.String charset)
throws MessagingException
文字セットエンコーディング処理が失敗する場合、MessagingException がスローされ、UnsupportedEncodingException が MessagingException 内の入れ子にされた例外のチェーンに含まれることに注意してください。
subject - 件名charset - 文字セットIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException. - 文字セット変換が失敗すると、UnsupportedEncodingException が例外チェーンに含まれる場合がある
public java.util.Date getSentDate()
throws MessagingException
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Message 内の getSentDateMessagingException -
public void setSentDate(java.util.Date d)
throws MessagingException
null の場合は既存の「Date」フィールドが削除されます。Message 内の setSentDateIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.util.Date getReceivedDate()
throws MessagingException
null を返します。
RFC 822 は受信日のフィールドを定義しないことに注意してください。そのため、この日付を提供可能な実装のみが有効値を返す必要があります。
この実装は null を返します。
Message 内の getReceivedDateMessagingException -
public int getSize()
throws MessagingException
この数値は内容サイズの正確な測定値でない可能性があり、内容の転送エンコーディングを示すこともそうでないこともある点に注意してください。
この実装は、content 配列のサイズ (null でない場合)、または contentStream が null でなく、available メソッドが正の数を返す場合、その数をサイズとして返します。そうでない場合は -1 を返します。
Part 内の getSizeMessagingException -
public int getLineCount()
throws MessagingException
この数値は内容の長さの正確な測定値でない可能性があり、内容の転送エンコーディングを示すこともそうでないこともある点に注意してください。
この実装は -1 を返します。
Part 内の getLineCountMessagingException -
public java.lang.String getContentType()
throws MessagingException
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Part 内の getContentTypeMessagingException - DataHandler
public boolean isMimeType(java.lang.String mimeType)
throws MessagingException
primaryType と subType のみを比較します。コンテンツ形式のパラメータは無視されます。
たとえば、コンテンツ形式 「text/plain」 の Part を 「text/plain; charset=foobar」 と比較すると、このメソッドは true を返します。
mimeType の subType が特殊文字「*」の場合、比較時にサブタイプは無視されます。
Part 内の isMimeType
public java.lang.String getDisposition()
throws MessagingException
Content-Disposition フィールドが使用できない場合は null を返します。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Part 内の getDispositionMessagingException -
public void setDisposition(java.lang.String disposition)
throws MessagingException
disposition が null の場合は、既存のすべての「Content-Disposition」ヘッダフィールドが削除されます。Part 内の setDispositionIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.lang.String getEncoding()
throws MessagingException
null を返します。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
MimePart 内の getEncodingMessagingException -
public java.lang.String getContentID()
throws MessagingException
null を返します。
この実装は getHeader メソッドを使用し、必須のヘッダフィールドを取得します。
MimePart 内の getContentIDMessagingException -
public void setContentID(java.lang.String cid)
throws MessagingException
cid パラメータが null の場合は、既存のすべての「Content-ID」が削除されます。IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.lang.String getContentMD5()
throws MessagingException
null を返します。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
MimePart 内の getContentMD5MessagingException -
public void setContentMD5(java.lang.String md5)
throws MessagingException
MimePart 内の setContentMD5IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.lang.String getDescription()
throws MessagingException
Content-Description フィールドが RFC 2047 に従ってエンコードされている場合、デコードされ、Unicode に変換されます。デコーディングまたは変換が失敗した場合、raw データがそのまま返されます。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
Part 内の getDescriptionMessagingException -
public void setDescription(java.lang.String description)
throws MessagingException
null の場合は、既存のすべての「Content-Description」フィールドが削除されます。
description に US-ASCII 以外の文字が含まれる場合は、プラットフォームのデフォルト文字セットを使用してエンコードされます。description に US-ASCII 文字だけが含まれる場合は、エンコーディングは行われず、そのまま使用されます。
文字セットエンコーディング処理が失敗する場合、MessagingException がスローされ、UnsupportedEncodingException が MessagingException 内の入れ子にされた例外のチェーンに含まれることに注意してください。
Part 内の setDescriptiondescription - 内容の説明IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException. - 文字セット変換が失敗すると、UnsupportedEncodingException が例外チェーンに含まれる場合がある
public void setDescription(java.lang.String description,
java.lang.String charset)
throws MessagingException
null の場合は、既存のすべての「Content-Description」フィールドが削除されます。
description に US-ASCII 以外の文字が含まれる場合は、指定された文字セットを使用してエンコードされます。description に US-ASCII 文字だけが含まれる場合は、エンコーディングは行われず、そのまま使用されます。
文字セットエンコーディング処理が失敗する場合、MessagingException がスローされ、UnsupportedEncodingException が MessagingException 内の入れ子にされた例外のチェーンに含まれることに注意してください。
description - 説明charset - エンコーディングのための文字セットIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException. - 文字セット変換が失敗すると、UnsupportedEncodingException が例外チェーンに含まれる場合がある
public java.lang.String[] getContentLanguage()
throws MessagingException
null を返します。
この実装は getHeader メソッドを使用し、必要なヘッダフィールドを取得します。
MimePart 内の getContentLanguageMessagingException -
public void setContentLanguage(java.lang.String[] languages)
throws MessagingException
MimePart 内の setContentLanguagelanguages - 言語タグの配列IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.lang.String getMessageID()
throws MessagingException
ここで提供されるデフォルトの実装は getHeader メソッドを使用し、「Message-ID」フィールドの値を返します。
MessagingException - このフィールドの取得により例外が発生する場合MessageIDTerm
public java.lang.String getFileName()
throws MessagingException
このメッセージの「Content-Disposition」ヘッダフィールドにおける「filename」パラメータの値を返します。このパラメータが使用できない場合は、この BodyPart の「Content-Type」ヘッダフィールドにおける「name」パラメータの値を返します。両方とも存在しない場合は null を返します。
Part 内の getFileNameMessagingException -
public void setFileName(java.lang.String filename)
throws MessagingException
このメッセージの「Content-Disposition」ヘッダフィールドにおける「filename」パラメータを設定します。
Part 内の setFileNameIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.io.InputStream getInputStream()
throws java.io.IOException,
MessagingException
この実装は DataHandler から入力ストリームを取得します。つまり、getDataHandler().getInputStream(); を呼び出します。
Part 内の getInputStreamMessagingException - java.io.IOException - これは通常 DataHandler によりスローされる。詳細については javax.activation.DataHandler のマニュアルを参照getContentStream(),
DataHandler.getInputStream()
protected java.io.InputStream getContentStream()
throws MessagingException
この実装は、content バイト配列から構築される ByteArrayInputStream を返すだけです。
content
public java.io.InputStream getRawInputStream()
throws MessagingException
getInputStream メソッドまたは getContent メソッドは正しいデータを返すことができません。アプリケーションはこのメソッドを使用し、raw データそのもののデコードを試みることができます。
この実装は単に getContentStream メソッドを呼び出します。
getInputStream(),
getContentStream()
public DataHandler getDataHandler()
throws MessagingException
ここで提供される実装は次のように機能します。getContentStream メソッドを使用して内容のバイトストリームを生成することに注意してください。また、すべての転送デコーディングがこのメソッドの内部で自動的に実行されることにも注意してください。
getDataHandler() {
if (dh == null) {
dh = new DataHandler(new MimePartDataSource(this));
}
return dh;
}
class MimePartDataSource implements DataSource {
public getInputStream() {
return MimeUtility.decode(
getContentStream(), getEncoding());
}
....
}
Part 内の getDataHandlerMessagingException -
public java.lang.Object getContent()
throws java.io.IOException,
MessagingException
この実装は DataHandler からコンテンツを取得します。つまり、getDataHandler().getContent(); を呼び出します。
Part 内の getContentMessagingException - java.io.IOException - これは通常 DataHandler によりスローされる。詳細については javax.activation.DataHandler のマニュアルを参照Part,
DataHandler.getContent()
public void setDataHandler(DataHandler dh)
throws MessagingException
Part 内の setDataHandlerdh - コンテンツの DataHandlerIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public void setContent(java.lang.Object o,
java.lang.String type)
throws MessagingException
コンテンツは DataHandler オブジェクト内にラップされます。これが正しく機能するために、指定されたタイプの DataContentHandler クラスが JavaMail 実装に対して使用可能でなければならないことに注意してください。つまり、setContent(foobar, "application/x-foobar") を実行するために、「application/x-foobar」の DataContentHandler がインストールされている必要があります。詳細については Java Activation Framework を参照してください。
Part 内の setContento - コンテンツオブジェクトtype - オブジェクトの MIME タイプIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public void setText(java.lang.String text)
throws MessagingException
このメソッドは使用する文字セットを決めるためにすべての文字を走査しなければならない場合があるので、text が大きい場合は性能が低下する可能性があることに注意してください。
文字セットが既知の場合、文字セットパラメータを受け取る setText() を使用してください。
MimePart 内の setTextsetText(String text, String charset)
public void setText(java.lang.String text,
java.lang.String charset)
throws MessagingException
MimePart 内の setText
public void setContent(Multipart mp)
throws MessagingException
Part 内の setContentmp - Message のコンテンツである multipart オブジェクトIllegalWriteException - 実装が既存値の変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public Message reply(boolean replyToAll)
throws MessagingException
replyToAll が true の場合、新しい Message はこのメッセージのすべての受信者に宛てられます。そうでない場合、返信はこのメッセージの送信者だけに宛てられます (getReplyTo メソッドの値を使用)。
「Subject」フィールドは、元の件名に接頭辞「Re:」を付けて記述されます (すでに先頭が「Re:」でない場合)。このメッセージに「Message-Id」ヘッダがある場合は、新しいメッセージの中に「In-Reply-To」ヘッダが設定されます。このメッセージの ANSWERED フラグに true が設定されます。
Message 内の replyreplyToAll - 返信はこのメッセージのすべての受信者に送信されなければならないMessagingException -
public void writeTo(java.io.OutputStream os)
throws java.io.IOException,
MessagingException
メッセージの構築方法により、さまざまな行末処理を使用する場合があることに注意が必要です。一般に、出力は適切な FilterOutputStream を使用して送信されなければなりません。これにより、行の終端は、MIME 準拠や Internet プロトコルで使用可能な CRLF、またはローカルのテキストファイルに格納可能なローカルプラットフォームの行終端のどちらか希望する形式に変換されます。
この実装は、null 無視リストを使用して writeTo(OutputStream, String[]) メソッドを呼び出します。
Part 内の writeTojava.io.IOException - ストリームへの書き込み中にエラーが発生する場合、または javax.activation レイヤによりエラーが生成される場合MessagingException - DataHandler.writeTo(java.io.OutputStream)
public void writeTo(java.io.OutputStream os,
java.lang.String[] ignoreList)
throws java.io.IOException,
MessagingException
saved フラグが設定されない場合は、saveChanges メソッドが呼び出されます。modified フラグが設定されず、content 配列が null でない場合は、適切なメッセージヘッダの書き込み後、content 配列が直接書き込まれます。MessagingException - java.io.IOException - ストリームへの書き込み中にエラーが発生する場合、または javax.activation レイヤによりエラーが生成される場合DataHandler.writeTo(java.io.OutputStream)
public java.lang.String[] getHeader(java.lang.String name)
throws MessagingException
この実装は headers InternetHeaders オブジェクトからヘッダを取得します。
Part 内の getHeadername - ヘッダの名前MessagingException - MimeUtility
public java.lang.String getHeader(java.lang.String name,
java.lang.String delimiter)
throws MessagingException
null の場合は、最初のヘッダだけが返されます。MimePart 内の getHeaderheader_name - このヘッダの名前MessagingException -
public void setHeader(java.lang.String name,
java.lang.String value)
throws MessagingException
Part 内の setHeadername - ヘッダ名value - ヘッダ値IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException - MimeUtility
public void addHeader(java.lang.String name,
java.lang.String value)
throws MessagingException
Part 内の addHeadername - ヘッダ名value - ヘッダ値IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException - MimeUtility
public void removeHeader(java.lang.String name)
throws MessagingException
Part 内の removeHeaderIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.util.Enumeration getAllHeaders()
throws MessagingException
ヘッダが US-ASCII 以外の文字を含む場合、RFC 2047 にもとづいてエンコードされているので、デコードが必要となることに注意してください。
この実装は headers InternetHeaders オブジェクトからヘッダを取得します。
Part 内の getAllHeadersMessagingException - MimeUtility
public java.util.Enumeration getMatchingHeaders(java.lang.String[] names)
throws MessagingException
headers InternetHeaders オブジェクトからヘッダを取得します。Part 内の getMatchingHeadersMessagingException -
public java.util.Enumeration getNonMatchingHeaders(java.lang.String[] names)
throws MessagingException
headers InternetHeaders オブジェクトからヘッダを取得します。Part 内の getNonMatchingHeadersMessagingException -
public void addHeaderLine(java.lang.String line)
throws MessagingException
MimePart 内の addHeaderLineIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public java.util.Enumeration getAllHeaderLines()
throws MessagingException
MimePart 内の getAllHeaderLinesMessagingException -
public java.util.Enumeration getMatchingHeaderLines(java.lang.String[] names)
throws MessagingException
MimePart 内の getMatchingHeaderLinesMessagingException -
public java.util.Enumeration getNonMatchingHeaderLines(java.lang.String[] names)
throws MessagingException
MimePart 内の getNonMatchingHeaderLinesMessagingException -
public Flags getFlags()
throws MessagingException
Flags オブジェクトを返します。
内部 Flags オブジェクトの複製が返されるので、返された Flags オブジェクトを変更してもこのメッセージのフラグに影響しないことに注意してください。
Message 内の getFlagsMessagingException - Flags
public boolean isSet(Flags.Flag flag)
throws MessagingException
flag 引数に指定されたフラグがこのメッセージ内に設定されているかどうかをチェックします。
この実装は、このメッセージの内部 flags オブジェクトをチェックします。
Message 内の isSetflag - フラグMessagingException - Flags.Flag,
Flags.Flag.ANSWERED,
Flags.Flag.DELETED,
Flags.Flag.DRAFT,
Flags.Flag.FLAGGED,
Flags.Flag.RECENT,
Flags.Flag.SEEN
public void setFlags(Flags flag,
boolean set)
throws MessagingException
この実装は flags フィールドを変更します。
Message 内の setFlagsIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
public void saveChanges()
throws MessagingException
メッセージのヘッダまたは内容の任意の部分が変更された場合、saveChanges を呼び出して、それらの変更を永続的にしなければなりません。そうしないと、そうした変更は、フォルダの実装により保存されたりされなかったりします。
READ_ONLY で開かれているフォルダから取得されたメッセージを変更してはいけません。また、そうしたメッセージ上で saveChanges を呼び出してはいけません。
このメソッドは modified フラグを true にし、save フラグを true にして、updateHeaders メソッドを呼び出します。
Message 内の saveChangesIllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
protected void updateHeaders()
throws MessagingException
saveChanges メソッドにより呼び出され、実際に MIME ヘッダを更新します。この実装は、Content-Transfer-Encoding ヘッダ (必要な場合ですでに設定されていない場合)、Mime-Version ヘッダ、および Message-ID ヘッダを設定します。また、このメッセージの内容が MimeMultipart の場合、updateHeaders メソッドが呼び出されます。IllegalWriteException - 実装が変更をサポートしない場合java.lang.IllegalStateException - このメッセージが READ_ONLY フォルダから取得された場合MessagingException -
protected InternetHeaders createInternetHeaders(java.io.InputStream is)
throws MessagingException
is - ヘッダ読み込み元の InputStreamMessagingException -
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||