public void actionPerformed(ActionEvent e) { Object source = e.getSource(); // Predetermine which method to call so that // we don't traverse if statements for each iteration. int idx = -1; if (source == _next) { idx = 0; } else if (source == _back) { idx = 1; } else if (source == _cancel) { idx = 2; } else if (source == _finish) { idx = 3; } Iterator it = _listeners.iterator(); while (it.hasNext()) { NavigatorListener l = (NavigatorListener) it.next(); switch (idx) { case 0: l.nextStep(); break; case 1: l.backStep(); break; case 2: l.cancel(); break; case 3: l.finish(); break; } } }
public void valueChanged(TreeSelectionEvent e) { Object obj = e.getPath().getLastPathComponent(); if (obj instanceof SoapUITreeNode) { SoapUITreeNode treeNode = (SoapUITreeNode) obj; if (!listeners.isEmpty()) { TreePath newPath = e.getNewLeadSelectionPath(); NavigatorListener[] array = listeners.toArray(new NavigatorListener[listeners.size()]); for (NavigatorListener listener : array) { listener.nodeSelected(newPath == null ? null : treeNode); } } } }