changeset 140:84e1f8e3f8a6

Use view action support in main view/controller. Part 2.
author Roman Kennke <rkennke@redhat.com>
date Fri, 23 Mar 2012 22:39:27 +0100
parents 09f0c7f7d73a
children d13c85f93de6
files client/src/main/java/com/redhat/thermostat/client/MainView.java client/src/main/java/com/redhat/thermostat/client/MainWindowControllerImpl.java client/src/main/java/com/redhat/thermostat/client/ui/MainWindow.java client/src/test/java/com/redhat/thermostat/client/MainWindowControllerImplTest.java client/src/test/java/com/redhat/thermostat/client/ui/MainWindowTest.java
diffstat 5 files changed, 35 insertions(+), 38 deletions(-) [+]
line wrap: on
line diff
--- a/client/src/main/java/com/redhat/thermostat/client/MainView.java	Fri Mar 23 22:00:50 2012 +0100
+++ b/client/src/main/java/com/redhat/thermostat/client/MainView.java	Fri Mar 23 22:39:27 2012 +0100
@@ -36,6 +36,8 @@
 
 package com.redhat.thermostat.client;
 
+import com.redhat.thermostat.common.ActionListener;
+
 
 public interface MainView {
 
@@ -44,7 +46,7 @@
         SHUTDOWN
     }
 
-    void addViewActionListener(ViewActionListener<Action> capture);
+    void addActionListener(ActionListener<Action> capture);
 
     void updateTree(String eq, HostsVMsLoader any);
 
--- a/client/src/main/java/com/redhat/thermostat/client/MainWindowControllerImpl.java	Fri Mar 23 22:00:50 2012 +0100
+++ b/client/src/main/java/com/redhat/thermostat/client/MainWindowControllerImpl.java	Fri Mar 23 22:39:27 2012 +0100
@@ -36,8 +36,6 @@
 
 package com.redhat.thermostat.client;
 
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
@@ -51,6 +49,8 @@
 import com.mongodb.DBCursor;
 import com.mongodb.DBObject;
 import com.redhat.thermostat.client.appctx.ApplicationContext;
+import com.redhat.thermostat.common.ActionEvent;
+import com.redhat.thermostat.common.ActionListener;
 import com.redhat.thermostat.common.Timer;
 import com.redhat.thermostat.common.dao.HostRef;
 import com.redhat.thermostat.common.dao.VmRef;
@@ -151,10 +151,10 @@
 
     private void initView(MainView mainView) {
         this.view = mainView;
-        mainView.addViewActionListener(new ViewActionListener<MainView.Action>() {
+        mainView.addActionListener(new ActionListener<MainView.Action>() {
 
             @Override
-            public void viewActionPerformed(ViewActionEvent<MainView.Action> evt) {
+            public void actionPerformed(ActionEvent<MainView.Action> evt) {
                 MainView.Action action = evt.getActionId();
                 switch (action) {
                 case HOST_VM_TREE_FILTER:
--- a/client/src/main/java/com/redhat/thermostat/client/ui/MainWindow.java	Fri Mar 23 22:00:50 2012 +0100
+++ b/client/src/main/java/com/redhat/thermostat/client/ui/MainWindow.java	Fri Mar 23 22:39:27 2012 +0100
@@ -43,14 +43,10 @@
 import java.awt.Component;
 import java.awt.Dimension;
 import java.awt.Insets;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
 import java.awt.event.InputEvent;
 import java.awt.event.KeyEvent;
 import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;
-import java.beans.PropertyChangeListener;
-import java.beans.PropertyChangeSupport;
 import java.io.PrintStream;
 import java.util.Collection;
 import java.util.Collections;
@@ -92,9 +88,9 @@
 import com.redhat.thermostat.client.HostsVMsLoader;
 import com.redhat.thermostat.client.MainView;
 import com.redhat.thermostat.client.UiFacadeFactory;
-import com.redhat.thermostat.client.ViewActionListener;
-import com.redhat.thermostat.client.ViewActionSupport;
 import com.redhat.thermostat.client.locale.LocaleResources;
+import com.redhat.thermostat.common.ActionListener;
+import com.redhat.thermostat.common.ActionNotifier;
 import com.redhat.thermostat.common.dao.HostRef;
 import com.redhat.thermostat.common.dao.Ref;
 import com.redhat.thermostat.common.dao.VmRef;
@@ -229,7 +225,7 @@
 
     private ApplicationInfo appInfo; 
 
-    private ViewActionSupport<Action> actionSupport = new ViewActionSupport<>(this);
+    private ActionNotifier<Action> actionNotifier = new ActionNotifier<>(this);
 
     private final DefaultMutableTreeNode publishedRoot = 
             new DefaultMutableTreeNode(localize(LocaleResources.MAIN_WINDOW_TREE_ROOT_NAME));
@@ -273,9 +269,9 @@
         mainMenuBar.add(fileMenu);
 
         JMenuItem fileConnectMenu = new JMenuItem(localize(LocaleResources.MENU_FILE_CONNECT));
-        fileConnectMenu.addActionListener(new ActionListener() {
+        fileConnectMenu.addActionListener(new java.awt.event.ActionListener() {
             @Override
-            public void actionPerformed(ActionEvent e) {
+            public void actionPerformed(java.awt.event.ActionEvent e) {
                 // TODO present a connection dialog
             }
         });
@@ -301,9 +297,9 @@
         mainMenuBar.add(helpMenu);
 
         JMenuItem helpAboutMenu = new JMenuItem(localize(LocaleResources.MENU_HELP_ABOUT));
-        helpAboutMenu.addActionListener(new ActionListener() {
+        helpAboutMenu.addActionListener(new java.awt.event.ActionListener() {
             @Override
-            public void actionPerformed(ActionEvent e) {
+            public void actionPerformed(java.awt.event.ActionEvent e) {
                 AboutDialog aboutDialog = new AboutDialog(appInfo);
                 aboutDialog.setModal(true);
                 aboutDialog.pack();
@@ -403,7 +399,7 @@
         return result;
     }
 
-    public class ShutdownClient extends WindowAdapter implements ActionListener {
+    public class ShutdownClient extends WindowAdapter implements java.awt.event.ActionListener {
 
         @Override
         public void windowClosing(WindowEvent e) {
@@ -411,7 +407,7 @@
         }
 
         @Override
-        public void actionPerformed(ActionEvent e) {
+        public void actionPerformed(java.awt.event.ActionEvent e) {
             shutdown();
         }
 
@@ -503,16 +499,16 @@
         }
     }
 
-    public void addViewActionListener(ViewActionListener<Action> l) {
-        actionSupport.addViewActionListener(l);
+    public void addActionListener(ActionListener<Action> l) {
+        actionNotifier.addActionListener(l);
     }
 
-    public void removeViewActionListener(ViewActionListener<Action> l) {
-        actionSupport.removeViewActionListener(l);
+    public void removeViewActionListener(ActionListener<Action> l) {
+        actionNotifier.removeActionListener(l);
     }
 
     private void fireViewAction(Action action) {
-        actionSupport.fireViewAction(action);
+        actionNotifier.fireAction(action);
     }
 
     public void updateTree(String filter, HostsVMsLoader hostsVMsLoader) {
--- a/client/src/test/java/com/redhat/thermostat/client/MainWindowControllerImplTest.java	Fri Mar 23 22:00:50 2012 +0100
+++ b/client/src/test/java/com/redhat/thermostat/client/MainWindowControllerImplTest.java	Fri Mar 23 22:39:27 2012 +0100
@@ -43,9 +43,6 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
-
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -54,12 +51,14 @@
 import com.mongodb.DB;
 import com.redhat.thermostat.client.appctx.ApplicationContext;
 import com.redhat.thermostat.client.appctx.ApplicationContextUtil;
+import com.redhat.thermostat.common.ActionEvent;
+import com.redhat.thermostat.common.ActionListener;
 import com.redhat.thermostat.common.Timer;
 import com.redhat.thermostat.common.TimerFactory;
 
 public class MainWindowControllerImplTest {
 
-    private ViewActionListener<MainView.Action> l;
+    private ActionListener<MainView.Action> l;
 
     private MainWindowControllerImpl controller;
 
@@ -77,8 +76,8 @@
 
         DB db = mock(DB.class);
         view = mock(MainView.class);
-        ArgumentCaptor<ViewActionListener> grabListener = ArgumentCaptor.forClass(ViewActionListener.class);
-        doNothing().when(view).addViewActionListener(grabListener.capture());
+        ArgumentCaptor<ActionListener> grabListener = ArgumentCaptor.forClass(ActionListener.class);
+        doNothing().when(view).addActionListener(grabListener.capture());
         controller = new MainWindowControllerImpl(db, view);
         l = grabListener.getValue();
     }
@@ -94,7 +93,7 @@
     @Test
     public void verifyThatShutdownEventStopsController() {
 
-        l.viewActionPerformed(new ViewActionEvent<MainView.Action>(view, MainView.Action.SHUTDOWN));
+        l.actionPerformed(new ActionEvent<MainView.Action>(view, MainView.Action.SHUTDOWN));
 
         verify(mainWindowTimer).stop();
 
@@ -105,7 +104,7 @@
 
         when(view.getHostVmTreeFilter()).thenReturn("test");
 
-        l.viewActionPerformed(new ViewActionEvent<MainView.Action>(view, MainView.Action.HOST_VM_TREE_FILTER));
+        l.actionPerformed(new ActionEvent<MainView.Action>(view, MainView.Action.HOST_VM_TREE_FILTER));
 
         verify(view).updateTree(eq("test"), any(HostsVMsLoader.class));
 
--- a/client/src/test/java/com/redhat/thermostat/client/ui/MainWindowTest.java	Fri Mar 23 22:00:50 2012 +0100
+++ b/client/src/test/java/com/redhat/thermostat/client/ui/MainWindowTest.java	Fri Mar 23 22:39:27 2012 +0100
@@ -60,8 +60,8 @@
 import com.redhat.thermostat.client.MainView;
 import com.redhat.thermostat.client.SummaryPanelFacade;
 import com.redhat.thermostat.client.UiFacadeFactory;
-import com.redhat.thermostat.client.ViewActionEvent;
-import com.redhat.thermostat.client.ViewActionListener;
+import com.redhat.thermostat.common.ActionEvent;
+import com.redhat.thermostat.common.ActionListener;
 import com.redhat.thermostat.test.GUITest;
 
 public class MainWindowTest {
@@ -92,7 +92,7 @@
 
     private FrameFixture frameFixture;
     private MainWindow window;
-    private ViewActionListener<MainView.Action> l;
+    private ActionListener<MainView.Action> l;
 
     @Before
     public void setUp() {
@@ -105,8 +105,8 @@
         when(uiFacadeFactory.getSummaryPanel()).thenReturn(summaryPanelFacade);
 
         window = new MainWindow(uiFacadeFactory);
-        l = mock(ViewActionListener.class);
-        window.addViewActionListener(l);
+        l = mock(ActionListener.class);
+        window.addActionListener(l);
 
         frameFixture = new FrameFixture(window);
     }
@@ -126,7 +126,7 @@
         JTextComponentFixture hostVMTreeFilterField = frameFixture.textBox("hostVMTreeFilter");
         hostVMTreeFilterField.enterText("test");
 
-        verify(l, times(4)).viewActionPerformed(new ViewActionEvent<MainView.Action>(window, MainView.Action.HOST_VM_TREE_FILTER));
+        verify(l, times(4)).actionPerformed(new ActionEvent<MainView.Action>(window, MainView.Action.HOST_VM_TREE_FILTER));
     }
 
     @Category(GUITest.class)
@@ -137,7 +137,7 @@
 
         frameFixture.close();
         frameFixture.requireNotVisible();
-        verify(l).viewActionPerformed(new ViewActionEvent<MainView.Action>(window, MainView.Action.SHUTDOWN));
+        verify(l).actionPerformed(new ActionEvent<MainView.Action>(window, MainView.Action.SHUTDOWN));
     }
 
     @Category(GUITest.class)