Yevgeny Zaspitsky has uploaded a new change for review.

Change subject: engine: add getManagementNetwork to NetworkDao
......................................................................

engine: add getManagementNetwork to NetworkDao

getManagementNetwork method was added to NetworkDao
Implementation, test and SP were added too.

Change-Id: I6af5a554ed743ff748b5c941f77a0b217761bd5b
Signed-off-by: Yevgeny Zaspitsky <yzasp...@redhat.com>
---
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDao.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDaoDbFacadeImpl.java
M 
backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkDaoTest.java
M backend/manager/modules/dal/src/test/resources/fixtures.xml
M packaging/dbscripts/network_sp.sql
5 files changed, 71 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/78/32978/1

diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDao.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDao.java
index 9c14c0e..6e1716b 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDao.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDao.java
@@ -136,4 +136,14 @@
      * @return the networks
      */
     List<Network> getAllByLabelForCluster(String label, Guid clusterId);
+
+    /**
+     * Retrieves the management network for the given cluster.
+     *
+     * @param clusterId
+     *            the cluster the network is attached to
+     *
+     * @return the management {@link Network}
+     */
+    Network getManagementNetwork(Guid clusterId);
 }
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDaoDbFacadeImpl.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDaoDbFacadeImpl.java
index 9717b53..8941ea6 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDaoDbFacadeImpl.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkDaoDbFacadeImpl.java
@@ -135,6 +135,13 @@
     }
 
     @Override
+    public Network getManagementNetwork(Guid clusterId) {
+        return getCallsHandler().executeRead("GetManagementNetworkByCluster",
+                NetworkRowMapper.instance,
+                getCustomMapSqlParameterSource().addValue("cluster_id", 
clusterId));
+    }
+
+    @Override
     protected MapSqlParameterSource createIdParameterMapper(Guid id) {
         return getCustomMapSqlParameterSource().addValue("id", id);
     }
diff --git 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkDaoTest.java
 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkDaoTest.java
index 5013aa1..9a98eff 100644
--- 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkDaoTest.java
+++ 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkDaoTest.java
@@ -18,6 +18,8 @@
 import org.ovirt.engine.core.dao.FixturesTool;
 
 public class NetworkDaoTest extends BaseDAOTestCase {
+    private static final Guid MANAGEMENT_NETWORK_ID = new 
Guid("58d5c1c6-cb15-4832-b2a4-1234567890ab");
+
     private NetworkDao dao;
     private Guid cluster;
     private Guid datacenter;
@@ -86,6 +88,17 @@
     }
 
     /**
+     * Ensures that retrieving the management network by cluster works as 
expected.
+     */
+    @Test
+    public void testGetManagementNetworkByCluster() {
+        Network result = dao.getManagementNetwork(cluster);
+
+        assertNotNull(result);
+        assertEquals(MANAGEMENT_NETWORK_ID, result.getId());
+    }
+
+    /**
      * Ensures that all networks are returned.
      */
     @Test
diff --git a/backend/manager/modules/dal/src/test/resources/fixtures.xml 
b/backend/manager/modules/dal/src/test/resources/fixtures.xml
index d254fba..50ad6a9 100644
--- a/backend/manager/modules/dal/src/test/resources/fixtures.xml
+++ b/backend/manager/modules/dal/src/test/resources/fixtures.xml
@@ -1171,6 +1171,23 @@
             <null />
            <value>lbl2</value>
         </row>
+        <row>
+            <value>58d5c1c6-cb15-4832-b2a4-1234567890ab</value>
+            <value>engine</value>
+            <value>The Management Network</value>
+            <null />
+            <null />
+            <null />
+            <null />
+            <null />
+            <value>0</value>
+            <value>6d849ebf-755f-4552-ad09-9a090cda105d</value>
+            <value>0</value>
+            <value>true</value>
+            <null />
+            <null />
+            <null />
+        </row>
     </table>
 
     <table name="qos">
@@ -1525,6 +1542,15 @@
             <value>1</value>
         </row>
         <row>
+            <value>58d5c1c6-cb15-4832-b2a4-1234567890ab</value>
+            <value>b399944a-81ab-4ec5-8266-e19ba7c3c9d1</value>
+            <value>1</value>
+            <value>0</value>
+            <value>0</value>
+            <value>0</value>
+            <value>1</value>
+        </row>
+        <row>
             <value>58d5c1c6-cb15-4832-b2a4-023770607189</value>
             <value>b399944a-81ab-4ec5-8266-e19ba7c3c9d2</value>
             <value>1</value>
diff --git a/packaging/dbscripts/network_sp.sql 
b/packaging/dbscripts/network_sp.sql
index a13d84d..e89ad1a 100644
--- a/packaging/dbscripts/network_sp.sql
+++ b/packaging/dbscripts/network_sp.sql
@@ -174,6 +174,21 @@
 LANGUAGE plpgsql;
 
 
+Create or replace FUNCTION GetManagementNetworkByCluster(v_cluster_id UUID)
+RETURNS SETOF network STABLE
+   AS $procedure$
+BEGIN
+   RETURN QUERY
+   SELECT network.*
+   FROM network
+   WHERE id = (SELECT network_id
+               FROM network_cluster
+               WHERE network_cluster.cluster_id = v_cluster_id
+               AND   network_cluster.management = true);
+
+END; $procedure$
+LANGUAGE plpgsql;
+
 
 Create or replace FUNCTION GetAllNetworkByStoragePoolId(v_id UUID, v_user_id 
uuid, v_is_filtered boolean)
 RETURNS SETOF network STABLE


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

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

Reply via email to