01: /*
02: * Author: Chris Seguin
03: *
04: * This software has been developed under the copyleft
05: * rules of the GNU General Public License. Please
06: * consult the GNU General Public License for more
07: * details about use and distribution of this software.
08: */
09: package org.acm.seguin.refactor.undo;
10:
11: import java.io.File;
12: import java.io.Serializable;
13: import java.util.Iterator;
14: import java.util.LinkedList;
15: import org.acm.seguin.util.FileSettings;
16: import org.acm.seguin.util.MissingSettingsException;
17:
18: /**
19: * Stores the undo operation. The undo operation consists of a description of
20: * the refactoring that was performed to create this UndoAction and a list of
21: * files that have changed. <P>
22: *
23: * The files that have changed are indexed files, in that they have an index
24: * appended to the name of the file.
25: *
26: *@author <a href="mailto:JRefactory@ladyshot.demon.co.uk">Mike Atkinson</a>
27: *@version $Id: UndoAction.java,v 1.3 2003/07/29 20:51:56 mikeatkinson Exp $
28: *@since 2.7.05
29: */
30: public interface UndoAction {
31: /**
32: * Sets the Description attribute of the UndoAction object
33: *
34: *@param description The Description value
35: */
36: public void setDescription(String description);
37:
38: /**
39: * Gets the Description attribute of the UndoAction object
40: *
41: *@return The Description value
42: */
43: public String getDescription();
44:
45: /**
46: * Adds a file to this action
47: *
48: *@param oldFile the original file
49: *@param newFile the new file
50: */
51: public void add(File oldFile, File newFile);
52:
53: /**
54: * Undo the current action
55: */
56: public void undo();
57:
58: }
|