Arik Hadas has uploaded a new change for review. Change subject: webadmin: represent occupied name on import differently ......................................................................
webadmin: represent occupied name on import differently I tried to add a generic field for errors on ImportVmData that will also indicate if the name of the VM we're about to import already exists in the system. However, it is problematic so it is better to add another field for it. Change-Id: I4411e79f7018d5b2c1a8d8ac9d3b0b79de26a4e3 Signed-off-by: Arik Hadas <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmData.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmFromExportDomainModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java 3 files changed, 24 insertions(+), 5 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/40529/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmData.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmData.java index 5f8276e..dc8e782 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmData.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmData.java @@ -14,6 +14,7 @@ private EntityModel<Boolean> collapseSnapshots; private String warning; private String error; + private boolean nameExistsInTheSystem; public ImportVmData(VM vm) { setCollapseSnapshots(new EntityModel<>(true)); @@ -89,4 +90,12 @@ public void setError(String error) { this.error = error; } + + public boolean isNameExistsInTheSystem() { + return nameExistsInTheSystem; + } + + public void setNameExistsInTheSystem(boolean nameExistsInTheSystem) { + this.nameExistsInTheSystem = nameExistsInTheSystem; + } } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmFromExportDomainModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmFromExportDomainModel.java index e8c0fdf..d9b562f 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmFromExportDomainModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ImportVmFromExportDomainModel.java @@ -656,9 +656,7 @@ vmData.getClone().setIsChangable(false); } - if (!vmData.getClone().getEntity() && existingNames.contains(vm.getName())) { - vmData.setError(ConstantsManager.getInstance().getConstants().nameMustBeUniqueInvalidReason()); - } + vmData.setNameExistsInTheSystem(!vmData.getClone().getEntity() && existingNames.contains(vm.getName())); vmDataList.add(vmData); } diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java index 3340816..65c3d3d 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java @@ -39,6 +39,7 @@ import org.ovirt.engine.ui.uicommonweb.models.vms.ImportVmFromExportDomainModel; import org.ovirt.engine.ui.uicommonweb.models.vms.VmAppListModel; import org.ovirt.engine.ui.uicommonweb.models.vms.VmImportGeneralModel; +import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.Event; import org.ovirt.engine.ui.uicompat.IEventListener; import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; @@ -241,7 +242,7 @@ @Override public ImageResource getValue(Object object) { ImportVmData importVmData = ((ImportVmData) object); - if (!importVmData.getClone().getEntity() && importVmData.getError() != null) { + if (!canImportVm(importVmData)) { return resources.errorImage(); } if (importVmData.getWarning() != null) { @@ -253,9 +254,20 @@ @Override public SafeHtml getTooltip(Object object) { ImportVmData importVmData = ((ImportVmData) object); - String problem = !importVmData.getClone().getEntity() && importVmData.getError() != null ? importVmData.getError() : importVmData.getWarning(); + String problem = getErrorOrWarning(importVmData); return problem != null ? SafeHtmlUtils.fromSafeConstant(problem) : null; } + + private String getErrorOrWarning(ImportVmData data) { + if (data.isNameExistsInTheSystem()) { + return ConstantsManager.getInstance().getConstants().nameMustBeUniqueInvalidReason(); + } + return data.getError() != null ? data.getError() : data.getWarning(); + } + + private boolean canImportVm(ImportVmData data) { + return !data.isNameExistsInTheSystem() && data.getError() == null; + } }; table.addColumn(isProblematicImportVmColumn, constants.empty(), "20px"); //$NON-NLS-1$ -- To view, visit https://gerrit.ovirt.org/40529 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I4411e79f7018d5b2c1a8d8ac9d3b0b79de26a4e3 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
