- Timestamp:
- 02/28/14 13:13:05 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/TaskBuilder.java
r1362 r1422 19 19 import de.ugoe.cs.autoquest.tasktrees.treeifc.IIteration; 20 20 import de.ugoe.cs.autoquest.tasktrees.treeifc.IIterationInstance; 21 import de.ugoe.cs.autoquest.tasktrees.treeifc.IMarkingTemporalRelationship; 21 22 import de.ugoe.cs.autoquest.tasktrees.treeifc.IOptional; 22 23 import de.ugoe.cs.autoquest.tasktrees.treeifc.IOptionalInstance; … … 25 26 import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence; 26 27 import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequenceInstance; 28 import de.ugoe.cs.autoquest.tasktrees.treeifc.IStructuringTemporalRelationship; 27 29 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; 28 30 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskBuilder; … … 60 62 } 61 63 62 /*IStructuringTemporalRelationship parentTask = 63 (IStructuringTemporalRelationship) parent.getTask(); 64 64 SequenceInstance seqInstance = (SequenceInstance) instance; 65 66 // check if new child instance matches the model, if this can be checked 67 IStructuringTemporalRelationship parentTask = 68 (IStructuringTemporalRelationship) instance.getTask(); 69 70 if (((parentTask.getChildren() != null) && (parentTask.getChildren().size() > 0)) && 71 ((parentTask.getChildren().size() <= seqInstance.size()) || 72 (!parentTask.getChildren().get(seqInstance.size()).equals(child.getTask())))) 73 { 74 throw new IllegalArgumentException 75 ("the task of the child instance to be added does not belong to the children " + 76 "of the task of the parent instance"); 77 } 78 79 seqInstance.addChild(child); 80 } 81 82 /* (non-Javadoc) 83 * @see ITaskBuilder#addChild(ISequenceInstance, int, ITaskInstance) 84 */ 85 public void addChild(ISequenceInstance instance, int index, ITaskInstance child) 86 throws IllegalArgumentException 87 { 88 if (!(instance instanceof SequenceInstance)) { 89 throw new IllegalArgumentException 90 ("illegal type of sequence instance provided: " + instance.getClass()); 91 } 92 93 if (!(child instanceof TaskInstance)) { 94 throw new IllegalArgumentException 95 ("illegal type of task instance provided: " + child.getClass()); 96 } 97 98 SequenceInstance seqInstance = (SequenceInstance) instance; 99 100 // check if new child instance matches the model, if this can be checked 101 IStructuringTemporalRelationship parentTask = 102 (IStructuringTemporalRelationship) instance.getTask(); 103 104 if (((parentTask.getChildren() != null) && (parentTask.getChildren().size() > 0)) && 105 ((parentTask.getChildren().size() <= index) || 106 (!parentTask.getChildren().get(index).equals(child.getTask())))) 107 { 108 throw new IllegalArgumentException 109 ("the task of the child instance to be added does not belong to the children " + 110 "of the task of the parent instance"); 111 } 112 113 seqInstance.addChild(index, child); 114 } 115 116 /* (non-Javadoc) 117 * @see ITaskBuilder#addChild(IIterationInstance, ITaskInstance) 118 */ 119 @Override 120 public void addChild(IIterationInstance instance, ITaskInstance child) 121 throws IllegalArgumentException 122 { 123 if (!(instance instanceof IterationInstance)) { 124 throw new IllegalArgumentException 125 ("illegal type of iteration instance provided: " + instance.getClass()); 126 } 127 128 if (!(child instanceof TaskInstance)) { 129 throw new IllegalArgumentException 130 ("illegal type of task instance provided: " + child.getClass()); 131 } 132 133 // check if new child instance matches the model, if this can be checked 134 IMarkingTemporalRelationship parentTask = 135 (IMarkingTemporalRelationship) instance.getTask(); 136 137 boolean foundChildTask = parentTask.getMarkedTask() != null ? 138 parentTask.getMarkedTask().equals(child.getTask()) : true; 139 140 if (!foundChildTask) { 141 throw new IllegalArgumentException 142 ("the task of the child instance does not match the model of the task of the " + 143 "iteration instance: " + parentTask.getMarkedTask() + " <> " + child.getTask()); 144 } 145 146 ((IterationInstance) instance).addChild(child); 147 } 148 149 /* (non-Javadoc) 150 * @see ITaskBuilder#addChild(IIterationInstance, int, ITaskInstance) 151 */ 152 public void addChild(IIterationInstance instance, int index, ITaskInstance child) 153 throws IllegalArgumentException 154 { 155 if (!(instance instanceof IterationInstance)) { 156 throw new IllegalArgumentException 157 ("illegal type of iteration instance provided: " + instance.getClass()); 158 } 159 160 if (!(child instanceof TaskInstance)) { 161 throw new IllegalArgumentException 162 ("illegal type of task instance provided: " + child.getClass()); 163 } 164 165 // check if new child instance matches the model, if this can be checked 166 IMarkingTemporalRelationship parentTask = 167 (IMarkingTemporalRelationship) instance.getTask(); 168 169 boolean foundChildTask = parentTask.getMarkedTask() != null ? 170 parentTask.getMarkedTask().equals(child.getTask()) : true; 171 172 if (!foundChildTask) { 173 throw new IllegalArgumentException 174 ("the task of the child instance does not match the model of the task of the " + 175 "iteration instance: " + parentTask.getMarkedTask() + " <> " + child.getTask()); 176 } 177 178 ((IterationInstance) instance).addChild(index, child); 179 } 180 181 /* (non-Javadoc) 182 * @see ITaskBuilder#setChild(ISelectionInstance, ITaskInstance) 183 */ 184 @Override 185 public void setChild(ISelectionInstance instance, ITaskInstance child) 186 throws IllegalArgumentException 187 { 188 if (!(instance instanceof SelectionInstance)) { 189 throw new IllegalArgumentException 190 ("illegal type of selection instance provided: " + instance.getClass()); 191 } 192 193 if (!(child instanceof TaskInstance)) { 194 throw new IllegalArgumentException("illegal type of task instance provided: " + 195 (child == null ? null : child.getClass())); 196 } 197 198 // check if new child instance matches the model, if this can be checked 199 IStructuringTemporalRelationship parentTask = 200 (IStructuringTemporalRelationship) instance.getTask(); 201 202 boolean foundChildTask = false; 65 203 for (ITask parentTaskChild : parentTask.getChildren()) { 66 204 if (parentTaskChild.equals(child.getTask())) { … … 73 211 throw new IllegalArgumentException 74 212 ("the task of the child instance to be added does not belong to the children " + 75 "of the task of the parent instance"); 76 }*/ 77 78 ((SequenceInstance) instance).addChild(child); 79 } 80 81 /* (non-Javadoc) 82 * @see ITaskBuilder#addChild(ISequenceInstance, int, ITaskInstance) 83 */ 84 public void addChild(ISequenceInstance instance, int index, ITaskInstance child) 213 "of the selection task model of the parent instance"); 214 } 215 216 ((SelectionInstance) instance).setChild(child); 217 } 218 219 /* (non-Javadoc) 220 * @see ITaskBuilder#setChild(IOptionalInstance, ITaskInstance) 221 */ 222 @Override 223 public void setChild(IOptionalInstance instance, ITaskInstance child) 85 224 throws IllegalArgumentException 86 225 { 87 if (!(instance instanceof SequenceInstance)) {88 throw new IllegalArgumentException 89 ("illegal type of sequenceinstance provided: " + instance.getClass());226 if (!(instance instanceof OptionalInstance)) { 227 throw new IllegalArgumentException 228 ("illegal type of optional instance provided: " + instance.getClass()); 90 229 } 91 230 … … 95 234 } 96 235 97 /*IStructuringTemporalRelationship parentTask = 98 (IStructuringTemporalRelationship) parent.getTask(); 99 100 for (ITask parentTaskChild : parentTask.getChildren()) { 101 if (parentTaskChild.equals(child.getTask())) { 102 foundChildTask = true; 103 break; 104 } 105 } 236 // check if new child instance matches the model, if this can be checked 237 IMarkingTemporalRelationship parentTask = 238 (IMarkingTemporalRelationship) instance.getTask(); 239 240 boolean foundChildTask = parentTask.getMarkedTask() != null ? 241 parentTask.getMarkedTask().equals(child.getTask()) : true; 106 242 107 243 if (!foundChildTask) { 108 244 throw new IllegalArgumentException 109 ("the task of the child instance to be added does not belong to the children " + 110 "of the task of the parent instance"); 111 }*/ 112 113 ((SequenceInstance) instance).addChild(index, child); 114 } 115 116 /* (non-Javadoc) 117 * @see ITaskBuilder#addChild(IIterationInstance, ITaskInstance) 118 */ 119 @Override 120 public void addChild(IIterationInstance instance, ITaskInstance child) 121 throws IllegalArgumentException 122 { 123 if (!(instance instanceof IterationInstance)) { 124 throw new IllegalArgumentException 125 ("illegal type of iteration instance provided: " + instance.getClass()); 126 } 127 128 if (!(child instanceof TaskInstance)) { 129 throw new IllegalArgumentException 130 ("illegal type of task instance provided: " + child.getClass()); 131 } 132 133 /*IStructuringTemporalRelationship parentTask = 134 (IStructuringTemporalRelationship) parent.getTask(); 135 136 IMarkingTemporalRelationship parentTask = 137 (IMarkingTemporalRelationship) parent.getTask(); 138 139 foundChildTask = parentTask.getMarkedTask() != null ? 140 parentTask.getMarkedTask().equals(child.getTask()) : false; 141 142 if (!foundChildTask) { 143 throw new IllegalArgumentException 144 ("the task of the child instance to be added does not belong to the children " + 145 "of the task of the parent instance"); 146 }*/ 147 148 ((IterationInstance) instance).addChild(child); 149 } 150 151 /* (non-Javadoc) 152 * @see ITaskBuilder#addChild(IIterationInstance, int, ITaskInstance) 153 */ 154 public void addChild(IIterationInstance instance, int index, ITaskInstance child) 155 throws IllegalArgumentException 156 { 157 if (!(instance instanceof IterationInstance)) { 158 throw new IllegalArgumentException 159 ("illegal type of iteration instance provided: " + instance.getClass()); 160 } 161 162 if (!(child instanceof TaskInstance)) { 163 throw new IllegalArgumentException 164 ("illegal type of task instance provided: " + child.getClass()); 165 } 166 167 /*IStructuringTemporalRelationship parentTask = 168 (IStructuringTemporalRelationship) parent.getTask(); 169 170 IMarkingTemporalRelationship parentTask = 171 (IMarkingTemporalRelationship) parent.getTask(); 172 173 foundChildTask = parentTask.getMarkedTask() != null ? 174 parentTask.getMarkedTask().equals(child.getTask()) : false; 175 176 if (!foundChildTask) { 177 throw new IllegalArgumentException 178 ("the task of the child instance to be added does not belong to the children " + 179 "of the task of the parent instance"); 180 }*/ 181 182 ((IterationInstance) instance).addChild(index, child); 183 } 184 185 /* (non-Javadoc) 186 * @see ITaskBuilder#setChild(ISelectionInstance, ITaskInstance) 187 */ 188 @Override 189 public void setChild(ISelectionInstance instance, ITaskInstance child) 190 throws IllegalArgumentException 191 { 192 if (!(instance instanceof SelectionInstance)) { 193 throw new IllegalArgumentException 194 ("illegal type of selection instance provided: " + instance.getClass()); 195 } 196 197 if (!(child instanceof TaskInstance)) { 198 throw new IllegalArgumentException("illegal type of task instance provided: " + 199 (child == null ? null : child.getClass())); 200 } 201 202 /*IStructuringTemporalRelationship parentTask = 203 (IStructuringTemporalRelationship) parent.getTask(); 204 205 for (ITask parentTaskChild : parentTask.getChildren()) { 206 if (parentTaskChild.equals(child.getTask())) { 207 foundChildTask = true; 208 break; 209 } 210 } 211 212 if (!foundChildTask) { 213 throw new IllegalArgumentException 214 ("the task of the child instance to be added does not belong to the children " + 215 "of the task of the parent instance"); 216 }*/ 217 218 ((SelectionInstance) instance).setChild(child); 219 } 220 221 /* (non-Javadoc) 222 * @see ITaskBuilder#setChild(IOptionalInstance, ITaskInstance) 223 */ 224 @Override 225 public void setChild(IOptionalInstance instance, ITaskInstance child) 226 throws IllegalArgumentException 227 { 228 if (!(instance instanceof OptionalInstance)) { 229 throw new IllegalArgumentException 230 ("illegal type of optional instance provided: " + instance.getClass()); 231 } 232 233 if (!(child instanceof TaskInstance)) { 234 throw new IllegalArgumentException 235 ("illegal type of task instance provided: " + child.getClass()); 236 } 237 238 /*IStructuringTemporalRelationship parentTask = 239 (IStructuringTemporalRelationship) parent.getTask(); 240 241 IMarkingTemporalRelationship parentTask = 242 (IMarkingTemporalRelationship) parent.getTask(); 243 244 foundChildTask = parentTask.getMarkedTask() != null ? 245 parentTask.getMarkedTask().equals(child.getTask()) : false; 246 247 if (!foundChildTask) { 248 throw new IllegalArgumentException 249 ("the task of the child instance to be added does not belong to the children " + 250 "of the task of the parent instance"); 251 }*/ 245 ("the task of the child instance does not match the model of the task of the " + 246 "optional instance: " + parentTask.getMarkedTask() + " <> " + child.getTask()); 247 } 252 248 253 249 ((OptionalInstance) instance).setChild(child);
Note: See TracChangeset
for help on using the changeset viewer.