Process manager without undo/redo.

JCommands: A Flexible Undo Framework for Java

Andreas Bäcker
Listing 1. Process manager without undo/redo.

class ProcessManager extends java.util.Observable {
	// The notification message identifiers
	public static final int ADDED = 0;
	public static final int REMOVED = 1;

	// The collection of process descriptors
	private Vector processes;

	// Adds a descriptor and notifies observers
	public void add(ProcessDesc p) {
		setChanged(); // raises the changed flag
		notifyObservers(new CmdArg1(ADDED, p));

	// Removes a descriptor and notifies
	// the process manager's observers
	public void remove(ProcessDesc p) {
		if( processes.removeObject(p) ) {
			notifyObservers(new CmdArg1(REMOVED, p));

	// Removes a number of descriptors
	public void removeMany(Collection c) {
		Iterator it = c.iterator();
		while( it.hasNext() )
Upcoming Events