From 39f8f0c810065bc176f71fabfe0ddd7e7d5ae4ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Wed, 30 Sep 2009 23:30:52 +0200 Subject: [PATCH] ItEr28S15CUVisualizacionModelosPlanificacionItEr21S08: Moving utility method to its own class --- .../java/org/zkoss/ganttz/DependencyList.java | 3 ++- .../java/org/zkoss/ganttz/LeftTasksTree.java | 3 ++- .../org/zkoss/ganttz/LeftTasksTreeRow.java | 7 +++--- .../main/java/org/zkoss/ganttz/Planner.java | 16 +++---------- .../main/java/org/zkoss/ganttz/TaskList.java | 3 ++- .../zkoss/ganttz/util/ComponentsFinder.java | 23 +++++++++++++++++++ 6 files changed, 36 insertions(+), 19 deletions(-) create mode 100644 ganttzk/src/main/java/org/zkoss/ganttz/util/ComponentsFinder.java diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/DependencyList.java b/ganttzk/src/main/java/org/zkoss/ganttz/DependencyList.java index 8a808848b..564a3511d 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/DependencyList.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/DependencyList.java @@ -14,6 +14,7 @@ import org.zkoss.ganttz.timetracker.TimeTracker; import org.zkoss.ganttz.timetracker.TimeTrackerComponent; import org.zkoss.ganttz.timetracker.zoom.IZoomLevelChangedListener; import org.zkoss.ganttz.timetracker.zoom.ZoomLevel; +import org.zkoss.ganttz.util.ComponentsFinder; import org.zkoss.ganttz.util.MenuBuilder; import org.zkoss.ganttz.util.MenuBuilder.ItemAction; import org.zkoss.zk.ui.event.Event; @@ -93,7 +94,7 @@ public class DependencyList extends XulElement implements AfterCompose { private List getDependencyComponents() { List children = getChildren(); - return Planner + return ComponentsFinder .findComponentsOfType(DependencyComponent.class, children); } diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java b/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java index 52007da3e..2f6a6950d 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java @@ -17,6 +17,7 @@ import org.zkoss.ganttz.LeftTasksTreeRow.ILeftTasksTreeNavigator; import org.zkoss.ganttz.data.Position; import org.zkoss.ganttz.data.Task; import org.zkoss.ganttz.data.TaskContainer; +import org.zkoss.ganttz.util.ComponentsFinder; import org.zkoss.ganttz.util.MutableTreeModel; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; @@ -48,7 +49,7 @@ public class LeftTasksTree extends HtmlMacroComponent { "~./ganttz/zul/leftTasksTreeRow.zul", item, null); leftTasksTreeRow.doAfterCompose(row); List rowChildren = row.getChildren(); - List treeCells = Planner.findComponentsOfType( + List treeCells = ComponentsFinder.findComponentsOfType( Treecell.class, rowChildren); for (Treecell cell : treeCells) { cell.setSclass(cssClass); diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTreeRow.java b/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTreeRow.java index 020750c18..930a62107 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTreeRow.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTreeRow.java @@ -10,6 +10,7 @@ import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.zkoss.ganttz.data.Task; +import org.zkoss.ganttz.util.ComponentsFinder; import org.zkoss.util.Locales; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; @@ -247,7 +248,7 @@ public class LeftTasksTreeRow extends GenericForwardComposer { private void findComponents(Treerow row) { List rowChildren = row.getChildren(); - List treeCells = Planner.findComponentsOfType(Treecell.class, + List treeCells = ComponentsFinder.findComponentsOfType(Treecell.class, rowChildren); assert treeCells.size() == 3; findComponentsForNameCell(treeCells.get(0)); @@ -257,12 +258,12 @@ public class LeftTasksTreeRow extends GenericForwardComposer { private static Datebox findDateBoxOfCell(Treecell treecell) { List children = treecell.getChildren(); - return Planner.findComponentsOfType(Datebox.class, children).get(0); + return ComponentsFinder.findComponentsOfType(Datebox.class, children).get(0); } private static Textbox findTextBoxOfCell(Treecell treecell) { List children = treecell.getChildren(); - return Planner.findComponentsOfType(Textbox.class, children).get(0); + return ComponentsFinder.findComponentsOfType(Textbox.class, children).get(0); } private void findComponentsForNameCell(Treecell treecell) { diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java b/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java index 236b8b892..efeed4b32 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/Planner.java @@ -13,6 +13,7 @@ import org.zkoss.ganttz.data.Task; import org.zkoss.ganttz.extensions.ICommand; import org.zkoss.ganttz.extensions.ICommandOnTask; import org.zkoss.ganttz.extensions.IContext; +import org.zkoss.ganttz.util.ComponentsFinder; import org.zkoss.ganttz.util.OnZKDesktopRegistry; import org.zkoss.ganttz.util.script.IScriptsRegister; import org.zkoss.zk.ui.Executions; @@ -49,18 +50,7 @@ public class Planner extends XulElement { if (ganttPanel == null) return null; List children = ganttPanel.getChildren(); - return Planner.findComponentsOfType(TaskList.class, children).get(0); - } - - public static List findComponentsOfType(Class type, - List children) { - ArrayList result = new ArrayList(); - for (Object child : children) { - if (type.isInstance(child)) { - result.add(type.cast(child)); - } - } - return result; + return ComponentsFinder.findComponentsOfType(TaskList.class, children).get(0); } public String getContextPath() { @@ -71,7 +61,7 @@ public class Planner extends XulElement { if (ganttPanel == null) return null; List children = ganttPanel.getChildren(); - List found = findComponentsOfType(DependencyList.class, + List found = ComponentsFinder.findComponentsOfType(DependencyList.class, children); if (found.isEmpty()) return null; diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java index 0cded05b9..363505d1d 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskList.java @@ -15,6 +15,7 @@ import org.zkoss.ganttz.timetracker.TimeTracker; import org.zkoss.ganttz.timetracker.TimeTrackerComponent; import org.zkoss.ganttz.timetracker.zoom.IZoomLevelChangedListener; import org.zkoss.ganttz.timetracker.zoom.ZoomLevel; +import org.zkoss.ganttz.util.ComponentsFinder; import org.zkoss.ganttz.util.MenuBuilder; import org.zkoss.ganttz.util.MenuBuilder.ItemAction; import org.zkoss.zk.au.out.AuInvoke; @@ -69,7 +70,7 @@ public class TaskList extends XulElement implements AfterCompose { public List asDependencyComponents( Collection dependencies) { List children = getChildren(); - List taskComponents = Planner.findComponentsOfType( + List taskComponents = ComponentsFinder.findComponentsOfType( TaskComponent.class, children); Map taskComponentByTask = new HashMap(); for (TaskComponent taskComponent : taskComponents) { diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/util/ComponentsFinder.java b/ganttzk/src/main/java/org/zkoss/ganttz/util/ComponentsFinder.java new file mode 100644 index 000000000..991bea014 --- /dev/null +++ b/ganttzk/src/main/java/org/zkoss/ganttz/util/ComponentsFinder.java @@ -0,0 +1,23 @@ +package org.zkoss.ganttz.util; + +import java.util.ArrayList; +import java.util.List; + +/** + * Utility methods to find components + * @author Óscar González Fernández + */ +public class ComponentsFinder { + + public static List findComponentsOfType(Class type, + List children) { + ArrayList result = new ArrayList(); + for (Object child : children) { + if (type.isInstance(child)) { + result.add(type.cast(child)); + } + } + return result; + } + +}