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
