Mercurial > hg > Members > tatsuki > bench > jungle-core
view src/main/java/jungle/impl/SimpleEditor.java @ 8:abed5bd92fcb
commit
author | shoshi <shoshi@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 03 Jul 2012 18:59:28 +0900 |
parents | c3c65308a11b |
children |
line wrap: on
line source
package jungle.impl; import java.util.Iterator; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicReference; import jungle.core.Editor; import jungle.core.Link; import jungle.core.Tree; import jungle.core.TreeGroup; import jungle.core.TreeNode; import jungle.core.Node; import jungle.core.graph.Graph; import jungle.core.graph.Vertex; import jungle.util.Pair; public class SimpleEditor implements Editor { private final SimpleTreeGroup group; private final Graph graph; private AtomicReference<SimpleTree> current; public SimpleEditor(SimpleTree _tree,Graph _graph) { graph = _graph; group = (SimpleTreeGroup)_tree.getGroup(); current = new AtomicReference<SimpleTree>(_tree); } public Tree commit() { return null; } public Tree rollback() { return null; } private boolean checkTreeNode(TreeNode _target) { if(_target instanceof SimpleTreeNode){ SimpleTreeNode converted = (SimpleTreeNode)_target; return converted.getGroup().equals(group); } return false; } private SimpleTreeNode convertTreeNode(TreeNode _target) { if(_target instanceof SimpleTreeNode){ return (SimpleTreeNode)_target; } return null; } private Vertex cloneTreeNode(Iterable<TreeNode> _path) { Iterator<TreeNode> itr = _path.iterator(); String newID = group.newTreeID(); if(!itr.hasNext()){ return null; } SimpleTreeNode root = convertTreeNode(itr.next()); if(root == null){ return null; } Vertex rootVertex = root.getVertex(); for(TreeNode node : _path){ if(checkTreeNode(node)){ } } } public Link createLinkAt(Iterable<TreeNode> _path,TreeNode _target, Tree _linkTarget) { throw new IllegalArgumentException("wrong tree group."); } public void removeLinkAt(TreeNode _target, Link _removeTarget) { } public TreeNode createChildAt(TreeNode _target) { return null; } public void removeChildAt(TreeNode _target, TreeNode _removeTarget) { } public String putPropertyAt(TreeNode _target, String _key, String _value) { return null; } public String removePropertyAt(TreeNode _target, String _key) { return null; } }