|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface EnumMessageCode
メッセージコードを定義した列挙が実装するインタフェースです.
メッセージコードを記述した列挙はそれぞれの列挙定数に 診断レベル と,
ロケールごとのメッセージを持ちます. サポートするメッセージのロケールは SUPORTED_LOCALES という名前の static フィールドに Locale の配列として定義します.
public static final Locale[] SUPORTED_LOCALES = new Locale[] { Locale.ROOT, Locale.JAPANESE };
SUPPORTED_LOCALES 配列には Locale.ROOT を含めるべきです.
getMessageFormat(int) の引数には, SUPPORTED_LOCALES
配列のインデックスがロケールとして渡されます.
典型的な列挙の定義は次のようになります.
public enum TestMessageCode implements EnumMessageCode {
// 第 2 引数はルートロケールのメッセージ,第 3 引数は日本語ロケールのメッセージ
XXXX(Kind.ERROR, "Error", "エラー"),
YYYY(Kind.WARNING, "Warning", "警告"),
...
;
/** サポートするロケールの配列 */
public static final Locale[] SUPPORTED_LOCALES = new Locale[] {
Locale.ROOT, Locale.JAPANESE };
/** 診断の種類 */
private final Kind kind;
/** メッセージフォーマット */
private final String[] messageFormats;
/**
* インスタンスを構築します.
* 配列の要素は SUPPORTED_LOCALES 配列のロケールに対応するメッセージフォーマットです.
*
* @param messageFormats
* メッセージフォーマットの配列
*/
private TestMessageCode(final Kind kind, final String... messageFormats) {
this.kind = kind;
this.messageFormats = messageFormats;
}
/**
* 診断の種類を返します.
*
* @return 診断の種類
*/
public Kind getKind() {
return kind;
}
/**
* 指定されたロケールのメッセージフォーマットを返します.
*
* @param locale
* ロケール
* @return 指定されたロケールのメッセージフォーマット
*/
public String getMessageFormat(final int locale) {
return messageFormats[locale];
}
}
| フィールドの概要 | |
|---|---|
static String |
SUPPORTED_LOCALES_NAME
サポートするロケールの配列を定義した定数の名前 |
| メソッドの概要 | |
|---|---|
Diagnostic.Kind |
getKind()
診断の種類を返します. |
String |
getMessageFormat(int locale)
指定されたロケールのメッセージを返します. |
| フィールドの詳細 |
|---|
static final String SUPPORTED_LOCALES_NAME
| メソッドの詳細 |
|---|
Diagnostic.Kind getKind()
String getMessageFormat(int locale)
locale - ロケールのインデックス
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||