".
- 関連項目:
- 直列化された形式
address
protected String address
personal
protected String personal
- 個人名です。
encodedPersonal
protected String encodedPersonal
- 個人名の RFC 2047 エンコードバージョンです。
このフィールドと personal
フィールドは互いに追跡します。
従って、サブクラスがこれらのフィールドの 1 つを直接設定する場合、
適切な再計算が行なわれる様に他方を null
に設定しなければなりません。
InternetAddress
public InternetAddress()
- デフォルトコンストラクタです。
InternetAddress
public InternetAddress(String address)
throws AddressException
- コンストラクタです。
指定された文字列を構文解析し
、InternetAddress を構築します。
- パラメータ:
address
- RFC822 形式のアドレス
- 例外:
AddressException
- 構文解析に失敗した場合
InternetAddress
public InternetAddress(String address,
boolean strict)
throws AddressException
- Parse the given string and create an InternetAddress.
If
strict
is false, the detailed syntax of the
address isn't checked.
- パラメータ:
address
- RFC822 形式のアドレスstrict
- enforce RFC822 syntax
- 例外:
AddressException
- 構文解析に失敗した場合- 導入されたバージョン:
- JavaMail 1.3
InternetAddress
public InternetAddress(String address,
String personal)
throws UnsupportedEncodingException
- アドレスと個人名を指定された InternetAddress を構築します。
このアドレスは構文的に有効な RFC822 アドレスと見なされます。
- パラメータ:
address
- RFC822 形式のアドレスpersonal
- 個人名
- 例外:
UnsupportedEncodingException
InternetAddress
public InternetAddress(String address,
String personal,
String charset)
throws UnsupportedEncodingException
- アドレスと個人名を指定された InternetAddress を構築します。
このアドレスは構文的に有効な RFC822 アドレスと見なされます。
- パラメータ:
address
- RFC822 形式のアドレスpersonal
- 個人名charset
- MIME 文字セットの名前
- 例外:
UnsupportedEncodingException
clone
public final Object clone()
- この InternetAddress オブジェクトのコピーを返します。
- オーバーライド:
- クラス
Object
内の clone
- 導入されたバージョン:
- JavaMail 1.2
getType
public final String getType()
- このアドレスの型を返します。InternetAddress の型は "rfc822" です。
- 定義:
- クラス
Address
内の getType
- 戻り値:
- アドレスの型
- 関連項目:
InternetAddress
setAddress
public final void setAddress(String address)
- 電子メールアドレスを設定します。
- パラメータ:
address
- 電子メールアドレス
setPersonal
public final void setPersonal(String name,
String charset)
throws UnsupportedEncodingException
- 個人名を設定します。名前に US-ASCII 以外の文字が含まれる場合、
名前は RFC 2047 に従い、指定された文字セットを使用してエンコードされます。
名前に US-ASCII 文字だけが含まれる場合、エンコーディングは行われず、名前はそのまま使用されます。
- パラメータ:
name
- 個人名charset
- RFC 2047 に従って名前をエンコードする為に使用される MIME 文字セット
- 例外:
UnsupportedEncodingException
- 文字セットのエンコーディングが失敗した場合- 関連項目:
setPersonal(String)
setPersonal
public final void setPersonal(String name)
throws UnsupportedEncodingException
- 個人名を設定します。名前に US-ASCII 以外の文字が含まれる場合、
名前はプラットフォームのデフォルト文字セットを使用してエンコードされます。
名前に US-ASCII 文字だけが含まれる場合、エンコーディングは行われず、名前はそのまま使用されます。
- パラメータ:
name
- 個人名
- 例外:
UnsupportedEncodingException
- 文字セットのエンコーディングが失敗した場合- 関連項目:
setPersonal(String name, String charset)
getAddress
public final String getAddress()
- 電子メールアドレスを取得します。
- 戻り値:
- 電子メールアドレス
getPersonal
public final String getPersonal()
- 個人名を取得します。名前が RFC 2047 に従ってエンコーディングされている場合、
Unicode にデコード及び変換されます。デコーディング又は変換が失敗した場合、
生データがそのまま返されます。
- 戻り値:
- 個人名
toString
public final String toString()
- このアドレスを RFC 822 / RFC 2047 エンコードアドレスに変換します。
変換後の文字列には US-ASCII 文字だけが含まれる為、メールで安全に使用できます。
- 定義:
- クラス
Address
内の toString
- 戻り値:
- 恐らくエンコードされたアドレス文字列
toUnicodeString
public final String toUnicodeString()
- 正しい形式 (RFC 822 構文) の Unicode 文字のアドレスを返します。
- 戻り値:
- Unicode アドレス文字列
- 導入されたバージョン:
- JavaMail 1.2
equals
public final boolean equals(Object a)
- 等価演算子です。
- 定義:
- クラス
Address
内の equals
- パラメータ:
a
- Address オブジェクト
hashCode
public final int hashCode()
- アドレスのハッシュコードを計算します。
- オーバーライド:
- クラス
Object
内の hashCode
toString
public static final String toString(Address[] addresses)
- 指定された InternetAddress オブジェクトの配列をアドレス文字列のコンマ区切りシーケンスに変換します。
変換後の文字列には US-ASCII 文字だけが含まれる為、メールで安全に使用できます。
- パラメータ:
addresses
- InternetAddress オブジェクトの配列
- 戻り値:
- コンマ区切りのアドレス文字列
- 例外:
ClassCastException
- 指定された配列内の何れかのアドレスオブジェクトが InternetAddress オブジェクトでない場合。
これは RuntimeException である事に注意して下さい。
toString
public static final String toString(Address[] addresses,
int used)
- 指定された InternetAddress オブジェクトの配列をアドレス文字列のコンマ区切りシーケンスに変換します。
変換後の文字列には US-ASCII 文字だけが含まれる為、メールで安全に使用できます。
'used' パラメータは、変換後のアドレスシーケンス文字列が挿入される
フィールドを既に占有する文字位置の数を指定します。
これは変換後のアドレスシーケンス文字列中の改行位置を識別する為に使用されます。
- パラメータ:
addresses
- InternetAddress オブジェクトの配列used
- アドレス文字列が挿入されるフィールドで既に使用されている文字位置の数
- 戻り値:
- コンマ区切りのアドレス文字列
- 例外:
ClassCastException
- 指定された配列内の何れかのアドレスオブジェクトが InternetAddress オブジェクトでない場合。
これは RuntimeException である事に注意して下さい。
getLocalAddress
public static final InternetAddress getLocalAddress(Session session)
- 現在のユーザを表す InternetAddress オブジェクトを返します。
電子メールアドレス全体は "mail.from" プロパティで指定される場合があります。
設定されていない場合は "mail.user" 及び "mail.host" プロパティが試されます。
それらが設定されていない場合、"user.name" プロパティと
InetAddress.getLocalHost
メソッドが試されます。
この情報のアクセス時にセキュリティ例外が発生する場合は無視されます。
電子メールアドレスを識別する事ができない場合は null が返されます。
- パラメータ:
session
- プロパティの検索に使用される Session オブジェクト
- 戻り値:
- 現在のユーザの電子メールアドレス
parse
public static final InternetAddress[] parse(String addresslist)
throws AddressException
- 指定されたコンマ区切りのアドレスシーケンスを InternetAddress オブジェクトに構文解析します。
アドレスは RFC822 構文に準拠しなければなりません。
- パラメータ:
addresslist
- コンマ区切りのアドレス文字列
- 戻り値:
- InternetAddress オブジェクトの配列
- 例外:
AddressException
- 構文解析に失敗した場合
parse
public static final InternetAddress[] parse(String addresslist,
boolean strict)
throws AddressException
- 指定されたアドレスのシーケンスを InternetAddress オブジェクトに構文解析します。
strict
が false の場合、スペースで区切られた単純な電子メールアドレスでも許されます。
strict
が true の場合、RFC822 構文規則の多く (全てではない) が適用されます。
特に、strict
が true であっても、
単純な名前で構成されたアドレス ("@domain" 部分なし) は許されます。
こうした "不正" アドレスは実際のメッセージでは珍しくありません。
厳格でない構文解析は一般に手動で入力したメールアドレスのリストを構文解析する時に使用されます。
厳格な構文解析は一般にメールメッセージ中のアドレスヘッダを構文解析する時に使用されます。
- パラメータ:
addresslist
- コンマ区切りのアドレス文字列strict
- RFC822 構文を適用するかどうか
- 戻り値:
- InternetAddress オブジェクトの配列
- 例外:
AddressException
- 構文解析に失敗した場合
parseHeader
public static final InternetAddress[] parseHeader(String addresslist,
boolean strict)
throws AddressException
- Parse the given sequence of addresses into InternetAddress
objects. If
strict
is false, the full syntax rules for
individual addresses are not enforced. If strict
is
true, many (but not all) of the RFC822 syntax rules are enforced.
To better support the range of "invalid" addresses seen in real
messages, this method enforces fewer syntax rules than the
parse
method when the strict flag is false
and enforces more rules when the strict flag is true. If the
strict flag is false and the parse is successful in separating out an
email address or addresses, the syntax of the addresses themselves
is not checked.
- パラメータ:
addresslist
- コンマ区切りのアドレス文字列strict
- RFC822 構文を適用するかどうか
- 戻り値:
- InternetAddress オブジェクトの配列
- 例外:
AddressException
- 構文解析に失敗した場合- 導入されたバージョン:
- JavaMail 1.3
validate
public void validate()
throws AddressException
- Validate that this address conforms to the syntax rules of
RFC 822. The current implementation checks many, but not
all, syntax rules. Note that even though the syntax of
the address may be correct, there's no guarantee that a
mailbox of that name exists.
- 例外:
AddressException
- if the address isn't valid.- 導入されたバージョン:
- JavaMail 1.3
isGroup
public boolean isGroup()
- Indicates whether this address is an RFC 822 group address.
Note that a group address is different than the mailing
list addresses supported by most mail servers. Group addresses
are rarely used; see RFC 822 for details.
- 戻り値:
- true if this address represents a group
- 導入されたバージョン:
- JavaMail 1.3
getGroup
public InternetAddress[] getGroup(boolean strict)
throws AddressException
- Return the members of a group address. A group may have zero,
one, or more members. If this address is not a group, null
is returned. The
strict
parameter controls whether
the group list is parsed using strict RFC 822 rules or not.
The parsing is done using the parseHeader
method.
- 戻り値:
- array of InternetAddress objects, or null
- 例外:
AddressException
- if the group list can't be parsed- 導入されたバージョン:
- JavaMail 1.3