Arik Hadas has uploaded a new change for review. Change subject: core: lock name of imported vm in base command ......................................................................
core: lock name of imported vm in base command Move the name lock of imported VM to reside in ImportVmCommandBase so all import commands will use it. Change-Id: I59ed68ad2eecd657afc4a5302d14a95bee23729d Signed-off-by: Arik Hadas <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommandBase.java 2 files changed, 21 insertions(+), 17 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/19/38019/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java index b057632..ebb3289 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java @@ -32,8 +32,6 @@ import org.ovirt.engine.core.common.FeatureSupported; import org.ovirt.engine.core.common.VdcObjectType; import org.ovirt.engine.core.common.action.ImportVmParameters; -import org.ovirt.engine.core.common.action.LockProperties; -import org.ovirt.engine.core.common.action.LockProperties.Scope; import org.ovirt.engine.core.common.action.MoveOrCopyImageGroupParameters; import org.ovirt.engine.core.common.action.RemoveMemoryVolumesParameters; import org.ovirt.engine.core.common.action.VdcActionParametersBase; @@ -119,11 +117,6 @@ } @Override - protected LockProperties applyLockProperties(LockProperties lockProperties) { - return lockProperties.withScope(Scope.Command); - } - - @Override protected void init(T parameters) { super.init(parameters); setVmId(parameters.getContainerId()); @@ -167,16 +160,6 @@ LockMessagesMatchUtil.makeLockingPair( LockingGroup.REMOTE_VM, getVmIsBeingImportedMessage())); - } - - @Override - protected Map<String, Pair<String, String>> getExclusiveLocks() { - if (getParameters().getVm() != null && !StringUtils.isBlank(getParameters().getVm().getName())) { - return Collections.singletonMap(getParameters().getVm().getName(), - LockMessagesMatchUtil.makeLockingPair(LockingGroup.VM_NAME, - VdcBllMessages.ACTION_TYPE_FAILED_NAME_ALREADY_USED)); - } - return null; } private String getVmIsBeingImportedMessage() { diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommandBase.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommandBase.java index 4013ec6..77cf659 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommandBase.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommandBase.java @@ -2,6 +2,7 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -13,6 +14,8 @@ import org.ovirt.engine.core.bll.network.vm.VnicProfileHelper; import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.action.ImportVmParameters; +import org.ovirt.engine.core.common.action.LockProperties; +import org.ovirt.engine.core.common.action.LockProperties.Scope; import org.ovirt.engine.core.common.businessentities.DiskImage; import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.VDSGroup; @@ -24,6 +27,9 @@ import org.ovirt.engine.core.common.businessentities.VmTemplate; import org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface; import org.ovirt.engine.core.common.businessentities.network.VmNic; +import org.ovirt.engine.core.common.errors.VdcBllMessages; +import org.ovirt.engine.core.common.locks.LockingGroup; +import org.ovirt.engine.core.common.utils.Pair; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector; import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogableBase; @@ -55,6 +61,21 @@ super(commandId); } + @Override + protected LockProperties applyLockProperties(LockProperties lockProperties) { + return lockProperties.withScope(Scope.Command); + } + + @Override + protected Map<String, Pair<String, String>> getExclusiveLocks() { + if (getParameters().getVm() != null && !StringUtils.isBlank(getParameters().getVm().getName())) { + return Collections.singletonMap(getParameters().getVm().getName(), + LockMessagesMatchUtil.makeLockingPair(LockingGroup.VM_NAME, + VdcBllMessages.ACTION_TYPE_FAILED_NAME_ALREADY_USED)); + } + return null; + } + protected void init(T parameters) { setStoragePoolId(parameters.getStoragePoolId()); imageToDestinationDomainMap = parameters.getImageToDestinationDomainMap(); -- To view, visit http://gerrit.ovirt.org/38019 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I59ed68ad2eecd657afc4a5302d14a95bee23729d Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Arik Hadas <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
