/**
* デシジョンテーブルのキーを作成します。
* 作成日 : (2014/02/19 11:57:13)
* @return java.util.ArrayList
* @param key java.lang.String
*/
private ArrayList createDecisionTableKey(String key) {
ArrayList list = new ArrayList(1);
list.add(key);
return list;
}
/**
* デシジョンテーブルのキーを作成します。
* 作成日 : (2013/05/24 14:17:39)
* @return java.util.ArrayList
* @param keys java.lang.String[]
*/
private ArrayList createDecisionTableKeys(String[] keys) {
ArrayList list = new ArrayList(keys.length);
for (int index = 0; index < keys.length; index++) {
list.add(keys[index]);
}
return list;
}/**
* ハッシュテーブルの参照キーに○○を変換します。
* 作成日 : (2013/05/17 13:59:11)
* @return ArrayList
* @param idoJiyu java.lang.String
*/
private ArrayList keyFrom○○(final String value) {
String key = value.trim();
if (EqualsUtil.areEqual("", key)) key = "未選択";
ArrayList list = new ArrayList(1);
list.add(key);
return list;
}private void createEnableRuleTable() {
this.enableRuleTable = new HashMap();
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"参照", "無", "無"}), new Boolean[] {Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE});
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"参照", "有", "無"}), new Boolean[] {Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE});
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"参照", "有", "有"}), new Boolean[] {Boolean.TRUE , Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE});
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"発行", "無", "無"}), new Boolean[] {Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE});
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"発行", "有", "無"}), new Boolean[] {Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE});
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"発行", "有", "有"}), new Boolean[] {Boolean.TRUE , Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.FALSE, Boolean.TRUE });
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"更新", "無", "無"}), new Boolean[] {Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE});
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"更新", "有", "無"}), new Boolean[] {Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.FALSE, Boolean.TRUE , Boolean.FALSE, Boolean.TRUE , Boolean.TRUE , Boolean.TRUE });
this.enableRuleTable.put(this.createDecisionTableKeys(new String[] {"更新", "有", "有"}), new Boolean[] {Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE , Boolean.TRUE });
}final Boolean[] enableRules = (Boolean[]) this.enableRuleTable.get(keyFrom○○(key));
縦横を入れ替えたバージョン
| 条件 | アクション | |||||||||||||||
| フッター | ||||||||||||||||
| ケース1 | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | ||||
| ケース2 | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | ||||
| ケース3 | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | FALSE | ||||
| ケース4 | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | ||||
| ケース5 | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | ||||
| ケース6 | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | ||||