Sun のコードモデルを使用して、次のコード スニペットのような列挙型クラスを作成したいと考えています。
public enum REPORT_COLUMNS {
MONTH("month", true, false),
DAY("day", false, true);
private final String column;
private final boolean filterable;
private final boolean includeInHavingClause;
private REPORT_COLUMNS(String column, boolean filterable, boolean includeInHavingClause) {
this.column = column;
this.filterable = filterable;
this.includeInHavingClause = includeInHavingClause;
}
public String getColumn() {
return column;
}
public boolean isFilterable() {
return filterable;
}
public boolean includeInHavingClause() {
return includeInHavingClause;
}
}
列挙型のコンストラクター、フィールド、およびゲッター メソッドのコードを生成できました。しかし、enum 定数を 3 つの値で初期化できません。JDefinedClass には、enum 定数の名前のみをパラメーターとして受け取るメソッド enumConstant があります。JEnumConstant クラスのドキュメントも読みましたが、enum 定数に 3 つの値を追加するものは見つかりませんでした。