Alona Kaplan has uploaded a new change for review.

Change subject: engine: refreshing host devices on engine startup
......................................................................

engine: refreshing host devices on engine startup

Change-Id: I69745e4e4860681252a06a494a5d2c7bd2ce1153
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/hostdev/HostDeviceManager.java
2 files changed, 42 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/93/39893/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
index d83e9ad..d75100a 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
@@ -12,6 +12,7 @@
 import org.ovirt.engine.core.bll.aaa.SessionDataContainer;
 import org.ovirt.engine.core.bll.dwh.DwhHeartBeat;
 import org.ovirt.engine.core.bll.gluster.GlusterJobsManager;
+import org.ovirt.engine.core.bll.hostdev.HostDeviceManager;
 import org.ovirt.engine.core.bll.job.ExecutionHandler;
 import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
 import org.ovirt.engine.core.bll.pm.PmHealthCheckManager;
@@ -46,6 +47,9 @@
 
     @Inject
     private PmHealthCheckManager pmHealthCheckManager;
+
+    @Inject
+    private HostDeviceManager hostDeviceManager;
 
     /**
      * This method is called upon the bean creation as part
@@ -106,6 +110,8 @@
 
             
SessionDataContainer.getInstance().cleanupEngineSessionsOnStartup();
 
+            hostDeviceManager.init();
+
             new DwhHeartBeat().init();
 
         } catch (Exception ex) {
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/hostdev/HostDeviceManager.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/hostdev/HostDeviceManager.java
new file mode 100644
index 0000000..37c20f9
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/hostdev/HostDeviceManager.java
@@ -0,0 +1,36 @@
+package org.ovirt.engine.core.bll.hostdev;
+
+import java.util.ArrayList;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+
+import org.ovirt.engine.core.bll.interfaces.BackendInternal;
+import org.ovirt.engine.core.common.action.VdcActionParametersBase;
+import org.ovirt.engine.core.common.action.VdcActionType;
+import org.ovirt.engine.core.common.action.VdsActionParameters;
+import org.ovirt.engine.core.common.businessentities.VDS;
+import org.ovirt.engine.core.common.businessentities.VDSStatus;
+import org.ovirt.engine.core.dao.VdsDAO;
+
+@ApplicationScoped
+public class HostDeviceManager {
+
+    @Inject
+    private VdsDAO vdsDao;
+
+    @Inject
+    private BackendInternal backend;
+
+    public void init() {
+        ArrayList<VdcActionParametersBase> parameters = new ArrayList<>();
+        for (VDS vds : vdsDao.getAll()) {
+            // It is sufficient to refresh only the devices of 'UP' hosts 
since other hosts
+            // will have their devices refreshed in InitVdsOnUpCommand
+            if (vds.getStatus().equals(VDSStatus.Up)) {
+                parameters.add(new VdsActionParameters(vds.getId()));
+            }
+        }
+        backend.runInternalMultipleActions(VdcActionType.RefreshHostDevices, 
parameters);
+    }
+}


-- 
To view, visit https://gerrit.ovirt.org/39893
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I69745e4e4860681252a06a494a5d2c7bd2ce1153
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alona Kaplan <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to