@@ 114-137 (lines=24) @@ | ||
111 | /** |
|
112 | * |
|
113 | */ |
|
114 | @Override |
|
115 | protected void doComputeFlawSolutions(Flaw flaw) |
|
116 | throws UnsolvableFlawException { |
|
117 | ||
118 | // get goal |
|
119 | Goal goal = (Goal) flaw; |
|
120 | ||
121 | // check solving information |
|
122 | if (!goal.isMandatoryExpansion()) { |
|
123 | // compute unification solutions |
|
124 | this.doComputeUnificationSolutions(goal); |
|
125 | } |
|
126 | ||
127 | // check solving information |
|
128 | if (!goal.isMandatoryUnification()) { |
|
129 | // compute expansion solutions |
|
130 | this.doComputeExpansionSolutions(goal); |
|
131 | } |
|
132 | ||
133 | // check if solvable |
|
134 | if (!goal.isSolvable()) { |
|
135 | // simply throw exception |
|
136 | throw new UnsolvableFlawException("Unsolvable flaw found on component " + this.component.getName() + ":" |
|
137 | + "\n" + flaw + "\n"); |
|
138 | } |
|
139 | } |
|
140 |
@@ 109-132 (lines=24) @@ | ||
106 | /** |
|
107 | * |
|
108 | */ |
|
109 | @Override |
|
110 | protected void doComputeFlawSolutions(Flaw flaw) |
|
111 | throws UnsolvableFlawException { |
|
112 | ||
113 | // get goal |
|
114 | Goal goal = (Goal) flaw; |
|
115 | ||
116 | // check solving information |
|
117 | if (!goal.isMandatoryExpansion()) { |
|
118 | // compute unification solutions |
|
119 | this.doComputeUnificationSolutions(goal); |
|
120 | } |
|
121 | ||
122 | // check solving information |
|
123 | if (!goal.isMandatoryUnification()) { |
|
124 | // compute expansion solutions |
|
125 | this.doComputeExpansionSolutions(goal); |
|
126 | } |
|
127 | ||
128 | // check if solvable |
|
129 | if (!goal.isSolvable()) { |
|
130 | // simply throw exception |
|
131 | throw new UnsolvableFlawException("Unsolvable flaw found on component " + this.component.getName() + ":" |
|
132 | + "\n" + flaw + "\n"); |
|
133 | } |
|
134 | } |
|
135 |