Alona Kaplan has uploaded a new change for review.

Change subject: engine: Adding getAllVfsConfigByHostId to vfsConfig dao
......................................................................

engine: Adding getAllVfsConfigByHostId to vfsConfig dao

Change-Id: I9cf46155cd86f02c6a77f11f6a46f03fd5171838
Signed-off-by: Alona Kaplan <alkap...@redhat.com>
---
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDao.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoDbFacadeImpl.java
M 
backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoTest.java
M packaging/dbscripts/network_sp.sql
4 files changed, 50 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/02/36202/1

diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDao.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDao.java
index dc2d065..1e01fac 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDao.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDao.java
@@ -1,11 +1,26 @@
 package org.ovirt.engine.core.dao.network;
 
+import java.util.List;
+
 import org.ovirt.engine.core.common.businessentities.network.HostNicVfsConfig;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.dao.GenericDao;
 
 public interface HostNicVfsConfigDao extends GenericDao<HostNicVfsConfig, 
Guid> {
     /**
+     * Retrieves a list of all the vfsConfig on this host.
+     * Notice: just nics which are SR-IOV enabled have vfsConfig.
+     *
+     * @param vfsConfigId
+     *            host nic vfs config id
+     *        networkId
+     *            network id
+     * @return list of all the vfsConfig on this host
+     *
+     */
+    List<HostNicVfsConfig> getAllVfsConfigByHostId(Guid hostId);
+
+    /**
      * Attaches a network to the allowed network list of the specified vfs 
config
      *
      * @param vfsConfigId
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoDbFacadeImpl.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoDbFacadeImpl.java
index dc0298e..022ba56 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoDbFacadeImpl.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoDbFacadeImpl.java
@@ -113,6 +113,14 @@
         return parameterSource;
     }
 
+    @Override
+    public List<HostNicVfsConfig> getAllVfsConfigByHostId(Guid hostId) {
+        return getCallsHandler().executeReadList("GetAllVfsConfigByHostId",
+                createEntityRowMapper(),
+                getCustomMapSqlParameterSource()
+                .addValue("host_id", hostId));
+    }
+
     // VfsConfigNetworks
 
     Set<Guid> getNetworksByVfsConfigId(Guid vfsConfigId) {
diff --git 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoTest.java
 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoTest.java
index 003b90a..9be983e 100644
--- 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoTest.java
+++ 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/HostNicVfsConfigDaoTest.java
@@ -33,6 +33,9 @@
         EXPECTED_GUIDS = Collections.unmodifiableMap(tmpMap);
     }
 
+    private static final Guid HOST_ID = new 
Guid("afce7a39-8e8c-4819-ba9c-796d316592e6");
+    private static final Guid HOST_WITH_NO_VFS_CONFIGS_ID = new 
Guid("afce7a39-8e8c-4819-ba9c-796d316592e8");
+
     @Override
     public void setUp() throws Exception {
         super.setUp();
@@ -328,4 +331,16 @@
         vfsConfig = 
dao.get(FixturesTool.HOST_NIC_VFS_CONFIG_NOT_ALL_NETWORKS_ALLOWED_2);
         checkLabels(vfsConfig, 2);
     }
+
+    @Test
+    public void testGetAllVfsConfigByHostId() {
+        List<HostNicVfsConfig> vfsConfigs = 
dao.getAllVfsConfigByHostId(HOST_ID);
+        assertEquals(vfsConfigs.size(), 2);
+    }
+
+    @Test
+    public void testGetAllVfsConfigByHostIdWithNoVfsConfigs() {
+        List<HostNicVfsConfig> vfsConfigs = 
dao.getAllVfsConfigByHostId(HOST_WITH_NO_VFS_CONFIGS_ID);
+        assertEquals(vfsConfigs.size(), 0);
+    }
 }
diff --git a/packaging/dbscripts/network_sp.sql 
b/packaging/dbscripts/network_sp.sql
index 6ef94f4..b5a8964 100644
--- a/packaging/dbscripts/network_sp.sql
+++ b/packaging/dbscripts/network_sp.sql
@@ -1374,6 +1374,18 @@
 END; $procedure$
 LANGUAGE plpgsql;
 
+Create or replace FUNCTION GetAllVfsConfigByHostId(v_host_id UUID)
+RETURNS SETOF host_nic_vfs_config STABLE
+   AS $procedure$
+BEGIN
+   RETURN QUERY SELECT host_nic_vfs_config.*
+   FROM host_nic_vfs_config
+   INNER JOIN vds_interface
+   ON host_nic_vfs_config.nic_id = vds_interface.id
+   WHERE vds_interface.vds_id = v_host_id;
+END; $procedure$
+LANGUAGE plpgsql;
+
 ----------------------------------------------------------------------
 --  vfsConfigNetworks
 ----------------------------------------------------------------------


-- 
To view, visit http://gerrit.ovirt.org/36202
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9cf46155cd86f02c6a77f11f6a46f03fd5171838
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alona Kaplan <alkap...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to