From f4241f083267967f398ab310fd81b1e0aaf99f85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Wed, 16 Dec 2009 23:49:11 +0100 Subject: [PATCH] ItEr39S05ValidacionEProbasFuncionaisItEr38S05: [Bug #185] Fixing bug. It happened when removing an order element that has been scheduled. Only TaskSources for scheduling points can store HoursGroups. If not, when erasing the OrderElement containing an HourGroup an error can happen. --- .../navalplanner/business/orders/entities/TaskSource.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/TaskSource.java b/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/TaskSource.java index 506c1435b..87150a096 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/TaskSource.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/TaskSource.java @@ -28,6 +28,7 @@ import org.apache.commons.lang.Validate; import org.hibernate.validator.NotNull; import org.navalplanner.business.common.BaseEntity; import org.navalplanner.business.common.exceptions.InstanceNotFoundException; +import org.navalplanner.business.orders.entities.SchedulingState.Type; import org.navalplanner.business.planner.daos.ITaskElementDAO; import org.navalplanner.business.planner.daos.ITaskSourceDAO; import org.navalplanner.business.planner.entities.Task; @@ -255,8 +256,11 @@ public class TaskSource extends BaseEntity { public TaskSource(OrderElement orderElement) { Validate.notNull(orderElement); this.setOrderElement(orderElement); - this.setHoursGroups(new HashSet(orderElement - .getHoursGroups())); + Type orderElementType = orderElement.getSchedulingState().getType(); + if (orderElementType == SchedulingState.Type.SCHEDULING_POINT) { + this.setHoursGroups(new HashSet(orderElement + .getHoursGroups())); + } } public TaskSourceSynchronization withCurrentHoursGroup(