public void setNode(XACMLTreeNode treeNode) { if (!(treeNode instanceof RuleNode)) throw new IllegalArgumentException("RuleEditor can only edit RuleNodes"); RuleNode node = (RuleNode) treeNode; super.setNode(node); int effect = node.getEffect(); if (effect == Result.DECISION_DENY) setSelectedItem(DENY); else if (effect == Result.DECISION_PERMIT) setSelectedItem(PERMIT); else throw new IllegalArgumentException("Unknown effect for rule '" + getId() + "'"); }
public void pushChanges() { super.pushChanges(); int effect = getEffect(); ((RuleNode) node).setEffect(effect); }