source: autoquest-core-usability-evaluation-test/src/main/java/de/ugoe/cs/autoquest/usability/testutil/GenerateTaskTreeUtil.java @ 1030

Last change on this file since 1030 was 1030, checked in by adeicke, 11 years ago

Initial commit.

  • Property svn:mime-type set to text/plain
File size: 2.8 KB
Line 
1
2package de.ugoe.cs.autoquest.usability.testutil;
3
4import java.util.logging.Level;
5
6import de.ugoe.cs.autoquest.commands.sequences.CMDcondenseGuiModel;
7import de.ugoe.cs.autoquest.commands.sequences.CMDcondenseMouseClicks;
8import de.ugoe.cs.autoquest.commands.sequences.CMDcorrectKeyInteractionTargets;
9import de.ugoe.cs.autoquest.commands.sequences.CMDdetectTextInputEvents;
10import de.ugoe.cs.autoquest.commands.sequences.CMDsortKeyInteractions;
11import de.ugoe.cs.autoquest.commands.usability.CMDgenerateTaskTree;
12import de.ugoe.cs.autoquest.plugin.jfc.commands.CMDparseJFC;
13import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTree;
14import de.ugoe.cs.autoquest.test.CommandRunner;
15import de.ugoe.cs.util.console.Console;
16import de.ugoe.cs.util.console.GlobalDataContainer;
17import de.ugoe.cs.util.console.TextConsole;
18
19public class GenerateTaskTreeUtil {
20   
21    private static final String seqName = "sequences";
22
23    private static final String taskTreeName = "taskTree";
24
25    public static ITaskTree getTaskTreeFromFile(String filename) {
26        new TextConsole(Level.FINEST);
27        parseTraceFile(filename);
28        condenseGuiModel();
29        sortKeyInteractions();
30        correctKeyInteractionTargets();
31        detectTextInputEvents();
32        condenseMouseClicks();
33        return generateTaskTree();
34    }
35
36    static private void parseTraceFile(String filetoparse) {
37        Console.println("parsing trace file");
38        CommandRunner.runCommand(CMDparseJFC.class, ClassLoader.getSystemResource(filetoparse)
39            .getFile(), seqName);
40    }
41
42    private static void condenseGuiModel() {
43        Console.println("condensing GUI model");
44        CommandRunner.runCommand(CMDcondenseGuiModel.class, seqName);
45    }
46
47    private static void sortKeyInteractions() {
48        Console.println("sorting key interactions");
49        CommandRunner.runCommand(CMDsortKeyInteractions.class, seqName);
50    }
51
52    private static void correctKeyInteractionTargets() {
53        Console.println("correcting key interaction targets");
54        CommandRunner.runCommand(CMDcorrectKeyInteractionTargets.class, seqName);
55    }
56
57    private static void detectTextInputEvents() {
58        Console.println("detecting text input events");
59        CommandRunner.runCommand(CMDdetectTextInputEvents.class, seqName);
60    }
61
62    private static void condenseMouseClicks() {
63        Console.println("condensing mouse click events");
64        CommandRunner.runCommand(CMDcondenseMouseClicks.class, seqName);
65    }
66
67    private static ITaskTree generateTaskTree() {
68        CommandRunner.runCommand(CMDgenerateTaskTree.class, seqName, taskTreeName);
69        GlobalDataContainer dataContainer = GlobalDataContainer.getInstance();
70        return (ITaskTree) dataContainer.getData(taskTreeName);
71    }
72
73}
Note: See TracBrowser for help on using the repository browser.