From f3cec68358524da302ff8cebb2f7412fbd7048a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Thu, 24 Dec 2009 13:30:52 +0100 Subject: [PATCH] ItEr40S21ImplantacionAplicacionItEr33S10: [Bug #205] Fixing bug. Marking all resource allocations after being saved as not transient. --- .../web/planner/order/SaveCommand.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/SaveCommand.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/SaveCommand.java index 1808c88f0..87b5121e9 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/SaveCommand.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/SaveCommand.java @@ -125,10 +125,10 @@ public class SaveCommand implements ISaveCommand { private void saveTasksToSave() { for (TaskElement taskElement : state.getTasksToSave()) { taskElementDAO.save(taskElement); - dontPoseAsTransient(taskElement); if (taskElement instanceof Task) { saveTask(taskElement, (Task) taskElement); } + dontPoseAsTransient(taskElement); } if (!state.getTasksToSave().isEmpty()) { updateRootTaskPosition(); @@ -142,7 +142,7 @@ public class SaveCommand implements ISaveCommand { taskElement.dontPoseAsTransientObjectAnymore(); } Set> resourceAllocations = taskElement.getResourceAllocations(); - derivedDontPoseAsTransient(resourceAllocations); + dontPoseAsTransient(resourceAllocations); if (!taskElement.isLeaf()) { for (TaskElement each : taskElement.getChildren()) { dontPoseAsTransient(each); @@ -150,14 +150,17 @@ public class SaveCommand implements ISaveCommand { } } - private void derivedDontPoseAsTransient( + private void dontPoseAsTransient( Set> resourceAllocations) { for (ResourceAllocation each : resourceAllocations) { + each.dontPoseAsTransientObjectAnymore(); + for (DayAssignment eachAssignment : each.getAssignments()) { + eachAssignment.dontPoseAsTransientObjectAnymore(); + } for (DerivedAllocation eachDerived : each.getDerivedAllocations()) { eachDerived.dontPoseAsTransientObjectAnymore(); - List assignments = eachDerived - .getAssignments(); - for (DerivedDayAssignment eachAssignment : assignments) { + for (DerivedDayAssignment eachAssignment : eachDerived + .getAssignments()) { eachAssignment.dontPoseAsTransientObjectAnymore(); } }