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
