view src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/store/index/DeleteAttributeIndex.java @ 111:5df5505e1c1e

change Index type
author one
date Mon, 15 Sep 2014 14:07:06 +0900
parents cf17350a2415
children
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index;

import fj.data.List;
import fj.data.TreeMap;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.DeleteAttribute;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair;

public class DeleteAttributeIndex extends DeleteAttribute {

	TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> index;
	private String key;
	
	public DeleteAttributeIndex(String _key ,TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> index) {
		super(_key);
		this.key = key;
		this.index = index;
	}
	
	@Override
	public Either<Error, Logging> edit(TreeNode _e) {
		Logging logNode = wrap(_e);
		return _edit(logNode);
	}
	
	@Override
	public Logging wrap(TreeNode node) {
		return new LoggingIndexNode(node, index);
	}

	@Override
	public Logging wrap(TreeNode node, OperationLog op) {
		return new LoggingIndexNode(node, op, index);
	}

}