Ignore:
Timestamp:
04/08/13 16:50:21 (11 years ago)
Author:
pharms
Message:
  • complete refactoring of task tree model with a separation of task models and task instances
Location:
trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/tasktree/filters
Files:
2 edited
3 moved

Legend:

Unmodified
Added
Removed
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/tasktree/filters/EventTargetFilter.java

    r1135 r1152  
    2323import de.ugoe.cs.autoquest.eventcore.guimodel.ITextField; 
    2424import de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask; 
    25 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     25import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
    2626 
    2727/** 
     
    3232 * @author Alexander Deicke 
    3333 */ 
    34 public enum EventTargetFilter implements TaskTreeNodeFilter<IEventTarget> { 
     34public enum EventTargetFilter implements TaskFilter<IEventTarget> { 
    3535 
    3636    TEXT_FIELD(ITextField.class), 
     
    5454    public Predicate filterPredicate() { 
    5555        Predicate<Object> instanceOfIEventTaskPredicate = Predicates.instanceOf(IEventTask.class); 
    56         Predicate<ITaskTreeNode> nodeHoldsInstanceOfFilterArgument = 
    57             Predicates.compose(Predicates.instanceOf(eventTargetClazz), nodeExtractionFunction()); 
    58         return Predicates.and(instanceOfIEventTaskPredicate, nodeHoldsInstanceOfFilterArgument); 
     56        Predicate<ITask> taskHoldsInstanceOfFilterArgument = 
     57            Predicates.compose(Predicates.instanceOf(eventTargetClazz), taskExtractionFunction()); 
     58        return Predicates.and(instanceOfIEventTaskPredicate, taskHoldsInstanceOfFilterArgument); 
    5959    } 
    6060 
    61     private Function<ITaskTreeNode, IEventTarget> nodeExtractionFunction() { 
    62         return new Function<ITaskTreeNode, IEventTarget>() { 
     61    private Function<ITask, IEventTarget> taskExtractionFunction() { 
     62        return new Function<ITask, IEventTarget>() { 
    6363 
    6464            @Override 
    65             public IEventTarget apply(ITaskTreeNode treeNode) { 
    66                 return ((IEventTask) treeNode).getEventTarget(); 
     65            public IEventTarget apply(ITask task) { 
     66                return ((IEventTask) task).getEventTarget(); 
    6767            } 
    6868        }; 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/tasktree/filters/EventTypeFilter.java

    r1150 r1152  
    2727import de.ugoe.cs.autoquest.eventcore.gui.TextInput; 
    2828import de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask; 
    29 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     29import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
    3030 
    3131/** 
     
    3636 * @author Alexander Deicke 
    3737 */ 
    38 public enum EventTypeFilter implements TaskTreeNodeFilter<IEventType> { 
     38public enum EventTypeFilter implements TaskFilter<IEventType> { 
    3939 
    4040    MOUSE_BUTTON_INTERACTION(MouseButtonInteraction.class), 
     
    6666    public Predicate filterPredicate() { 
    6767        Predicate<Object> instanceOfIEventTaskPredicate = Predicates.instanceOf(IEventTask.class); 
    68         Predicate<ITaskTreeNode> nodeHoldsInstanceOfFilterArgument = 
    69             Predicates.compose(Predicates.instanceOf(eventTypeClazz), nodeExtractionFunction()); 
    70         return Predicates.and(instanceOfIEventTaskPredicate, nodeHoldsInstanceOfFilterArgument); 
     68        Predicate<ITask> taskHoldsInstanceOfFilterArgument = 
     69            Predicates.compose(Predicates.instanceOf(eventTypeClazz), taskExtractionFunction()); 
     70        return Predicates.and(instanceOfIEventTaskPredicate, taskHoldsInstanceOfFilterArgument); 
    7171    } 
    7272 
    73     private Function<ITaskTreeNode, IEventType> nodeExtractionFunction() { 
    74         return new Function<ITaskTreeNode, IEventType>() { 
     73    private Function<ITask, IEventType> taskExtractionFunction() { 
     74        return new Function<ITask, IEventType>() { 
    7575 
    7676            @Override 
    77             public IEventType apply(ITaskTreeNode treeNode) { 
    78                 return ((IEventTask) treeNode).getEventType(); 
     77            public IEventType apply(ITask task) { 
     78                return ((IEventTask) task).getEventType(); 
    7979            } 
    8080        }; 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/tasktree/filters/TaskFilter.java

    r1150 r1152  
    2424 * @author Alexander Deicke 
    2525 */ 
    26 public interface TaskTreeNodeFilter<T> { 
     26public interface TaskFilter<T> { 
    2727 
    2828    public Class<T> clazz(); 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/tasktree/filters/TaskModelFilter.java

    r1150 r1152  
    1717import com.google.common.base.Preconditions; 
    1818 
    19 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTree; 
     19import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskModel; 
    2020import de.ugoe.cs.autoquest.usability.tasktree.FilterResult; 
    21 import de.ugoe.cs.autoquest.usability.tasktree.TaskTreeFilterStrategy; 
     21import de.ugoe.cs.autoquest.usability.tasktree.TaskModelFilterStrategy; 
    2222 
    2323/** 
     
    2828 * @author Alexander Deicke 
    2929 */ 
    30 public class TaskTreeFilter { 
     30public class TaskModelFilter { 
    3131 
    32     private final TaskTreeFilterStrategy taskTreeFilterStrategy; 
     32    private final TaskModelFilterStrategy taskModelFilterStrategy; 
    3333 
    34     public TaskTreeFilter(TaskTreeFilterStrategy treeTraversalStrategy) { 
     34    public TaskModelFilter(TaskModelFilterStrategy treeTraversalStrategy) { 
    3535        Preconditions.checkNotNull(treeTraversalStrategy); 
    36         this.taskTreeFilterStrategy = treeTraversalStrategy; 
     36        this.taskModelFilterStrategy = treeTraversalStrategy; 
    3737    } 
    3838 
     
    4545    } 
    4646 
    47     public FilterNodeTypeStep filterByNodeType(TaskTreeNodeTypeFilter nodeType) { 
     47    public FilterNodeTypeStep filterByNodeType(TaskTypeFilter nodeType) { 
    4848        return new FilterNodeTypeStep(nodeType); 
    4949    } 
     
    5757        } 
    5858 
    59         public FilterResult from(ITaskTree taskTree) { 
    60             return taskTreeFilterStrategy.filter(taskTree, eventTarget); 
     59        public FilterResult from(ITaskModel taskModel) { 
     60            return taskModelFilterStrategy.filter(taskModel, eventTarget); 
    6161        } 
    6262 
     
    7171        } 
    7272 
    73         public FilterResult from(ITaskTree taskTree) { 
    74             return taskTreeFilterStrategy.filter(taskTree, eventType); 
     73        public FilterResult from(ITaskModel taskModel) { 
     74            return taskModelFilterStrategy.filter(taskModel, eventType); 
    7575        } 
    7676 
     
    7979    public class FilterNodeTypeStep { 
    8080 
    81         private final TaskTreeNodeTypeFilter nodeType; 
     81        private final TaskTypeFilter nodeType; 
    8282 
    83         public FilterNodeTypeStep(TaskTreeNodeTypeFilter nodeType) { 
     83        public FilterNodeTypeStep(TaskTypeFilter nodeType) { 
    8484            this.nodeType = nodeType; 
    8585        } 
    8686 
    87         public FilterResult from(ITaskTree taskTree) { 
    88             return taskTreeFilterStrategy.filter(taskTree, nodeType); 
     87        public FilterResult from(ITaskModel taskModel) { 
     88            return taskModelFilterStrategy.filter(taskModel, nodeType); 
    8989        } 
    9090 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/tasktree/filters/TaskTypeFilter.java

    r1150 r1152  
    2222import de.ugoe.cs.autoquest.tasktrees.treeifc.ISelection; 
    2323import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence; 
    24 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     24import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
    2525 
    2626/** 
     
    3131 * @author Alexander Deicke 
    3232 */ 
    33 public enum TaskTreeNodeTypeFilter implements TaskTreeNodeFilter<ITaskTreeNode> { 
     33public enum TaskTypeFilter implements TaskFilter<ITask> { 
    3434 
    3535    EVENT_TASK_NODE(IEventTask.class), 
     
    4141    SELECTION(ISelection.class),; 
    4242 
    43     private Class<? extends ITaskTreeNode> nodeTypeClazz; 
     43    private Class<? extends ITask> taskTypeClazz; 
    4444 
    45     private TaskTreeNodeTypeFilter(Class<? extends ITaskTreeNode> nodeTypeClazz) { 
    46         this.nodeTypeClazz = nodeTypeClazz; 
     45    private TaskTypeFilter(Class<? extends ITask> taskTypeClazz) { 
     46        this.taskTypeClazz = taskTypeClazz; 
    4747    } 
    4848 
    4949    @SuppressWarnings("unchecked") 
    5050    @Override 
    51     public Class<ITaskTreeNode> clazz() { 
    52         return (Class<ITaskTreeNode>) this.nodeTypeClazz; 
     51    public Class<ITask> clazz() { 
     52        return (Class<ITask>) this.taskTypeClazz; 
    5353    } 
    5454 
     
    5656    @Override 
    5757    public Predicate filterPredicate() { 
    58         return Predicates.instanceOf(nodeTypeClazz); 
     58        return Predicates.instanceOf(taskTypeClazz); 
    5959    } 
    6060 
Note: See TracChangeset for help on using the changeset viewer.