view Main/jungle-main/transaction/DefaultTreeContext.cs @ 35:f2ea780b3e80

fix
author Kazuma Takeda
date Wed, 22 Feb 2017 16:30:19 +0900
parents 1f99e150f336
children
line wrap: on
line source

using System.Collections.Generic;

// override need? 

namespace JungleDB {
	public class DefaultTreeContext : TreeContext {
		private TreeNode root;
		private TreeContext previous;
		private ChangeList changeList;
		private string uuid;
		private string treeName;
		private long revision;
		private InterfaceTraverser traverser;

		public DefaultTreeContext(TreeNode _node, TreeContext _prev, ChangeList _log, string _uuid, string _treeName, long _revision, InterfaceTraverser traverser) {
			this.root = _node;
			this.previous = _prev;
			this.changeList = _log;
			this.uuid = _uuid;
			this.treeName = _treeName;
			this.revision = _revision;
			this.traverser = traverser;
		}

		public TreeNode getRoot() {
			return root;
		}

		public TreeContext prev() {
			return previous;
		}

		public ChangeList getChangeList() {
			return changeList;
		}
			
		public string getUuid() {
			return uuid;
		}

		public string getTreeName() {
			return treeName;
		}

		public long getRevision() {
			return revision;
		}

		public IEnumerable<TreeOperation> getOperations() {
			return changeList;
		}

		public TreeMap<string, TreeMap<string, List<TreeNode>>> getIndex() {
			return traverser.getIndex ();
		}

		// don't write parent Index.

		public InterfaceTraverser getTraverser() {
			return traverser;
		}

	}
}