public void removeRule(Rule rule) { Mode mode = getMode(rule.getMode()); Rule[] childRules = rule.getUnionRules(); if (childRules != null) { for (Rule childRule : childRules) { mode.removeRule(childRule); } } else { mode.removeRule(rule); } }
public void addRule(Rule rule) { rule.setAppearenceCount(++appearenceCount); Mode mode = getMode(rule.getMode()); Rule[] childRules = rule.getUnionRules(); if (childRules != null) { for (Rule childRule : childRules) { mode.addRule(childRule); } } else { mode.addRule(rule); } }