package jef.database.jsqlparser;
import jef.common.Entry;
import jef.common.SimpleMap;
import jef.database.jsqlparser.visitor.VisitorAdapter;
public abstract class UndoableVisitor<K,V> extends VisitorAdapter{
private SimpleMap<K,V> rollback=new SimpleMap<K,V>();
protected void savePoint(K k,V v){
rollback.put(k, v);
}
protected abstract void undo(K key, V value) ;
public void undo(){
for(Entry<K,V> e: rollback.getEntries()){
undo(e.getKey(),e.getValue());
}
}
}