ItEr37S18CUCalculoCaminhoCriticoItEr36S20: Created the new method getInitialTasks instead of getTopLevelTasks, because of this method was used for another purpose.

This commit is contained in:
Manuel Rego Casasnovas 2009-12-03 13:06:48 +01:00 committed by Javier Moran Rua
parent a824b47f90
commit 2e45dd0e2a
4 changed files with 49 additions and 34 deletions

View file

@ -292,7 +292,6 @@ public class GanttDiagramGraph implements ICriticalPathCalculable<Task> {
return result;
}
@Override
public List<Task> getTopLevelTasks() {
return Collections.unmodifiableList(topLevelTasks);
}
@ -304,6 +303,22 @@ public class GanttDiagramGraph implements ICriticalPathCalculable<Task> {
parentShrinkingEnforcer.enforce();
}
@Override
public List<Task> getInitialTasks() {
List<Task> tasks = new ArrayList<Task>();
for (Task task : graph.vertexSet()) {
int dependencies = graph.inDegreeOf(task);
if ((dependencies == 0)
|| (dependencies == getNumberOfDependenciesByType(task,
DependencyType.END_END))) {
tasks.add(task);
}
}
return tasks;
}
@Override
public Dependency getDependencyFrom(Task from, Task to) {
return graph.getEdge(from, to);
@ -332,7 +347,7 @@ public class GanttDiagramGraph implements ICriticalPathCalculable<Task> {
}
@Override
public List<Task> getBottomLevelTasks() {
public List<Task> getLatestTasks() {
List<Task> tasks = new ArrayList<Task>();
for (Task task : graph.vertexSet()) {

View file

@ -61,11 +61,11 @@ public class CriticalPathCalculator<T extends ITaskFundamentalProperties> {
}
private InitialNode<T> createBeginningOfProjectNode() {
return new InitialNode<T>(new HashSet<T>(graph.getTopLevelTasks()));
return new InitialNode<T>(new HashSet<T>(graph.getInitialTasks()));
}
private LastNode<T> createEndOfProjectNode() {
return new LastNode<T>(new HashSet<T>(graph.getBottomLevelTasks()));
return new LastNode<T>(new HashSet<T>(graph.getLatestTasks()));
}
private Map<T, Node<T>> createGraphNodes() {

View file

@ -36,9 +36,9 @@ import org.zkoss.ganttz.data.Task;
*/
public interface ICriticalPathCalculable<T extends ITaskFundamentalProperties> {
List<T> getTopLevelTasks();
List<T> getInitialTasks();
List<T> getBottomLevelTasks();
List<T> getLatestTasks();
Set<T> getIncomingTasksFor(T task);

View file

@ -95,9 +95,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(listOfTasks)
expect(diagramGraphExample.getInitialTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getBottomLevelTasks())
expect(diagramGraphExample.getLatestTasks())
.andReturn(listOfTasks).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -133,9 +133,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(listOfTasks)
expect(diagramGraphExample.getInitialTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getBottomLevelTasks())
expect(diagramGraphExample.getLatestTasks())
.andReturn(listOfTasks).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -173,9 +173,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -220,9 +220,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1, task2)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1, subtask2)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -277,9 +277,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1, independentTask)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(task2, independentTask)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -326,9 +326,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1, subtask2)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -376,9 +376,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1, task2)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -430,9 +430,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(finalTask)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -492,9 +492,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1, task2)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(finalTask1, finalTask2)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -567,9 +567,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task4, task6)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(task10, modifiableTask)).anyTimes();
expect(
diagramGraphExample.getDependencyFrom(
@ -644,9 +644,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(task1, task2)).anyTimes();
IDependency<ITaskFundamentalProperties> dependency = createDependency(
@ -689,9 +689,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1, task2)).anyTimes();
IDependency<ITaskFundamentalProperties> dependency = createDependency(
@ -741,9 +741,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1, task2)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1, subtask2)).anyTimes();
IDependency<ITaskFundamentalProperties> dependency = createDependency(
@ -804,9 +804,9 @@ public class CriticalPathCalculatorTest {
expect(diagramGraphExample.getTasks()).andReturn(listOfTasks)
.anyTimes();
expect(diagramGraphExample.getTopLevelTasks()).andReturn(
expect(diagramGraphExample.getInitialTasks()).andReturn(
Arrays.asList(task1)).anyTimes();
expect(diagramGraphExample.getBottomLevelTasks()).andReturn(
expect(diagramGraphExample.getLatestTasks()).andReturn(
Arrays.asList(subtask1, subtask2, subtask3)).anyTimes();
IDependency<ITaskFundamentalProperties> dependency = createDependency(