Yevgeny Zaspitsky has uploaded a new change for review.

Change subject: engine: Update UpdateStoragePoolCommand logic
......................................................................

engine: Update UpdateStoragePoolCommand logic

Replace the call to legacy NetworkUtils.isManagementNetwork by the
call to ManagementNetworkUtil class.

Change-Id: Iaf3a156bd711f0f044d256bab8c514c33ca66aa2
Signed-off-by: Yevgeny Zaspitsky <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommand.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommandTest.java
2 files changed, 24 insertions(+), 11 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/22/33822/14

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommand.java
index ff35436..cded3bd 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommand.java
@@ -3,10 +3,13 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import javax.inject.Inject;
+
 import org.apache.commons.lang.StringUtils;
 import org.ovirt.engine.core.bll.NonTransactiveCommandAttribute;
 import org.ovirt.engine.core.bll.RenamedEntityInfoProvider;
 import org.ovirt.engine.core.bll.context.CommandContext;
+import org.ovirt.engine.core.bll.network.cluster.ManagementNetworkUtil;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.bll.utils.VersionSupport;
 import org.ovirt.engine.core.bll.validator.NetworkValidator;
@@ -36,13 +39,16 @@
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogableBase;
 import org.ovirt.engine.core.dao.StorageDomainStaticDAO;
 import org.ovirt.engine.core.dao.network.NetworkDao;
-import org.ovirt.engine.core.utils.NetworkUtils;
 import org.ovirt.engine.core.utils.transaction.TransactionMethod;
 import org.ovirt.engine.core.utils.transaction.TransactionSupport;
 
 @NonTransactiveCommandAttribute
 public class UpdateStoragePoolCommand<T extends 
StoragePoolManagementParameter> extends
         StoragePoolManagementCommandBase<T>  implements 
RenamedEntityInfoProvider{
+
+    @Inject
+    private ManagementNetworkUtil managementNetworkUtil;
+
     public UpdateStoragePoolCommand(T parameters) {
         this(parameters, null);
     }
@@ -188,18 +194,14 @@
             // decreasing of compatibility version is allowed under conditions
             else if 
(getStoragePool().getcompatibility_version().compareTo(getOldStoragePool().getcompatibility_version())
 < 0) {
                 List<Network> networks = 
getNetworkDAO().getAllForDataCenter(getStoragePoolId());
-                if (networks.size() == 1) {
-                    Network network = networks.get(0);
+                for (Network network : networks) {
                     NetworkValidator validator = getNetworkValidator(network);
                     validator.setDataCenter(getStoragePool());
-                    if (!NetworkUtils.isManagementNetwork(network)
-                            || 
!validator.canNetworkCompatabilityBeDecreased()) {
+                    if 
(!(getManagementNetworkUtil().isManagementNetwork(network.getId())
+                            && 
validator.canNetworkCompatabilityBeDecreased())) {
                         returnValue = false;
                         
addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_CANNOT_DECREASE_COMPATIBILITY_VERSION);
                     }
-                } else if (networks.size() > 1) {
-                    returnValue = false;
-                    
addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_CANNOT_DECREASE_COMPATIBILITY_VERSION);
                 }
             } else {
                 // Check all clusters has at least the same compatibility 
version.
@@ -316,4 +318,8 @@
 
         return result;
     }
+
+    ManagementNetworkUtil getManagementNetworkUtil() {
+        return managementNetworkUtil;
+    }
 }
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommandTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommandTest.java
index c418250..4b945a4 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommandTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/UpdateStoragePoolCommandTest.java
@@ -10,6 +10,7 @@
 import static org.mockito.Mockito.when;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
@@ -21,6 +22,7 @@
 import org.mockito.Mock;
 import org.mockito.Mockito;
 import org.mockito.runners.MockitoJUnitRunner;
+import org.ovirt.engine.core.bll.network.cluster.ManagementNetworkUtil;
 import org.ovirt.engine.core.bll.utils.VersionSupport;
 import org.ovirt.engine.core.bll.validator.NetworkValidator;
 import org.ovirt.engine.core.common.action.StoragePoolManagementParameter;
@@ -43,6 +45,8 @@
 
 @RunWith(MockitoJUnitRunner.class)
 public class UpdateStoragePoolCommandTest {
+
+    private static final Guid TEST_MANAGEMENT_NETWORK_ID = Guid.newGuid();
 
     @ClassRule
     public static MockConfigRule mcr = new MockConfigRule();
@@ -68,6 +72,8 @@
     private VdsDAO vdsDao;
     @Mock
     private NetworkDao networkDao;
+    @Mock
+    private ManagementNetworkUtil managementNetworkUtil;
 
     @Before
     public void setUp() {
@@ -94,6 +100,7 @@
         doReturn(vdsGroupDao).when(cmd).getVdsGroupDAO();
         doReturn(vdsDao).when(cmd).getVdsDAO();
         doReturn(networkDao).when(cmd).getNetworkDAO();
+        doReturn(managementNetworkUtil).when(cmd).getManagementNetworkUtil();
         doReturn(validator).when(cmd).createStoragePoolValidator();
 
         mcr.mockConfigValue(ConfigValues.AutoRegistrationDefaultVdsGroupID, 
DEFAULT_VDS_GROUP_ID);
@@ -329,10 +336,10 @@
 
     private void addManagementNetworkToPool() {
         Network network = new Network();
-        network.setName(Config.<String> 
getValue(ConfigValues.DefaultManagementNetwork));
-        List<Network> networks = new ArrayList<>();
-        networks.add(network);
+        network.setId(TEST_MANAGEMENT_NETWORK_ID);
+        List<Network> networks = Collections.singletonList(network);
         
when(networkDao.getAllForDataCenter(any(Guid.class))).thenReturn(networks);
+        
when(managementNetworkUtil.isManagementNetwork(TEST_MANAGEMENT_NETWORK_ID)).thenReturn(true);
     }
 
     private void setupNetworkValidator(boolean valid) {


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iaf3a156bd711f0f044d256bab8c514c33ca66aa2
Gerrit-PatchSet: 14
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Yevgeny Zaspitsky <[email protected]>
Gerrit-Reviewer: Alona Kaplan <[email protected]>
Gerrit-Reviewer: [email protected]
Gerrit-Reviewer: oVirt Jenkins CI Server
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to