|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
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
- ロケールのインデックス
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |