Mike Kolesnik has uploaded a new change for review.

Change subject: engine: Refactor CommonNetworkValidation
......................................................................

engine: Refactor CommonNetworkValidation

1. Moved to super class (since only used from inheriting classes of
NetworkCommon).
2. Changed to instance method, which allows:
2.1. Using DAO instance methods.
2.2. Using addCanDoActionMessage method.
3. Renamed method & variables to appropriate names.

Change-Id: Ie55a702efbeaaa852de93411fc5eaebc68ceefff
Signed-off-by: Mike Kolesnik <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/NetworkCommon.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/RemoveNetworkCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java
3 files changed, 19 insertions(+), 24 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/62/10462/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/NetworkCommon.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/NetworkCommon.java
index 3b1e6de..e9ef6a4 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/NetworkCommon.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/NetworkCommon.java
@@ -8,6 +8,7 @@
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
 import org.ovirt.engine.core.common.businessentities.Network;
+import org.ovirt.engine.core.common.businessentities.VDSGroup;
 import org.ovirt.engine.core.common.config.Config;
 import org.ovirt.engine.core.common.config.ConfigValues;
 import org.ovirt.engine.core.compat.Guid;
@@ -102,6 +103,22 @@
         return (vlanId >= 0 && vlanId <= 4095);
     }
 
+    protected boolean networkNotAttachedToCluster(final Network network) {
+        if (network.getstorage_pool_id() != null) {
+            List<VDSGroup> clusters = getVdsGroupDAO().getAllForStoragePool(
+                    network.getstorage_pool_id().getValue());
+            for (VDSGroup cluster : clusters) {
+                Network attachedNetwork = 
getNetworkDAO().getByNameAndCluster(network.getName(), cluster.getId());
+
+                if (attachedNetwork != null) {
+                    
addCanDoActionMessage(VdcBllMessages.NETWORK_CLUSTER_NETWORK_IN_USE);
+                    return false;
+                }
+            }
+        }
+        return true;
+    }
+
     @Override
     public List<PermissionSubject> getPermissionCheckSubjects() {
         Network network = getParameters().getNetwork();
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/RemoveNetworkCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/RemoveNetworkCommand.java
index 53d20fd..7203425 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/RemoveNetworkCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/RemoveNetworkCommand.java
@@ -1,13 +1,9 @@
 package org.ovirt.engine.core.bll.network.dc;
 
-import java.util.List;
 
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
-import org.ovirt.engine.core.common.businessentities.Network;
-import org.ovirt.engine.core.common.businessentities.VDSGroup;
 import org.ovirt.engine.core.dal.VdcBllMessages;
-import org.ovirt.engine.core.dal.dbbroker.DbFacade;
 
 @SuppressWarnings("serial")
 public class RemoveNetworkCommand<T extends AddNetworkStoragePoolParameters> 
extends NetworkCommon<T> {
@@ -29,25 +25,7 @@
 
     @Override
     protected boolean canDoAction() {
-        return CommonNetworkValidation(getParameters().getNetwork(), 
getReturnValue().getCanDoActionMessages());
-    }
-
-    public static boolean CommonNetworkValidation(final Network network, 
java.util.ArrayList<String> canDoActionMessages) {
-        // check that network is not in use by cluster
-        if (network.getstorage_pool_id() != null) {
-            List<VDSGroup> groups = 
DbFacade.getInstance().getVdsGroupDao().getAllForStoragePool(
-                    network.getstorage_pool_id().getValue());
-            for (VDSGroup cluster : groups) {
-                Network removedNetwork =
-                        
DbFacade.getInstance().getNetworkDao().getByNameAndCluster(network.getName(), 
cluster.getId());
-
-                if (removedNetwork != null) {
-                    
canDoActionMessages.add(VdcBllMessages.NETWORK_CLUSTER_NETWORK_IN_USE.toString());
-                    return false;
-                }
-            }
-        }
-        return true;
+        return networkNotAttachedToCluster(getParameters().getNetwork());
     }
 
     @Override
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java
index a59d1e7..09c6625 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java
@@ -116,7 +116,7 @@
             }
         }
 
-        return RemoveNetworkCommand.CommonNetworkValidation(oldNetwork, 
getReturnValue().getCanDoActionMessages());
+        return networkNotAttachedToCluster(oldNetwork);
     }
 
     @Override


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

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

Reply via email to