Yevgeny Zaspitsky has uploaded a new change for review. Change subject: engine: add support for the new management field in save&update ......................................................................
engine: add support for the new management field in save&update Add support for Networkcluster entity save and update opertations in its DAO. Change-Id: I0c5ee2075fa593e7d3f96694dce8cd896b4eb449 Signed-off-by: Yevgeny Zaspitsky <[email protected]> --- M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoDbFacadeImpl.java M backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoTest.java M packaging/dbscripts/network_sp.sql 3 files changed, 53 insertions(+), 27 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/99/33499/1 diff --git a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoDbFacadeImpl.java b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoDbFacadeImpl.java index cc57717..476f448 100644 --- a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoDbFacadeImpl.java +++ b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoDbFacadeImpl.java @@ -67,20 +67,19 @@ @Override public void save(NetworkCluster cluster) { - MapSqlParameterSource parameterSource = getCustomMapSqlParameterSource() - .addValue("cluster_id", cluster.getClusterId()) - .addValue("network_id", cluster.getNetworkId()) - .addValue("status", cluster.getStatus()) - .addValue("is_display", cluster.isDisplay()) - .addValue("required", cluster.isRequired()) - .addValue("migration", cluster.isMigration()) - .addValue("management", cluster.isManagement()); + MapSqlParameterSource parameterSource = createAllFieldsParameterSource(cluster); getCallsHandler().executeModification("Insertnetwork_cluster", parameterSource); } @Override public void update(NetworkCluster cluster) { + MapSqlParameterSource parameterSource = createAllFieldsParameterSource(cluster); + + getCallsHandler().executeModification("Updatenetwork_cluster", parameterSource); + } + + private MapSqlParameterSource createAllFieldsParameterSource(NetworkCluster cluster) { MapSqlParameterSource parameterSource = getCustomMapSqlParameterSource() .addValue("cluster_id", cluster.getClusterId()) .addValue("network_id", cluster.getNetworkId()) @@ -89,8 +88,7 @@ .addValue("required", cluster.isRequired()) .addValue("migration", cluster.isMigration()) .addValue("management", cluster.isManagement()); - - getCallsHandler().executeModification("Updatenetwork_cluster", parameterSource); + return parameterSource; } @Override diff --git a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoTest.java b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoTest.java index 04cf0ba..a992cfc 100644 --- a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoTest.java +++ b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/network/NetworkClusterDaoTest.java @@ -42,11 +42,20 @@ network = networkDAO.getByName("engine"); networkNoCluster = networkDAO.getByName("engine3"); + createNewCluster(); + + existingNetworkCluster = dao.getAll().get(0); + } + + private void createNewCluster() { newNetworkCluster = new NetworkCluster(); newNetworkCluster.setNetworkId(networkNoCluster.getId()); newNetworkCluster.setClusterId(freeCluster.getId()); - - existingNetworkCluster = dao.getAll().get(0); + newNetworkCluster.setStatus(NetworkStatus.OPERATIONAL); + newNetworkCluster.setManagement(true); + newNetworkCluster.setRequired(true); + newNetworkCluster.setDisplay(true); + newNetworkCluster.setMigration(true); } /** @@ -134,7 +143,17 @@ List<NetworkCluster> after = dao.getAllForNetwork(networkNoCluster.getId()); assertFalse(after.isEmpty()); - assertEquals(newNetworkCluster, after.get(0)); + assertNetworkClustersEqual(newNetworkCluster, after.get(0)); + } + + private void assertNetworkClustersEqual(NetworkCluster expected, NetworkCluster actual) { + assertEquals(expected.getClusterId(), actual.getClusterId()); + assertEquals(expected.getNetworkId(), actual.getNetworkId()); + assertEquals(expected.getStatus(), actual.getStatus()); + assertEquals(expected.isManagement(), actual.isManagement()); + assertEquals(expected.isRequired(), actual.isRequired()); + assertEquals(expected.isMigration(), actual.isMigration()); + assertEquals(expected.isDisplay(), actual.isDisplay()); } /** @@ -142,20 +161,22 @@ */ @Test public void testUpdate() { + existingNetworkCluster.setRequired(!existingNetworkCluster.isRequired()); + existingNetworkCluster.setDisplay(!existingNetworkCluster.isDisplay()); + existingNetworkCluster.setMigration(!existingNetworkCluster.isMigration()); + existingNetworkCluster.setManagement(!existingNetworkCluster.isManagement()); + existingNetworkCluster.setStatus(invert(existingNetworkCluster.getStatus())); dao.update(existingNetworkCluster); - List<NetworkCluster> result = dao.getAll(); - boolean itworked = false; + NetworkCluster result = dao.get(existingNetworkCluster.getId()); - for (NetworkCluster thiscluster : result) { - itworked |= (thiscluster.getClusterId().equals(existingNetworkCluster.getClusterId())) && - (thiscluster.getNetworkId().equals(existingNetworkCluster.getNetworkId())) && - (thiscluster.getStatus() == existingNetworkCluster.getStatus()); - } + assertNetworkClustersEqual(existingNetworkCluster, result); + } - assertTrue(itworked); + private NetworkStatus invert(NetworkStatus networkStatus) { + return networkStatus == NetworkStatus.OPERATIONAL ? NetworkStatus.NON_OPERATIONAL : NetworkStatus.OPERATIONAL; } /** diff --git a/packaging/dbscripts/network_sp.sql b/packaging/dbscripts/network_sp.sql index 51fb52d..30ad980 100644 --- a/packaging/dbscripts/network_sp.sql +++ b/packaging/dbscripts/network_sp.sql @@ -931,12 +931,13 @@ v_status INTEGER, v_is_display BOOLEAN, v_required BOOLEAN, - v_migration BOOLEAN) + v_migration BOOLEAN, + v_management BOOLEAN) RETURNS VOID AS $procedure$ BEGIN -INSERT INTO network_cluster(cluster_id, network_id, status, is_display, required, migration) - VALUES(v_cluster_id, v_network_id, v_status, v_is_display, v_required, v_migration); +INSERT INTO network_cluster(cluster_id, network_id, status, is_display, required, migration, management) + VALUES(v_cluster_id, v_network_id, v_status, v_is_display, v_required, v_migration, v_management); END; $procedure$ LANGUAGE plpgsql; @@ -948,13 +949,19 @@ v_status INTEGER, v_is_display BOOLEAN, v_required BOOLEAN, - v_migration BOOLEAN) + v_migration BOOLEAN, + v_management BOOLEAN) RETURNS VOID AS $procedure$ BEGIN UPDATE network_cluster - SET status = v_status,is_display = v_is_display, required = v_required, migration = v_migration - WHERE cluster_id = v_cluster_id AND network_id = v_network_id; + SET status = v_status, + is_display = v_is_display, + required = v_required, + migration = v_migration, + management = v_management + WHERE cluster_id = v_cluster_id + AND network_id = v_network_id; END; $procedure$ LANGUAGE plpgsql; -- To view, visit http://gerrit.ovirt.org/33499 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0c5ee2075fa593e7d3f96694dce8cd896b4eb449 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yevgeny Zaspitsky <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
