Moti Asayag has uploaded a new change for review.

Change subject: engine: Modify network-not-used-by-vms validation
......................................................................

engine: Modify network-not-used-by-vms validation

The validation was changed so its output will contains a list
of VM names that use the network.

Change-Id: Ie522e4798d89d71ac7056c6b31a87baf095be342
Signed-off-by: Moti Asayag <[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, 13 insertions(+), 12 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/50/10750/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 8d95b74..98c0193 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
@@ -11,7 +11,7 @@
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
 import org.ovirt.engine.core.common.businessentities.VDS;
-import org.ovirt.engine.core.common.businessentities.VmStatic;
+import org.ovirt.engine.core.common.businessentities.VM;
 import org.ovirt.engine.core.common.businessentities.VmTemplate;
 import org.ovirt.engine.core.common.businessentities.network.Network;
 import org.ovirt.engine.core.common.businessentities.network.NetworkCluster;
@@ -114,16 +114,17 @@
                 : ValidationResult.VALID;
     }
 
-    protected ValidationResult networkNotUsedByVms() {
-        String networkName = getNetworkName();
-        for (NetworkCluster clusterAttachment : getClusterAttachments()) {
-            List<VmStatic> vms =
-                    
getVmStaticDAO().getAllByGroupAndNetworkName(clusterAttachment.getClusterId(), 
networkName);
-            if (vms.size() > 0) {
-                return new 
ValidationResult(VdcBllMessages.NETWORK_INTERFACE_IN_USE_BY_VM);
-            }
+    protected ValidationResult networkNotUsedByVms(final Network network) {
+        List<VM> vms = getVmDAO().getAllForNetwork(network.getId());
+        if (vms.isEmpty()) {
+            return ValidationResult.VALID;
         }
-        return ValidationResult.VALID;
+
+        List<String> replacements =
+                
Arrays.asList(ReplacementUtils.replaceWithNameable("ENTITIES_USING_NETWORK", 
vms));
+        replacements.add(VdcBllMessages.VAR__TYPE__VMS.name());
+        return new 
ValidationResult(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_IN_USE,
+                replacements.toArray(new String[replacements.size()]));
     }
 
     protected List<NetworkCluster> getClusterAttachments() {
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 6b7f6f6..26be15d 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
@@ -33,7 +33,7 @@
     protected boolean canDoAction() {
         return validate(networkExists(geRemovedtNetwork()))
                 && validate(notManagementNetwork())
-                && validate(networkNotUsedByVms())
+                && validate(networkNotUsedByVms(geRemovedtNetwork()))
                 && validate(networkNotUsedByTemplates(geRemovedtNetwork()))
                 && validate(networkNotUsedByHosts(geRemovedtNetwork()));
     }
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 721e457..09260f5 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
@@ -50,7 +50,7 @@
                 && validate(networkExists(getOldNetwork()))
                 && validate(notChangingManagementNetworkName())
                 && validate(networkNameNotUsed())
-                && validate(networkNotUsedByVms())
+                && validate(networkNotUsedByVms(getOldNetwork()))
                 && validate(networkNotUsedByHosts(getOldNetwork()));
     }
 


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

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

Reply via email to