Maor Lipchuk has uploaded a new change for review. Change subject: core: Remove redundant Vds call at Add existingFileStorageDomain ......................................................................
core: Remove redundant Vds call at Add existingFileStorageDomain Remove redundant getStorageDomainsList VDS call. The call was used to know if the Storage Exists in the VDSM, but we can also know that from the next VDS command of getStorageDomainInfo. Changing the test accordingly Change-Id: I2294f83eb204cab44b6a52e7c7a763bf107aaa37 Bug-Url: https://bugzilla.redhat.com/?????? Signed-off-by: Maor Lipchuk <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommand.java M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommandTest.java 2 files changed, 18 insertions(+), 21 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/40/34540/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommand.java index 108171a..d3a0f98 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommand.java @@ -1,7 +1,5 @@ package org.ovirt.engine.core.bll.storage; -import java.util.List; - import org.apache.commons.lang.StringUtils; import org.ovirt.engine.core.bll.Backend; import org.ovirt.engine.core.common.action.StorageDomainManagementParameter; @@ -11,7 +9,6 @@ import org.ovirt.engine.core.common.errors.VdcBllMessages; import org.ovirt.engine.core.common.utils.Pair; import org.ovirt.engine.core.common.vdscommands.HSMGetStorageDomainInfoVDSCommandParameters; -import org.ovirt.engine.core.common.vdscommands.HSMGetStorageDomainsListVDSCommandParameters; import org.ovirt.engine.core.common.vdscommands.VDSCommandType; import org.ovirt.engine.core.compat.Guid; @@ -57,22 +54,14 @@ return failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_ALREADY_EXIST); } - List<Guid> storageIds = executeHSMGetStorageDomainsList( - new HSMGetStorageDomainsListVDSCommandParameters(getVdsId(), Guid.Empty, getStorageDomain() - .getStorageType(), getStorageDomain().getStorageDomainType(), "")); - - if (!storageIds.contains(getStorageDomain().getId())) { - return failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_NOT_EXIST); - } - Pair<StorageDomainStatic, Guid> domainFromIrs = executeHSMGetStorageDomainInfo( new HSMGetStorageDomainInfoVDSCommandParameters(getVdsId(), getStorageDomain().getId())); - return concreteCheckExistingStorageDomain(domainFromIrs); - } + if (domainFromIrs == null) { + return failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_NOT_EXIST); + } - protected List<Guid> executeHSMGetStorageDomainsList(HSMGetStorageDomainsListVDSCommandParameters parameters) { - return (List<Guid>) runVdsCommand(VDSCommandType.HSMGetStorageDomainsList, parameters).getReturnValue(); + return concreteCheckExistingStorageDomain(domainFromIrs); } protected Pair<StorageDomainStatic, Guid> executeHSMGetStorageDomainInfo(HSMGetStorageDomainInfoVDSCommandParameters parameters) { diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommandTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommandTest.java index c9e27f7..e3c53f3 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommandTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddExistingFileStorageDomainCommandTest.java @@ -9,7 +9,6 @@ import static org.ovirt.engine.core.utils.MockConfigRule.mockConfig; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import org.junit.Before; @@ -30,7 +29,6 @@ import org.ovirt.engine.core.common.errors.VdcBllMessages; import org.ovirt.engine.core.common.utils.Pair; import org.ovirt.engine.core.common.vdscommands.HSMGetStorageDomainInfoVDSCommandParameters; -import org.ovirt.engine.core.common.vdscommands.HSMGetStorageDomainsListVDSCommandParameters; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.compat.Version; import org.ovirt.engine.core.dal.dbbroker.DbFacade; @@ -96,8 +94,6 @@ StorageDomainStatic sdStatic = command.getStorageDomain().getStorageStaticData(); doReturn(new Pair<>(sdStatic, sdStatic.getId())).when(command).executeHSMGetStorageDomainInfo( any(HSMGetStorageDomainInfoVDSCommandParameters.class)); - doReturn(Collections.singletonList(sdStatic.getId())).when(command).executeHSMGetStorageDomainsList( - any(HSMGetStorageDomainsListVDSCommandParameters.class)); CanDoActionTestUtils.runAndAssertCanDoActionSuccess(command); } @@ -114,13 +110,25 @@ public void testNonExistingStorageDomain() { when(command.getStorageDomainStaticDAO().get(any(Guid.class))).thenReturn(null); - doReturn(Collections.emptyList()).when(command).executeHSMGetStorageDomainsList( - any(HSMGetStorageDomainsListVDSCommandParameters.class)); + doReturn(null).when(command).executeHSMGetStorageDomainInfo( + any(HSMGetStorageDomainInfoVDSCommandParameters.class)); CanDoActionTestUtils.runAndAssertCanDoActionFailure(command, VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_NOT_EXIST); } + @Test + public void testSwitchStorageDomainType() { + when(command.getStorageDomainStaticDAO().get(any(Guid.class))).thenReturn(null); + + StorageDomainStatic sdStatic = command.getStorageDomain().getStorageStaticData(); + doReturn(new Pair<>(sdStatic, sdStatic.getId())).when(command).executeHSMGetStorageDomainInfo( + any(HSMGetStorageDomainInfoVDSCommandParameters.class)); + + CanDoActionTestUtils.runAndAssertCanDoActionSuccess(command); + } + + private static StorageDomainStatic getStorageDomain() { StorageDomainStatic storageDomain = new StorageDomainStatic(); storageDomain.setStorage(Guid.newGuid().toString()); -- To view, visit http://gerrit.ovirt.org/34540 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2294f83eb204cab44b6a52e7c7a763bf107aaa37 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Maor Lipchuk <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
