Changeset 1146 for trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/manager/TaskTreeManager.java
- Timestamp:
- 04/04/13 16:06:07 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/manager/TaskTreeManager.java
r1113 r1146 21 21 22 22 import de.ugoe.cs.autoquest.eventcore.Event; 23 import de.ugoe.cs.autoquest.tasktrees.treeifc.I EventTask;24 import de.ugoe.cs.autoquest.tasktrees.treeifc.I Sequence;25 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask Tree;26 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask TreeBuilder;27 import de.ugoe.cs.autoquest.tasktrees.treeifc.I TaskTreeNodeFactory;23 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 24 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskModel; 25 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskBuilder; 26 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskFactory; 27 import de.ugoe.cs.autoquest.tasktrees.treeifc.IUserSession; 28 28 import de.ugoe.cs.util.console.Console; 29 29 … … 37 37 38 38 /** */ 39 private ITask TreeBuilder taskTreeBuilder = ComponentManager.getDefaultTaskTreeBuilder();39 private ITaskBuilder taskBuilder = ComponentManager.getDefaultTaskBuilder(); 40 40 41 41 /** */ 42 private ITaskTreeNodeFactory taskTreeNodeFactory = 43 ComponentManager.getDefaultTaskTreeNodeFactory(); 42 private ITaskFactory taskFactory = ComponentManager.getDefaultTaskFactory(); 44 43 45 44 /** */ 46 private List< List<IEventTask>> sessions = null;45 private List<IUserSession> sessions = null; 47 46 48 47 /** */ 49 private List<IEventTask>currentSession = null;48 private IUserSession currentSession = null; 50 49 51 50 /** … … 53 52 */ 54 53 public TaskTreeManager() { 55 sessions = new LinkedList< List<IEventTask>>();54 sessions = new LinkedList<IUserSession>(); 56 55 } 57 56 … … 59 58 * 60 59 */ 61 public synchronized ITask Tree createTaskTree(Collection<List<Event>> newSessions) {60 public synchronized ITaskModel createTaskModel(Collection<List<Event>> newSessions) { 62 61 if ((currentSession != null) || (sessions.size() > 0)) { 63 62 throw new IllegalStateException("do not mix calls to this method with calls to the " + … … 75 74 } 76 75 77 return getTask Tree();76 return getTaskModel(); 78 77 } 79 78 … … 83 82 public void handleNewEvent(Event event) { 84 83 assertSessionSequence(); 85 currentSession.add86 (taskTreeNodeFactory.createNewEventTask(event.getType(), event.getTarget()));84 ITask eventTask = taskFactory.createNewEventTask(event.getType(), event.getTarget()); 85 taskBuilder.addExecutedTask(currentSession, taskFactory.createNewTaskInstance(eventTask)); 87 86 } 88 87 … … 91 90 */ 92 91 public void finishSession() { 93 if ((currentSession != null) && (currentSession. size() > 0)) {92 if ((currentSession != null) && (currentSession.getExecutedTasks().size() > 0)) { 94 93 sessions.add(currentSession); 95 94 currentSession = null; … … 100 99 * 101 100 */ 102 public synchronized ITask Tree getTaskTree() {101 public synchronized ITaskModel getTaskModel() { 103 102 finishSession(); 104 103 105 104 Console.traceln(Level.INFO, "applying temporal relationship generation rules"); 106 105 107 ISequence rootSequence = taskTreeNodeFactory.createNewSequence(); 108 taskTreeBuilder.setDescription(rootSequence, "root"); 109 110 for (List<IEventTask> session : sessions) { 111 ISequence sequence = taskTreeNodeFactory.createNewSequence(); 112 taskTreeBuilder.setDescription(sequence, "session"); 113 114 for (IEventTask eventTask : session) { 115 taskTreeBuilder.addChild(sequence, eventTask); 116 } 117 118 taskTreeBuilder.addChild(rootSequence, sequence); 119 } 120 121 122 ComponentManager.getTemporalRelationshipRuleManager().applyRules(rootSequence); 106 ComponentManager.getTemporalRelationshipRuleManager().applyRules(sessions); 123 107 124 return task TreeNodeFactory.createTaskTree(rootSequence);108 return taskFactory.createTaskModel(sessions); 125 109 } 126 110 … … 130 114 private void assertSessionSequence() { 131 115 if (currentSession == null) { 132 currentSession = new LinkedList<IEventTask>();116 currentSession = taskFactory.createUserSession(); 133 117 } 134 118 }
Note: See TracChangeset
for help on using the changeset viewer.