📄 findpossibledependeesalgorithmimpl.java
字号:
package net.sourceforge.ganttproject.task.algorithm;import java.util.ArrayList;import net.sourceforge.ganttproject.task.Task;import net.sourceforge.ganttproject.task.TaskContainmentHierarchyFacade;/** * Created by IntelliJ IDEA. User: bard */public abstract class FindPossibleDependeesAlgorithmImpl implements FindPossibleDependeesAlgorithm { private TaskContainmentHierarchyFacade myContainmentFacade; public FindPossibleDependeesAlgorithmImpl() { } public Task[] run(Task dependant) { myContainmentFacade = createContainmentFacade(); ArrayList result = new ArrayList(); Task root = myContainmentFacade.getRootTask(); Task[] nestedTasks = myContainmentFacade.getNestedTasks(root); processTask(nestedTasks, dependant, result); return (Task[]) result.toArray(new Task[0]); } protected abstract TaskContainmentHierarchyFacade createContainmentFacade(); private void processTask(Task[] taskList, Task dependant, ArrayList result) { for (int i = 0; i < taskList.length; i++) { Task next = taskList[i]; if (!next.equals(dependant)) { Task[] nested = myContainmentFacade.getNestedTasks(next); // if (nested.length==0) { result.add(next); // } // else { processTask(nested, dependant, result); // } } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -