From 6e24103b73ed831e30f0513658298dc31abd4ba7 Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Tue, 20 Nov 2012 17:24:08 +0100 Subject: [PATCH] Bug #1566: Do not launch exception in MonteCarlo view is critical path is only a milestone In the MonteCarlo perspective the critical paths were appear empty and the button to calculate it will be disabled. FEA: ItEr77S04BugFixing --- .../org/libreplan/web/montecarlo/MonteCarloController.java | 3 ++- .../java/org/libreplan/web/montecarlo/MonteCarloModel.java | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloController.java b/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloController.java index ec2ed2a4d..543ca66ff 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloController.java @@ -301,7 +301,8 @@ public class MonteCarloController extends GenericForwardComposer { feedCriticalPathsList(); reloadGridCritialPathTasks(); } - btnRunMonteCarlo.setDisabled(criticalPath.isEmpty()); + btnRunMonteCarlo.setDisabled(monteCarloModel.getCriticalPathNames() + .isEmpty()); } private static class CriticalPathTasksRender implements RowRenderer { diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloModel.java index 6fbc6fd56..4d6cd2c4e 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/montecarlo/MonteCarloModel.java @@ -84,6 +84,9 @@ public class MonteCarloModel implements IMonteCarloModel { return; } this.tasksInCriticalPath = onlyTasks(tasksInCriticalPath); + if (this.tasksInCriticalPath.isEmpty()) { + return; + } Collections.sort(this.tasksInCriticalPath, Task.getByStartDateComparator()); initializeTasksInOrder(getOrderFor(this.tasksInCriticalPath)); initializeOrderNameFor(this.tasksInCriticalPath);