package com.treelight.krnl;

/**
 * Maintains undo information capable of restoring a previous version.
 *
 * @version 0.1
 * @author Eric Armstrong
 * @see ../NodesAndLists.html
 */
public class UndoVersionWrapper implements NodeTypes {
  static final String type = UNDO_VERSION;
  AbstractNode originalNode;
  /* ___TODO: class name___ */ Undo         undoInfo; 

  /**
   * Returns the node or list contained by this wrapper.
   * (a list is an extension of AbstractNode
   */
  public AbstractNode getVersion() {
    AbstractNode node = originalNode;

    // ___TODO: Apply undo info to original node___

    return node;
  } 

  /**
   * Create a new wrapper
   */
  public UndoVersionWrapper(AbstractNode originalNode, Undo undoInfo) { 
    this.orignalNode = originalNode;
    this.undoInfo = undoInfo;
  } 
 
}//UndoVersionWrapper
