view src/main/java/alice/jungle/persistent/PersistentChangeSet.java @ 191:5d0734fd859d

fix error
author tatsuki
date Thu, 15 Jan 2015 09:23:23 +0900
parents 4493dd7692ce
children
line wrap: on
line source

package alice.jungle.persistent;

import fj.data.TreeMap;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index;
import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex;

public class PersistentChangeSet implements ChangeSet {
  private final TreeNode root;
  private final ChangeSet previous;
  private final ChangeList changeList;
  private final String uuid;
  private final long revision;
  private final String treeName;
  private final TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList;
  private final TreeMap<TreeNode, TreeNode> parentIndex;

  public PersistentChangeSet(TreeNode _node, ChangeSet _prev, ChangeList _log, String _uuid, String _treeName,
      long _revision, TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList,
      TreeMap<TreeNode, TreeNode> parentIndex) {
    root = _node;
    previous = _prev;
    changeList = _log;
    uuid = _uuid;
    revision = _revision;
    treeName = _treeName;
    this.indexList = indexList;
    this.parentIndex = parentIndex;
  }

  @Override
  public TreeNode getRoot() {
    return root;
  }

  @Override
  public ChangeSet prev() {
    return previous;
  }

  @Override
  public ChangeList getChangeList() {
    return changeList;
  }

  @Override
  public String uuid() {
    return uuid;
  }

  @Override
  public long revision() {
    return revision;
  }

  @Override
  public Iterable<TreeOperation> getOperations() {
    return changeList;
  }

  public String getTreeName() {
    return treeName;
  }

  @Override
  public Index getIndex() {
    return new Index(indexList);
  }

  @Override
  public ParentIndex getParentIndex() {
    return new ParentIndex(parentIndex);
  }

}