Mercurial > hg > Members > tatsuki > bench > jungle-core
view src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNode.java @ 87:4c6b915302a8
Delete Logging Node Hock
author | one |
---|---|
date | Thu, 04 Sep 2014 13:12:08 +0900 |
parents | 715a9fbf02fc |
children | a1e20a440ddd |
line wrap: on
line source
package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction; import java.nio.ByteBuffer; import fj.Ord; import fj.data.List; import fj.data.TreeMap; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.DefaultOperationLog; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; public class DefaultTreeNode implements TreeNode { //private final DefaultNode wrap; private List<TreeNode> children; private TreeMap<String,ByteBuffer> attrs; private OperationLog log; private static final List<TreeNode> NIL_LIST = List.nil(); private static final TreeMap<String,ByteBuffer> NIL_MAP = TreeMap.empty(Ord.stringOrd); public DefaultTreeNode() { this(NIL_LIST,NIL_MAP,new DefaultOperationLog()); } public DefaultTreeNode(List<TreeNode> _children,TreeMap<String,ByteBuffer> _attrs) { this(_children, _attrs, new DefaultOperationLog()); } public DefaultTreeNode(TreeNode _node, OperationLog _log) { this(_node.getChildren().getChildrenAsRawList(), _node.getAttributes().getAttributesAsRawMap(), _log); } public DefaultTreeNode(List<TreeNode> _children,TreeMap<String,ByteBuffer> _attrs, OperationLog _log){ attrs = _attrs; children = _children; log = _log; } @Override public DefaultTreeNodeChildren getChildren() { return new DefaultTreeNodeChildren(children, attrs); } @Override public DefaultTreeNodeAttribute getAttributes() { return new DefaultTreeNodeAttribute(children, attrs,log); } @Override public DefaultTreeNode createNewNode(){ return new DefaultTreeNode(); } /*public DefaultNode getWrap() { return wrap; }*/ /*@Override public Node getAsNode() { return getWrap(); } */ public DefaultTreeNode clone() { return new DefaultTreeNode(children,attrs); } @Override public OperationLog getLog() { OperationLog _log = log; log = new DefaultOperationLog(); return _log; } @Override public void putLog(OperationLog _log){ log = _log; } }