package org.exist.client.xacml; public interface XACMLTreeNode { /** * Returns true if this element has been modified. If * deep is true, then this takes into account the status * of any descendants. * * @param deep if descendants should be included * @return if this element has been modified */ boolean isModified(boolean deep); /** * Sets the modification status of this node only. * * @param flag Whether this node's state is different * from its state immediately after the last commit. * */ void setModified(boolean flag); /** * Reverts the state of this element to the last commit. * If deep is true, then this includes any descendants. * * @param deep */ void revert(boolean deep); /** * Commits the state of this element. This state * will be the state reverted to when revert is called. * If deep is true, then this includes any descendants. * * @param deep */ void commit(boolean deep); /** * Returns the parent of this node, or null if this is * the root node. * * @return This node's parent */ NodeContainer getParent(); /** * Serializes this node to a <code>String</code> * * @param indent Whether or not the XML should be indented * @return The string representation of this node */ String serialize(boolean indent); }