package thaw.plugins.index; import java.util.Observer; import javax.swing.tree.MutableTreeNode; import org.w3c.dom.Document; import org.w3c.dom.Element; import thaw.fcp.FCPQueueManager; public interface IndexTreeNode { public MutableTreeNode getTreeNode(); public void setParent(int id); /** * Allow to know if it's a dumb node or a real one in the tree */ public boolean isInTree(); /** * get Id of this node in the database. */ public int getId(); /** * Change the name of the node. */ public void rename(String name); /** * Remove the node from the database. (recursive) */ public void delete(); /** * Get key(s) */ public String getPublicKey(); public String getPrivateKey(); public boolean isModifiable(); public boolean publishPrivateKey(); public boolean hasChanged(); public boolean hasNewComment(); public boolean setHasChangedFlag(boolean flag); public boolean setNewCommentFlag(boolean flag); /** * for internal use only ! */ public boolean setHasChangedFlagInMem(boolean flag); public boolean setNewCommentFlagInMem(boolean flag); /** * Will export private keys too ! */ public Element do_export(Document xmlDoc, boolean withContent); /** * @return the number of transfer started */ public int insertOnFreenet(Observer o, IndexBrowserPanel indexBrowser, FCPQueueManager queueManager); public int downloadFromFreenet(Observer o, IndexTree indexTree, FCPQueueManager queueManager); public int downloadFromFreenet(Observer o, IndexTree indexTree, FCPQueueManager queueManager, int rev); /** * Will force hasChanged & newComment flag reloading */ public void forceFlagsReload(); }