ItEr37S18CUCalculoCaminhoCriticoItEr36S20: Created the new method getInitialTasks instead of getTopLevelTasks, because of this method was used for another purpose.
This commit is contained in:
parent
a824b47f90
commit
2e45dd0e2a
4 changed files with 49 additions and 34 deletions
|
|
@ -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()) {
|
||||
|
|
|
|||
|
|
@ -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() {
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue