Index: trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/plugin/guitar/EFGModelGenerator.java
===================================================================
--- trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/plugin/guitar/EFGModelGenerator.java	(revision 581)
+++ 	(revision )
@@ -1,135 +1,0 @@
-package de.ugoe.cs.quest.plugin.guitar;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Random;
-
-import de.ugoe.cs.quest.eventcore.Event;
-import de.ugoe.cs.quest.plugin.guitar.eventcore.GUITAREventTarget;
-import de.ugoe.cs.quest.plugin.guitar.eventcore.GUITAREventType;
-import de.ugoe.cs.quest.plugin.guitar.eventcore.GUITARReplayable;
-import de.ugoe.cs.quest.ui.commands.CMDupdateModel;
-import de.ugoe.cs.quest.usageprofiles.DeterministicFiniteAutomaton;
-import de.ugoe.cs.quest.usageprofiles.FirstOrderMarkovModel;
-import edu.umd.cs.guitar.model.GUITARConstants;
-import edu.umd.cs.guitar.model.IO;
-import edu.umd.cs.guitar.model.data.EFG;
-import edu.umd.cs.guitar.model.data.EventGraphType;
-import edu.umd.cs.guitar.model.data.EventType;
-
-/**
- * <p>
- * Provides functionality to generates models defined in the package
- * de.ugoe.cs.quest.usageprofiles from EFGs.
- * </p>
- * 
- * @author Steffen Herbold
- * @version 1.0
- */
-public class EFGModelGenerator {
-
-	/**
-	 * <p>
-	 * Generates a {@link FirstOrderMarkovModel} from an EFG. In the generated
-	 * model, all following events are equally possible, i.e., the model is
-	 * equal to a {@link DeterministicFiniteAutomaton}. However, through further
-	 * training (e.g., {@link CMDupdateModel}) this can be changed.
-	 * </p>
-	 * 
-	 * @param efgFileName
-	 *            name of the EFG file
-	 * @return model generated from the EFG
-	 */
-	public FirstOrderMarkovModel efgToFirstOrderMarkovModel(String efgFileName) {
-		EFG efg = (EFG) IO.readObjFromFile(efgFileName, EFG.class);
-
-		Collection<List<Event>> subsequences = generateEdgeSequences(efg);
-		FirstOrderMarkovModel model = new FirstOrderMarkovModel(new Random());
-		model.train(subsequences);
-		return model;
-	}
-
-	/**
-	 * <p>
-	 * Generates a {@link DeterministicFiniteAutomaton} from an EFG.
-	 * </p>
-	 * 
-	 * @param efgFileName
-	 *            name of the EFG file
-	 * @return model generated from the EFG
-	 */
-	public DeterministicFiniteAutomaton efgToDeterministicFiniteAutomaton(
-			String efgFileName) {
-		EFG efg = (EFG) IO.readObjFromFile(efgFileName, EFG.class);
-
-		Collection<List<Event>> subsequences = generateEdgeSequences(efg);
-		DeterministicFiniteAutomaton model = new DeterministicFiniteAutomaton(
-				new Random());
-		model.train(subsequences);
-		return model;
-	}
-
-	/**
-	 * <p>
-	 * Extracts the graph structure from the EFG. The result is a set of
-	 * sequences, where each sequence has length two and represents an edge in
-	 * the EFG.
-	 * </p>
-	 * 
-	 * @param efg
-	 *            EFG for which the edge sequence set is generated
-	 * @return edge sequence set
-	 */
-	private Collection<List<Event>> generateEdgeSequences(EFG efg) {
-		List<Event> events = createEvents(efg);
-		/*
-		 * getEventGraph returns an adjacency matrix, i.e., a square matrix of
-		 * efgEvents.size(), where a 1 in row i, column j means an edge
-		 * efgEvents.get(i)->efgEvents.get(j) exists.
-		 */
-		EventGraphType efgGraph = efg.getEventGraph();
-		Collection<List<Event>> subsequences = new LinkedList<List<Event>>();
-
-		int efgSize = events.size();
-		for (int row = 0; row < efgSize; row++) {
-			for (int col = 0; col < efgSize; col++) {
-				int relation = efgGraph.getRow().get(row).getE().get(col);
-				// otherEvent is followed by currentEvent
-				if (relation != GUITARConstants.NO_EDGE) {
-					List<Event> edge = new LinkedList<Event>();
-					edge.add(events.get(row));
-					edge.add(events.get(col));
-					subsequences.add(edge);
-				}
-			}
-		}
-		return subsequences;
-	}
-
-	/**
-	 * <p>
-	 * Extracts creates {@link EFGEvent} for every event contained in the EFG.
-	 * </p>
-	 * 
-	 * @param efg
-	 *            EFG for which the events are created
-	 * @return list of events
-	 */
-	private List<Event> createEvents(EFG efg) {
-		List<EventType> efgEvents = efg.getEvents().getEvent();
-		List<Event> myEvents = new ArrayList<Event>(efgEvents.size());
-		for (EventType event : efgEvents) {
-			/*
-			 * the widgetId and eventId are only hash values, the
-			 * "interpretation" is found in the GUI file.
-			 */
-		    GUITAREventType type = new GUITAREventType(event.getEventId());
-		    GUITAREventTarget target = new GUITAREventTarget(event.getWidgetId());
-		    Event myEvent = new Event(type, target);
-		    myEvent.addReplayable(new GUITARReplayable(event.getEventId()));
-		}
-		return myEvents;
-	}
-}
Index: trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/plugin/guitar/EFGReplayDecorator.java
===================================================================
--- trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/plugin/guitar/EFGReplayDecorator.java	(revision 581)
+++ 	(revision )
@@ -1,95 +1,0 @@
-package de.ugoe.cs.quest.plugin.guitar;
-
-import de.ugoe.cs.quest.IReplayDecorator;
-import de.ugoe.cs.util.StringTools;
-
-/**
- * <p>
- * {@link IReplayDecorator} for replays generated for the GUITAR suite.
- * </p>
- * 
- * @author Steffen Herbold
- * @version 1.0
- */
-public class EFGReplayDecorator implements IReplayDecorator {
-
-	/**
-	 * <p>
-	 * Id for object serialization.
-	 * </p>
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <p>
-	 * The instance of the {@link EFGReplayDecorator} (implemented as
-	 * singleton).
-	 * </p>
-	 */
-	transient private static EFGReplayDecorator theInstance;
-
-	/**
-	 * <p>
-	 * Constructor. Private to guarantee that only one instance of the replay
-	 * generator exists.
-	 * </p>
-	 */
-	private EFGReplayDecorator() {
-	};
-
-	/**
-	 * <p>
-	 * Returns the instance of the MFCReplayDecorator.
-	 * </p>
-	 * 
-	 * @return instance of the MFCReplayDecorator.
-	 */
-	public static EFGReplayDecorator getInstance() {
-		if (theInstance == null) {
-			theInstance = new EFGReplayDecorator();
-		}
-		return theInstance;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see de.ugoe.cs.quest.IReplayDecorator#getHeader()
-	 */
-	@Override
-	public String getHeader() {
-		return "<?xml version=\"1.0\" encoding=\"UTF-16\"?>"
-				+ StringTools.ENDLINE + "<TestCase>" + StringTools.ENDLINE;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see de.ugoe.cs.quest.IReplayDecorator#getFooter()
-	 */
-	@Override
-	public String getFooter() {
-		return "</TestCase>";
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see de.ugoe.cs.quest.IReplayDecorator#getSessionHeader(int)
-	 */
-	@Override
-	public String getSessionHeader(int sessionId) {
-		return "";
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see de.ugoe.cs.quest.IReplayDecorator#getSessionFooter(int)
-	 */
-	@Override
-	public String getSessionFooter(int sessionId) {
-		return "";
-	}
-
-}
Index: trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/plugin/guitar/GUITARTestCaseParser.java
===================================================================
--- trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/plugin/guitar/GUITARTestCaseParser.java	(revision 581)
+++ 	(revision )
@@ -1,113 +1,0 @@
-package de.ugoe.cs.quest.plugin.guitar;
-
-import java.io.File;
-import java.util.LinkedList;
-import java.util.List;
-
-import de.ugoe.cs.quest.eventcore.Event;
-import de.ugoe.cs.quest.plugin.guitar.eventcore.GUITAREventTarget;
-import de.ugoe.cs.quest.plugin.guitar.eventcore.GUITAREventType;
-import de.ugoe.cs.quest.plugin.guitar.eventcore.GUITARReplayable;
-import edu.umd.cs.guitar.model.IO;
-import edu.umd.cs.guitar.model.data.EFG;
-import edu.umd.cs.guitar.model.data.EventType;
-import edu.umd.cs.guitar.model.data.StepType;
-import edu.umd.cs.guitar.model.data.TestCase;
-
-/**
- * <p>
- * Parser for GUITAR test case files.
- * </p>
- * 
- * @author Steffen Herbold
- * @version 1.0
- */
-public class GUITARTestCaseParser {
-
-	/**
-	 * <p>
-	 * Name of the EFG file for the application the test cases that are parsed
-	 * are generated for.
-	 * </p>
-	 */
-	private String efgFileName = null;
-
-	/**
-	 * <p>
-	 * Internal handle to the parsed EFG.
-	 * </p>
-	 */
-	private EFG efg = null;
-
-	/**
-	 * <p>
-	 * Constructor. Creates a new GUITARTestCaseParser. No EFG file is
-	 * associated with this parser.
-	 * </p>
-	 */
-	public GUITARTestCaseParser() {
-
-	}
-
-	/**
-	 * <p>
-	 * Constructor. Creates a new GUITARTestCaseParser.
-	 * </p>
-	 * 
-	 * @param efgFileName
-	 *            EFG file associated with the test cases that are parsed.
-	 */
-	public GUITARTestCaseParser(String efgFileName) {
-		this.efgFileName = efgFileName;
-	}
-
-	/**
-	 * <p>
-	 * Parses a GUITAR test case file and returns its contents as an event
-	 * sequence.
-	 * </p>
-	 * 
-	 * @param testcaseFile
-	 *            file that is parsed
-	 * @return event sequence describing the test case
-	 */
-	public List<Event> parseTestCaseFile(File testcaseFile) {
-		TestCase testcase = (TestCase) IO.readObjFromFile(
-				testcaseFile.getAbsolutePath(), TestCase.class);
-		List<StepType> steps = testcase.getStep();
-		List<Event> sequence = new LinkedList<Event>();
-		for (StepType step : steps) {
-			String eventId = step.getEventId();
-			GUITAREventType type = new GUITAREventType(eventId);
-			GUITAREventTarget target = new GUITAREventTarget(getWidgetId(eventId));
-			Event event = new Event(type, target);
-			event.addReplayable(new GUITARReplayable(eventId));
-			sequence.add(event);
-		}
-		return sequence;
-	}
-
-	/**
-	 * <p>
-	 * If {@link #efgFileName} is specified, this function retrieves the
-	 * widgetId of the widget the event with id eventId belongs to from the EFG.
-	 * </p>
-	 * 
-	 * @param eventId
-	 * @return widgetId of the associated widget; null if {@link #efgFileName}
-	 *         ==null or no widgetId for the event is found in the EFG
-	 */
-	private String getWidgetId(String eventId) {
-		if (eventId != null && efgFileName != null) {
-			if (efg == null) {
-				efg = (EFG) IO.readObjFromFile(efgFileName, EFG.class);
-			}
-			for (EventType event : efg.getEvents().getEvent()) {
-				if (eventId.equals(event.getEventId())) {
-					return event.getWidgetId();
-				}
-			}
-		}
-		return null;
-	}
-}
