diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java index 61de4f8ec..3f3a34a6d 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java @@ -120,14 +120,17 @@ public class AssignedMachineCriterionsModel extends IntegrationEntityModel private void initializeCriterionSatisfactions( Set criterionsSatisfaction) { + Set types = new HashSet(); for (CriterionSatisfaction criterionSatisfaction : criterionsSatisfaction) { - initializeCriterionSatisfaction(criterionSatisfaction); - } - } + Criterion criterion = criterionSatisfaction.getCriterion(); + initializeCriterion(criterion); - private void initializeCriterionSatisfaction( - CriterionSatisfaction criterionSatisfaction) { - initializeCriterion(criterionSatisfaction.getCriterion()); + if (!types.contains(criterionSatisfaction.getCriterion().getType())) { + types.add(criterionSatisfaction.getCriterion().getType()); + reattachCriterionType(criterionSatisfaction.getCriterion() + .getType()); + } + } } private void initializeCriterion(Criterion criterion) { @@ -136,7 +139,6 @@ public class AssignedMachineCriterionsModel extends IntegrationEntityModel if (criterion.getParent() != null) { criterion.getParent().getName(); } - reattachCriterionType(criterion.getType()); } private void reattachCriterionType(CriterionType criterionType) {