changeset 667:4e5c8f3164f9

Use CpuStatDAO as a service only Use CpuStatDAO either directly or as a service only. Avoid using it through DaoFactory. Reviewed-by: jerboaa, rkennke, vanaltj Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2012-September/003486.html
author Omair Majid <omajid@redhat.com>
date Wed, 03 Oct 2012 18:05:54 -0400
parents fcc75743c583
children 05b32d4c099c
files client/core/src/main/java/com/redhat/thermostat/client/internal/HostPanelFacadeImpl.java client/core/src/main/java/com/redhat/thermostat/client/internal/Main.java client/core/src/main/java/com/redhat/thermostat/client/internal/UiFacadeFactoryImpl.java client/core/src/main/java/com/redhat/thermostat/client/ui/HostCpuController.java client/core/src/main/java/com/redhat/thermostat/client/ui/HostInformationController.java client/core/src/main/java/com/redhat/thermostat/client/ui/UiFacadeFactory.java client/core/src/test/java/com/redhat/thermostat/client/ui/HostCpuControllerTest.java
diffstat 7 files changed, 20 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/client/core/src/main/java/com/redhat/thermostat/client/internal/HostPanelFacadeImpl.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/main/java/com/redhat/thermostat/client/internal/HostPanelFacadeImpl.java	Wed Oct 03 18:05:54 2012 -0400
@@ -39,6 +39,7 @@
 import com.redhat.thermostat.client.ui.HostCpuController;
 import com.redhat.thermostat.client.ui.HostMemoryController;
 import com.redhat.thermostat.client.ui.HostOverviewController;
+import com.redhat.thermostat.common.dao.CpuStatDAO;
 import com.redhat.thermostat.common.dao.HostInfoDAO;
 import com.redhat.thermostat.common.dao.HostRef;
 
@@ -48,9 +49,9 @@
     private final HostCpuController cpuController;
     private final HostMemoryController memoryController;
 
-    public HostPanelFacadeImpl(HostInfoDAO hostInfoDao, HostRef ref) {
+    public HostPanelFacadeImpl(HostInfoDAO hostInfoDao, CpuStatDAO cpuStatDao, HostRef ref) {
         overviewController = new HostOverviewController(hostInfoDao, ref);
-        cpuController = new HostCpuController(hostInfoDao, ref);
+        cpuController = new HostCpuController(hostInfoDao, cpuStatDao, ref);
         memoryController = new HostMemoryController(hostInfoDao, ref);
     }
 
--- a/client/core/src/main/java/com/redhat/thermostat/client/internal/Main.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/main/java/com/redhat/thermostat/client/internal/Main.java	Wed Oct 03 18:05:54 2012 -0400
@@ -285,6 +285,7 @@
 
                 daoFactory.registerDAOsAndStorageAsOSGiServices();
                 uiFacadeFactory.setHostInfoDao(daoFactory.getHostInfoDAO());
+                uiFacadeFactory.setCpuStatDao(daoFactory.getCpuStatDAO());
 
                 showMainWindow();
             } else if (newStatus == ConnectionStatus.FAILED_TO_CONNECT) {
--- a/client/core/src/main/java/com/redhat/thermostat/client/internal/UiFacadeFactoryImpl.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/main/java/com/redhat/thermostat/client/internal/UiFacadeFactoryImpl.java	Wed Oct 03 18:05:54 2012 -0400
@@ -50,6 +50,7 @@
 import com.redhat.thermostat.client.ui.SummaryController;
 import com.redhat.thermostat.client.ui.UiFacadeFactory;
 import com.redhat.thermostat.client.ui.VmInformationController;
+import com.redhat.thermostat.common.dao.CpuStatDAO;
 import com.redhat.thermostat.common.dao.HostInfoDAO;
 import com.redhat.thermostat.common.dao.HostRef;
 import com.redhat.thermostat.common.dao.VmRef;
@@ -63,6 +64,7 @@
 
     private BundleContext context;
     private HostInfoDAO hostInfoDao;
+    private CpuStatDAO cpuStatDao;
 
     public UiFacadeFactoryImpl(BundleContext context) {
         this.context = context;
@@ -73,6 +75,10 @@
         this.hostInfoDao = hostInfoDao;
     }
 
+    public void setCpuStatDao(CpuStatDAO cpuStatDao) {
+        this.cpuStatDao = cpuStatDao;
+    }
+
     @Override
     public MainWindowController getMainWindow() {
         MainView mainView = new MainWindow();
@@ -88,7 +94,7 @@
 
     @Override
     public HostInformationController getHostController(HostRef ref) {
-        return new HostInformationController(hostInfoDao, ref);
+        return new HostInformationController(hostInfoDao, cpuStatDao, ref);
 
     }
 
--- a/client/core/src/main/java/com/redhat/thermostat/client/ui/HostCpuController.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/main/java/com/redhat/thermostat/client/ui/HostCpuController.java	Wed Oct 03 18:05:54 2012 -0400
@@ -70,13 +70,13 @@
     private int chartsAdded = 0;
     private long lastSeenTimeStamp = Long.MIN_VALUE;
 
-    public HostCpuController(HostInfoDAO hostInfoDao, HostRef ref) {
+    public HostCpuController(HostInfoDAO hostInfoDao, CpuStatDAO cpuStatDAO, HostRef ref) {
         this.ref = ref;
         view = ApplicationContext.getInstance().getViewFactory().getView(HostCpuView.class);
         view.clearCpuUsageData();
         DAOFactory daos = ApplicationContext.getInstance().getDAOFactory();
         this.hostInfoDAO = hostInfoDao;
-        cpuStatDAO = daos.getCpuStatDAO();
+        this.cpuStatDAO = cpuStatDAO;
 
         backgroundUpdateTimer = ApplicationContext.getInstance().getTimerFactory().createTimer();
         backgroundUpdateTimer.setAction(new Runnable() {
--- a/client/core/src/main/java/com/redhat/thermostat/client/ui/HostInformationController.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/main/java/com/redhat/thermostat/client/ui/HostInformationController.java	Wed Oct 03 18:05:54 2012 -0400
@@ -41,6 +41,7 @@
 import com.redhat.thermostat.client.locale.LocaleResources;
 import com.redhat.thermostat.client.osgi.service.BasicView;
 import com.redhat.thermostat.common.appctx.ApplicationContext;
+import com.redhat.thermostat.common.dao.CpuStatDAO;
 import com.redhat.thermostat.common.dao.HostInfoDAO;
 import com.redhat.thermostat.common.dao.HostRef;
 
@@ -52,9 +53,9 @@
 
     private final HostInformationView view;
 
-    public HostInformationController(HostInfoDAO hostInfoDao, HostRef ref) {
+    public HostInformationController(HostInfoDAO hostInfoDao, CpuStatDAO cpuStatDao, HostRef ref) {
         overviewController = new HostOverviewController(hostInfoDao, ref);
-        cpuController = new HostCpuController(hostInfoDao, ref);
+        cpuController = new HostCpuController(hostInfoDao, cpuStatDao, ref);
         memoryController = new HostMemoryController(hostInfoDao ,ref);
 
         view = ApplicationContext.getInstance().getViewFactory().getView(HostInformationView.class);
--- a/client/core/src/main/java/com/redhat/thermostat/client/ui/UiFacadeFactory.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/main/java/com/redhat/thermostat/client/ui/UiFacadeFactory.java	Wed Oct 03 18:05:54 2012 -0400
@@ -40,6 +40,7 @@
 
 import com.redhat.thermostat.client.osgi.service.VMContextAction;
 import com.redhat.thermostat.client.osgi.service.VmInformationService;
+import com.redhat.thermostat.common.dao.CpuStatDAO;
 import com.redhat.thermostat.common.dao.HostInfoDAO;
 import com.redhat.thermostat.common.dao.HostRef;
 import com.redhat.thermostat.common.dao.VmRef;
@@ -48,6 +49,8 @@
 
     void setHostInfoDao(HostInfoDAO hostInfoDao);
 
+    void setCpuStatDao(CpuStatDAO cpuStatDAO);
+
     public MainWindowController getMainWindow();
 
     public SummaryController getSummary();
--- a/client/core/src/test/java/com/redhat/thermostat/client/ui/HostCpuControllerTest.java	Wed Oct 03 18:05:54 2012 -0400
+++ b/client/core/src/test/java/com/redhat/thermostat/client/ui/HostCpuControllerTest.java	Wed Oct 03 18:05:54 2012 -0400
@@ -106,11 +106,6 @@
         CpuStatDAO cpuStatDAO = mock(CpuStatDAO.class);
         when(cpuStatDAO.getLatestCpuStats(any(HostRef.class), anyLong())).thenReturn(Arrays.asList(cpuStat1, cpuStat2));
 
-        DAOFactory daoFactory = mock(DAOFactory.class);
-        when(daoFactory.getCpuStatDAO()).thenReturn(cpuStatDAO);
-
-        ApplicationContext.getInstance().setDAOFactory(daoFactory);
-
         // Set up View
         view = mock(HostCpuView.class);
         ArgumentCaptor<ActionListener> viewArgumentCaptor = ArgumentCaptor.forClass(ActionListener.class);
@@ -121,7 +116,7 @@
         ApplicationContext.getInstance().setViewFactory(viewFactory);
 
         HostRef host = new HostRef("123", "fluffhost");
-        controller = new HostCpuController(hostInfoDAO, host);
+        controller = new HostCpuController(hostInfoDAO, cpuStatDAO, host);
 
         timerAction = actionCaptor.getValue();
         viewListener = viewArgumentCaptor.getValue();