Muli Salem has uploaded a new change for review.

Change subject: core: Adding getVdsInterfaceById
......................................................................

core: Adding getVdsInterfaceById

This patch adds the above stored procedure.

Change-Id: Ib993da030c145e25ec6b6b3f3d607dbd3d3774f1
Signed-off-by: Muli Salem <[email protected]>
---
M backend/manager/dbscripts/network_sp.sql
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAO.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAODbFacadeImpl.java
M 
backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/FixturesTool.java
M 
backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/InterfaceDAOTest.java
5 files changed, 53 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/08/8708/1

diff --git a/backend/manager/dbscripts/network_sp.sql 
b/backend/manager/dbscripts/network_sp.sql
index f0aed2a..fc8f244 100644
--- a/backend/manager/dbscripts/network_sp.sql
+++ b/backend/manager/dbscripts/network_sp.sql
@@ -341,6 +341,17 @@
 LANGUAGE plpgsql;
 
 
+
+Create or replace FUNCTION GetVdsInterfaceById(v_vds_interface_id UUID) 
RETURNS SETOF vds_interface_view
+   AS $procedure$
+BEGIN
+   RETURN QUERY SELECT DISTINCT *
+   FROM vds_interface_view
+   WHERE id = v_vds_interface_id;
+END; $procedure$
+LANGUAGE plpgsql;
+
+
 ----------------------------------------------------------------
 -- [vm_interface] Table
 --
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAO.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAO.java
index c2c0edf..f410b22 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAO.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAO.java
@@ -113,4 +113,13 @@
      * @return the list of VdsNetworkInterfaces
      */
     List<VdsNetworkInterface> getVdsInterfacesByNetworkId(Guid networkId);
+
+    /**
+     * Returns the VdsNetworkInterface with the specified id.
+     *
+     * @param id
+     *            the VdsNetworkInterface Id
+     * @return the VdsNetworkInterfaces
+     */
+    VdsNetworkInterface get(Guid id);
 }
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAODbFacadeImpl.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAODbFacadeImpl.java
index 835a71a..69ba5e6 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAODbFacadeImpl.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/InterfaceDAODbFacadeImpl.java
@@ -169,6 +169,13 @@
                 getCustomMapSqlParameterSource().addValue("network_id", 
networkId));
     }
 
+    @Override
+    public VdsNetworkInterface get(Guid id) {
+        return getCallsHandler().executeRead("GetVdsInterfaceById",
+                vdsNetworkInterfaceRowMapper,
+                getCustomMapSqlParameterSource().addValue("vds_interface_id", 
id));
+    }
+
     private static final ParameterizedRowMapper<VdsNetworkInterface> 
vdsNetworkInterfaceRowMapper =
             new ParameterizedRowMapper<VdsNetworkInterface>() {
                 @Override
diff --git 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/FixturesTool.java
 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/FixturesTool.java
index fcd7356..5d0391a 100644
--- 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/FixturesTool.java
+++ 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/FixturesTool.java
@@ -259,4 +259,15 @@
      * </ul>
      */
     protected static final Guid VM_NETWORK_INTERFACE = new 
Guid("e2817b12-f873-4046-b0da-0098293c14fd");
+
+    /**
+     * Predefined VdsNetworkInterface with the following properties :
+     * <ul>
+     * <li>name: eth0</li>
+     * <li>network_name: engine</li>
+     * <li>vds_id: afce7a39-8e8c-4819-ba9c-796d316592e6</li>
+     * <li>mac_addr: 78:E7:D1:E4:8C:70</li>
+     * </ul>
+     */
+    protected static final Guid VDS_NETWORK_INTERFACE = new 
Guid("ba31682e-6ae7-4f9d-8c6f-04c93acca9db");
 }
diff --git 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/InterfaceDAOTest.java
 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/InterfaceDAOTest.java
index eba722d..1d22e48 100644
--- 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/InterfaceDAOTest.java
+++ 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/InterfaceDAOTest.java
@@ -21,9 +21,9 @@
 
 public class InterfaceDAOTest extends BaseDAOTestCase {
     private static final Guid VDS_ID = new 
Guid("afce7a39-8e8c-4819-ba9c-796d316592e6");
-    private static final Guid VDS_STATISTICS_ID = new 
Guid("ba31682e-6ae7-4f9d-8c6f-04c93acca9db");
 
     private InterfaceDAO dao;
+    private VdsNetworkInterface existingVdsInterface;
     private VdsNetworkInterface newVdsInterface;
     private VdsNetworkStatistics newVdsStatistics;
 
@@ -32,6 +32,7 @@
         super.setUp();
 
         dao = prepareDAO(dbFacade.getInterfaceDao());
+        existingVdsInterface = dao.get(FixturesTool.VDS_NETWORK_INTERFACE);
 
         newVdsInterface = new VdsNetworkInterface();
         newVdsInterface.setStatistics(new VdsNetworkStatistics());
@@ -102,16 +103,16 @@
         // ensure we have records before the test
         boolean found = false;
         for (VdsNetworkInterface iface : before) {
-            found |= (VDS_STATISTICS_ID.equals(iface.getId()));
+            found |= 
(FixturesTool.VDS_NETWORK_INTERFACE.equals(iface.getId()));
         }
         assertTrue(found);
 
-        dao.removeInterfaceFromVds(VDS_STATISTICS_ID);
+        dao.removeInterfaceFromVds(FixturesTool.VDS_NETWORK_INTERFACE);
 
         List<VdsNetworkInterface> after = dao.getAllInterfacesForVds(VDS_ID);
 
         for (VdsNetworkInterface iface : after) {
-            assertNotSame(VDS_STATISTICS_ID, iface.getId());
+            assertNotSame(FixturesTool.VDS_NETWORK_INTERFACE, iface.getId());
         }
     }
 
@@ -128,7 +129,7 @@
             assertNotSame(0.0, iface.getStatistics().getReceiveDropRate());
             assertNotSame(0.0, iface.getStatistics().getReceiveDropRate());
         }
-        dao.removeStatisticsForVds(VDS_STATISTICS_ID);
+        dao.removeStatisticsForVds(FixturesTool.VDS_NETWORK_INTERFACE);
 
         List<VdsNetworkInterface> after = dao.getAllInterfacesForVds(VDS_ID);
 
@@ -278,6 +279,15 @@
         assertCorrectGetManagedInterfaceForVdsResult(result);
     }
 
+    /**
+     * Ensures that get works as expected.
+     */
+    @Test
+    public void testGet() {
+        VdsNetworkInterface result = dao.get(existingVdsInterface.getId());
+        assertEquals(existingVdsInterface, result);
+    }
+
     static private void 
assertCorrectGetManagedInterfaceForVdsResult(VdsNetworkInterface result) {
         assertNotNull(result);
         assertTrue(result.getIsManagement());


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

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

Reply via email to