指定されたユーザコード と 基準日 と ロケール より、
MailAddressContainer
を取得します。
メールアドレスは、以下のロケールの順番で検索します。
- 指定されたユーザコードのアカウントロケール
- テナントロケール
- システムロケール
(※ 引数に指定したロケールは、メールアドレスの解決には利用されません。名前の解決に
のみ 利用されます。)
指定されたユーザコードと基準日に紐づくユーザが存在しなかった場合は、null を返却します。
IM-共通マスタのプロファイル情報のメールアドレス1、メールアドレス2 の いずれかが見つかった場合、または、両方見つかった場合、 そのメールアドレスを格納した
MailAddressContainer
を返却します。
メールアドレスがいずれも見つからなかった場合は null を返却します。
返却値
MailAddressContainer
の
#getMailAddress1()
は、メールアドレス1
を返却します。(メールアドレス1が見つからなかった場合は null)
MailAddressContainer.getMailAddress2()
は、メールアドレス2 を返却します。(メールアドレス2が見つからなかった場合は null)
返却値の
MailAddressContainer.getMailAddress1()
、および、
MailAddressContainer.getMailAddress2()
の
#getPersonal()
の値は、 は、以下のロケールの順番で検索し、最初に見つかった名前を返却します。
- 指定されたロケールに設定されている ユーザ名
- テナントロケールに設定されている ユーザ名
- システムロケールに設定されている ユーザ名
このように、「メールアドレスの解決」と「名前の解決」に利用されるロケールは異なる場合があります。
なぜならば、「メールアドレス」はメールアドレスの所有者が主に利用しているメールアドレスのロケールが望ましいのに対して、
「名前」はメールを受け取った人が識別しやすいロケールが望ましいと考えているからです。
このクラスでは、前者のロケールを「アカウントロケール」、後者のロケールを「指定されたロケール」と位置づけています。
例1
|
メールアドレス1 |
メールアドレス2 |
名前 |
1. 指定されたロケール:zh_CN |
(未設定) |
mail_2_zh_CN@test.com |
Name(zh_CN) |
2. アカウントロケール: en |
(未設定) |
mail_2_en@test.com |
Name(en) |
3. テナント・ロケール: ja |
mail_1_ja@test.com |
mail_2_ja@test.com |
Name(ja) |
4. システム・ロケール: en |
(未設定) |
mail_2_en@test.com |
Name(en) |
ロケールに「zh_CN」を指定すると、本メソッドの返却値は以下のようになります。
MailAddressContainer = {
mailAddress1 : null,
mailAddress2 :{
address : "mail_2_en@test.com",
personal: "Name(zh_CN)"
}
}
※「メールアドレス1」は null、「名前」は指定されたロケール「zh_CN」の名前となる。
例2
|
メールアドレス1 |
メールアドレス2 |
名前 |
1. 指定されたロケール:zh_CN |
(未設定) |
(未設定) |
(未設定) |
2. アカウントロケール: en |
(未設定) |
(未設定) |
Name(en) |
3. テナント・ロケール: ja |
mail_1_ja@test.com |
mail_2_ja@test.com |
Name(ja) |
4. システム・ロケール: en |
(未設定) |
(未設定) |
Name(en) |
ロケールに「zh_CN」を指定すると、本メソッドの返却値は以下のようになります。
MailAddressContainer = {
mailAddress1 :{
address : "mail_1_ja@test.com",
personal: "Name(ja)"
},
mailAddress2 :{
address : "mail_2_ja@test.com",
personal: "Name(ja)"
}
}
※「名前」は、指定されたロケールの名前がないので、優先順位が2番目であるテナントロケール「ja」の名前で統一される。