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/rules/patterns/visitors
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/rules/patterns/visitors/ContainsEventVisitor.java

    r1150 r1152  
    1919import de.ugoe.cs.autoquest.tasktrees.treeifc.IIteration; 
    2020import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence; 
    21 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     21import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
    2222import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePatternVisitor; 
    2323import de.ugoe.cs.autoquest.usability.tasktree.filters.EventTypeFilter; 
     
    4747     */ 
    4848    public void visit(IIteration iteration) { 
    49         checkAllChildrenAndReturnIfPatternIsPresent(iteration.getChildren()); 
     49        checkTaskAndReturnIfPatternIsPresent(iteration.getMarkedTask()); 
    5050    } 
    5151 
     
    5757    } 
    5858     
    59     private void checkAllChildrenAndReturnIfPatternIsPresent(List<ITaskTreeNode> children) { 
    60         for(ITaskTreeNode node : children) { 
    61             node.accept(this); 
    62             if(this.present) { 
     59    private void checkAllChildrenAndReturnIfPatternIsPresent(List<ITask> children) { 
     60        for (ITask task : children) { 
     61            if (checkTaskAndReturnIfPatternIsPresent(task)) { 
    6362                break; 
    6463            } 
     
    6665    } 
    6766 
     67    /** 
     68     * 
     69     */ 
     70    private boolean checkTaskAndReturnIfPatternIsPresent(ITask task) { 
     71        task.accept(this); 
     72        return this.present; 
     73    } 
    6874} 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/rules/patterns/visitors/ContainsPatternVisitor.java

    r1150 r1152  
    1515package de.ugoe.cs.autoquest.usability.rules.patterns.visitors; 
    1616 
     17import de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask; 
    1718import de.ugoe.cs.autoquest.tasktrees.treeifc.IIteration; 
    1819import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence; 
    19 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTree; 
    20 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     20import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
     21import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskModel; 
    2122import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePattern; 
    2223import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePatternVisitor; 
     
    4748     */ 
    4849    public void visit(IIteration iteration) { 
    49         checkAllChildrenAndReturnIfPatternIsPresent(iteration); 
     50        checkTaskAndReturnIfPatternIsPresent(iteration.getMarkedTask()); 
    5051 
    5152    } 
     
    5960    } 
    6061     
    61     private void checkAllChildrenAndReturnIfPatternIsPresent(ITaskTreeNode node) { 
    62         for(ITaskTreeNode child : node.getChildren()) { 
    63             ITaskTree taskTree; 
    64             if(isEvent(child)) { 
    65                 taskTree = PatternsVisitorUtil.createTaskTreeFromNode(node); 
    66             } else { 
    67                 taskTree = PatternsVisitorUtil.createTaskTreeFromNode(child); 
    68             } 
    69             this.present = containedPattern.containedIn(taskTree);  
    70             if(this.present) { 
     62    private void checkAllChildrenAndReturnIfPatternIsPresent(ISequence sequence) { 
     63        for (ITask child : sequence.getChildren()) { 
     64            if(checkTaskAndReturnIfPatternIsPresent(child)) { 
    7165                break; 
    7266            } 
     
    7468    } 
    7569     
    76     private boolean isEvent(ITaskTreeNode firstNode) { 
    77         return firstNode.getChildren().isEmpty(); 
     70    private boolean checkTaskAndReturnIfPatternIsPresent(ITask task) { 
     71        ITaskModel taskModel = PatternsVisitorUtil.createTaskModelFromNode(task); 
     72        this.present = containedPattern.containedIn(taskModel);  
     73    } 
     74     
     75    private boolean isEvent(ITask task) { 
     76        return task instanceof IEventTask; 
    7877    } 
    7978 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/rules/patterns/visitors/EndsWithEventVisitor.java

    r1150 r1152  
    4545     */ 
    4646    public void visit(IIteration iteration) { 
    47         PatternsVisitorUtil.lastNodeOf(iteration.getChildren()).accept(this); 
     47        iteration.getMarkedTask().accept(this); 
    4848    } 
    4949 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/rules/patterns/visitors/EndsWithPatternVisitor.java

    r1150 r1152  
    1515package de.ugoe.cs.autoquest.usability.rules.patterns.visitors; 
    1616 
     17import de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask; 
    1718import de.ugoe.cs.autoquest.tasktrees.treeifc.IIteration; 
    1819import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence; 
    19 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTree; 
    20 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     20import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
     21import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskModel; 
    2122import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePattern; 
    2223import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePatternVisitor; 
     
    4748     */ 
    4849    public void visit(IIteration iteration) { 
    49         ITaskTree taskTree = PatternsVisitorUtil.createTaskTreeFromNode(iteration); 
    50         this.present = containedPattern.containedIn(taskTree);  
     50        ITaskModel taskModel = PatternsVisitorUtil.createTaskModelFromNode(iteration); 
     51        this.present = containedPattern.containedIn(taskModel);  
    5152 
    5253    } 
     
    5657     */ 
    5758    public void visit(ISequence sequence) { 
    58         ITaskTreeNode lastNode = PatternsVisitorUtil.lastNodeOf(sequence.getChildren()); 
    59         ITaskTree taskTree; 
    60         if(isEvent(lastNode)) { 
    61             taskTree = PatternsVisitorUtil.createTaskTreeFromNode(sequence); 
     59        ITask lastTask = PatternsVisitorUtil.lastNodeOf(sequence.getChildren()); 
     60        ITaskModel taskModel; 
     61        if(isEvent(lastTask)) { 
     62            taskModel = PatternsVisitorUtil.createTaskModelFromNode(sequence); 
    6263        } else { 
    63             taskTree = PatternsVisitorUtil.createTaskTreeFromNode(lastNode); 
     64            taskModel = PatternsVisitorUtil.createTaskModelFromNode(lastTask); 
    6465        } 
    65         this.present = containedPattern.containedIn(taskTree);       
     66        this.present = containedPattern.containedIn(taskModel);       
    6667    } 
    6768 
    68     private boolean isEvent(ITaskTreeNode firstNode) { 
    69         return firstNode.getChildren().isEmpty(); 
     69    private boolean isEvent(ITask lastTask) { 
     70        return lastTask instanceof IEventTask; 
    7071    } 
    7172 
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/rules/patterns/visitors/StartsWithEventVisitor.java

    r1150 r1152  
    4545     */ 
    4646    public void visit(IIteration iteration) { 
    47         PatternsVisitorUtil.firstNodeOf(iteration.getChildren()).accept(this); 
     47        iteration.getMarkedTask().accept(this); 
    4848    } 
    4949     
  • trunk/autoquest-core-usability-evaluation/src/main/java/de/ugoe/cs/autoquest/usability/rules/patterns/visitors/StartsWithPatternVisitor.java

    r1150 r1152  
    1515package de.ugoe.cs.autoquest.usability.rules.patterns.visitors; 
    1616 
     17import de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask; 
    1718import de.ugoe.cs.autoquest.tasktrees.treeifc.IIteration; 
    1819import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence; 
    19 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTree; 
    20 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNode; 
     20import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 
     21import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskModel; 
    2122import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePattern; 
    2223import de.ugoe.cs.autoquest.usability.rules.patterns.UsagePatternVisitor; 
     
    4748     */ 
    4849    public void visit(IIteration iteration) { 
    49         ITaskTree taskTree = PatternsVisitorUtil.createTaskTreeFromNode(iteration); 
    50         this.present = containedPattern.containedIn(taskTree);   
     50        ITaskModel taskModel = PatternsVisitorUtil.createTaskModelFromNode(iteration); 
     51        this.present = containedPattern.containedIn(taskModel);   
    5152    } 
    5253 
     
    5556     */ 
    5657    public void visit(ISequence sequence) { 
    57         ITaskTreeNode firstNode = PatternsVisitorUtil.firstNodeOf(sequence.getChildren()); 
    58         ITaskTree taskTree; 
    59         if(isEvent(firstNode)) { 
    60             taskTree = PatternsVisitorUtil.createTaskTreeFromNode(sequence); 
     58        ITask firstTask = PatternsVisitorUtil.firstNodeOf(sequence.getChildren()); 
     59        ITaskModel taskModel; 
     60        if(isEvent(firstTask)) { 
     61            taskModel = PatternsVisitorUtil.createTaskModelFromNode(sequence); 
    6162        } else { 
    62             taskTree = PatternsVisitorUtil.createTaskTreeFromNode(firstNode); 
     63            taskModel = PatternsVisitorUtil.createTaskModelFromNode(firstTask); 
    6364        } 
    64         this.present = containedPattern.containedIn(taskTree);       
     65        this.present = containedPattern.containedIn(taskModel);       
    6566    } 
    6667 
    67     private boolean isEvent(ITaskTreeNode firstNode) { 
    68         return firstNode.getChildren().isEmpty(); 
     68    private boolean isEvent(ITask firstTask) { 
     69        return firstTask instanceof IEventTask; 
    6970    } 
    7071 
Note: See TracChangeset for help on using the changeset viewer.