Mercurial > hg > Members > shoshi > TreeCMSv2
view src/treecms/api/MonotonicTree.java @ 16:bb9760760744
commit
author | shoshi |
---|---|
date | Sat, 21 May 2011 04:46:00 +0900 |
parents | 22cd920986c5 |
children | 084de6909451 |
line wrap: on
line source
package treecms.api; /** * 木構造を非破壊的に更新する機能を提供します.TreeEditorはTreeを非破壊的に更新していき,commitすることでTreeに更新を適用します. * TreeEditor.getRootはcommitされていない状態のRootNodeを取得します. * この機能は分散リポジトリを参考に考案されました. * @author shoshi */ public interface MonotonicTree { /** * 非破壊的に更新した木構造を適用します. * 更新する際に他の方法により木構造がすでに更新されていた場合,commitは失敗します。_forceがtrueの場合,強制的に置き換えます. * @param _force 強制コミットフラグ * @return 成功した場合true,失敗した場合false */ public boolean commit(boolean _force); /** * 監視している木構造をEditorにキャッシュします. * @return キャッシュが成功した場合はtrue,失敗した場合はfalse */ public boolean pull(); /** * 監視されている木構造が更新されていないかチェックします. * @return 更新されていた場合はture,されていない場合はfalse */ public boolean check(); /** * 監視している木構造をキャッシュにマージします. */ public void merge(); /** * この木構造のルートNodeを返します。 * @return この木構造のルートNode */ public MonotonicTreeNode getRoot(); public Tree getTree(); }