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
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 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 
Note: See TracChangeset for help on using the changeset viewer.