Federico Simoncelli has uploaded a new change for review. Change subject: [wip] forntend: add glance storage domain support ......................................................................
[wip] forntend: add glance storage domain support Change-Id: I07274bbc14e52471242935fcf99b510469ec4abe Signed-off-by: Federico Simoncelli <[email protected]> --- M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java M frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Enums.java M frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/Enums.properties M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationResources.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/storage/SubTabStorageIsoPresenter.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainSharedStatusColumn.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainStatusColumn.java M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_de_DE.properties M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_es_ES.properties M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_fr_FR.properties M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_ja_JP.properties M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_pt_BR.properties M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_zh_CN.properties A frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/images/glance_icon.png 16 files changed, 55 insertions(+), 14 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/98/15898/1 diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java index 6223557..7d29817 100644 --- a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java @@ -1030,6 +1030,9 @@ @DefaultStringValue("Cannot remove Storage Domain. Data storage must be formatted after remove.\n-Please verify that Format option is enabled on the Data Domain.") String ERROR_CANNOT_REMOVE_STORAGE_DOMAIN_DO_FORMAT(); + @DefaultStringValue("Cannot manage Storage Domain. The domain is defined externally (e.g. through a provider).") + String ERROR_CANNOT_MANAGE_STORAGE_DOMAIN(); + @DefaultStringValue("Cannot ${action} ${type} while there are Hosts that are not in Maintenance mode.") String ERROR_CANNOT_FORCE_REMOVE_STORAGE_POOL_WITH_VDS_NOT_IN_MAINTENANCE(); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java index 6e6ca8c..8f105fe 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java @@ -186,8 +186,10 @@ getSearchPreviousPageCommand().setIsAvailable(true); } + private EntityModel generalModel; private EntityModel vmBackupModel; private EntityModel templateBackupModel; + private ListModel dcListModel; private ListModel vmListModel; private ListModel templateListModel; private ListModel isoListModel; @@ -210,6 +212,12 @@ { super.initDetailModels(); + generalModel = new StorageGeneralModel(); + generalModel.setIsAvailable(false); + + dcListModel = new StorageDataCenterListModel(); + dcListModel.setIsAvailable(false); + vmBackupModel = new VmBackupModel(); vmBackupModel.setIsAvailable(false); @@ -229,8 +237,8 @@ diskListModel.setIsAvailable(false); ObservableCollection<EntityModel> list = new ObservableCollection<EntityModel>(); - list.add(new StorageGeneralModel()); - list.add(new StorageDataCenterListModel()); + list.add(generalModel); + list.add(dcListModel); list.add(vmBackupModel); list.add(templateBackupModel); list.add(vmListModel); @@ -1062,7 +1070,14 @@ boolean isDataStorage = storage.getStorageDomainType() == StorageDomainType.Data || storage.getStorageDomainType() == StorageDomainType.Master; - boolean isIsoStorage = storage.getStorageDomainType() == StorageDomainType.ISO; + boolean isImageStorage = + storage.getStorageDomainType() == StorageDomainType.Image || + storage.getStorageDomainType() == StorageDomainType.ISO; + boolean isDataCenterAvailable = storage.getStorageType() != StorageType.GLANCE; + boolean isGeneralAvailable = storage.getStorageType() != StorageType.GLANCE; + + generalModel.setIsAvailable(isGeneralAvailable); + dcListModel.setIsAvailable(isDataCenterAvailable); vmBackupModel.setIsAvailable(isBackupStorage); templateBackupModel.setIsAvailable(isBackupStorage); @@ -1071,7 +1086,7 @@ templateListModel.setIsAvailable(isDataStorage); diskListModel.setIsAvailable(isDataStorage); - isoListModel.setIsAvailable(isIsoStorage); + isoListModel.setIsAvailable(isImageStorage); } } @@ -1106,6 +1121,7 @@ getEditCommand().setIsExecutionAllowed(items.size() == 1 && isEditAvailable(item)); getRemoveCommand().setIsExecutionAllowed(items.size() == 1 + && items.get(0).getStorageType() != StorageType.GLANCE && Linq.findAllStorageDomainsBySharedStatus(items, StorageDomainSharedStatus.Unattached).size() == items.size()); getDestroyCommand().setIsExecutionAllowed(item != null && items.size() == 1 diff --git a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Enums.java b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Enums.java index 965e30f..e90e2fb 100644 --- a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Enums.java +++ b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Enums.java @@ -57,6 +57,8 @@ String StorageType___GLUSTERFS(); + String StorageType___GLANCE(); + String StorageType___UNKNOWN(); String StorageFormatType___V1(); @@ -217,6 +219,8 @@ String StorageDomainType___ImportExport(); + String StorageDomainType___Image(); + String VmTemplateStatus___OK(); String VmTemplateStatus___Locked(); @@ -317,6 +321,8 @@ String ProviderType___OPENSTACK_NETWORK(); + String ProviderType___OPENSTACK_IMAGE(); + // Gluster enums String GlusterVolumeType___DISTRIBUTE(); diff --git a/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/Enums.properties b/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/Enums.properties index f498ade..33c25a3 100644 --- a/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/Enums.properties +++ b/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/Enums.properties @@ -26,6 +26,7 @@ StorageType___NFS=NFS StorageType___POSIXFS=POSIX compliant FS StorageType___GLUSTERFS=GlusterFS +StorageType___GLANCE=OpenStack Glance StorageType___UNKNOWN=Unknown StorageFormatType___V1=V1 StorageFormatType___V2=V2 @@ -103,6 +104,7 @@ StorageDomainType___Data=Data StorageDomainType___ISO=ISO StorageDomainType___ImportExport=Export +StorageDomainType___Image=Image VmTemplateStatus___OK=OK VmTemplateStatus___Locked=Locked VmTemplateStatus___Illegal=Illegal @@ -165,3 +167,4 @@ JobExecutionStatus___UNKNOWN=Unknown ProviderType___FOREMAN=Foreman ProviderType___OPENSTACK_NETWORK=Openstack Network +ProviderType___OPENSTACK_IMAGE=Openstack Image diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java index 9b7a6a9..2ebe856 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java @@ -293,7 +293,7 @@ String storageTemplateSubTabLabel(); @DefaultStringValue("Images") - String storageIsoSubTabLabel(); + String storageImagesSubTabLabel(); @DefaultStringValue("Permissions") String storagePermissionSubTabLabel(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationResources.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationResources.java index cc64e66..c468a57 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationResources.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationResources.java @@ -196,6 +196,9 @@ @Source("images/torn_chain.png") ImageResource tornChainImage(); + @Source("images/glance_icon.png") + ImageResource glanceIconImage(); + @Source("images/unconfigured.png") ImageResource unconfiguredImage(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/storage/SubTabStorageIsoPresenter.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/storage/SubTabStorageIsoPresenter.java index 1d57c76..a63be1c 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/storage/SubTabStorageIsoPresenter.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/storage/SubTabStorageIsoPresenter.java @@ -35,7 +35,7 @@ @TabInfo(container = StorageSubTabPanelPresenter.class) static TabData getTabData(ClientGinjector ginjector) { - return new ModelBoundTabData(ginjector.getApplicationConstants().storageIsoSubTabLabel(), 6, + return new ModelBoundTabData(ginjector.getApplicationConstants().storageImagesSubTabLabel(), 6, ginjector.getSubTabStorageIsoModelProvider()); } diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainSharedStatusColumn.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainSharedStatusColumn.java index 4d85a50..a5299be 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainSharedStatusColumn.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainSharedStatusColumn.java @@ -1,6 +1,7 @@ package org.ovirt.engine.ui.webadmin.widget.table.column; import org.ovirt.engine.core.common.businessentities.StorageDomain; +import org.ovirt.engine.core.common.businessentities.StorageType; import com.google.gwt.resources.client.ImageResource; @@ -11,7 +12,11 @@ setEnumTitle(sp.getStorageDomainSharedStatus()); switch (sp.getStorageDomainSharedStatus()) { case Unattached: - return getApplicationResources().tornChainImage(); + if (sp.getStorageType() == StorageType.GLANCE) { + return getApplicationResources().glanceIconImage(); + } else { + return getApplicationResources().tornChainImage(); + } case Active: return getApplicationResources().upImage(); case InActive: diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainStatusColumn.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainStatusColumn.java index dc1c20f..d29dfec 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainStatusColumn.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainStatusColumn.java @@ -1,6 +1,7 @@ package org.ovirt.engine.ui.webadmin.widget.table.column; import org.ovirt.engine.core.common.businessentities.StorageDomain; +import org.ovirt.engine.core.common.businessentities.StorageType; import com.google.gwt.resources.client.ImageResource; @@ -11,7 +12,11 @@ setEnumTitle(sp.getStatus()); switch (sp.getStatus()) { case Unattached: - return getApplicationResources().tornChainImage(); + if (sp.getStorageType() == StorageType.GLANCE) { + return getApplicationResources().glanceIconImage(); + } else { + return getApplicationResources().tornChainImage(); + } case Active: return getApplicationResources().upImage(); case InActive: diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_de_DE.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_de_DE.properties index 67a4357..9a3aaec 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_de_DE.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_de_DE.properties @@ -1051,7 +1051,7 @@ storageIscsiPopupTargetsToLunTabLabel=Targets > LUNs storageIscsiPopupUserAuthLabel=Benutzer Authentifizierung storageIscsiSelectStorageLabel=Speicherdom\u00E4ne ausw\u00E4hlen -storageIsoSubTabLabel=Images +storageImagesSubTabLabel=Images storageLocalStorage=Speicher storageMainTabLabel=Speicher storageNameQuota=Speicher Name diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_es_ES.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_es_ES.properties index da2492f..53604b4 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_es_ES.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_es_ES.properties @@ -1487,7 +1487,7 @@ # auto translated by TM merge storageIscsiSelectStorageLabel=Seleccionar dominio de almacenamiento # auto translated by TM merge -storageIsoSubTabLabel=Im\u00E1genes +storageImagesSubTabLabel=Im\u00E1genes # auto translated by TM merge storageLocalStorage=Almacenamiento # auto translated by TM merge diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_fr_FR.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_fr_FR.properties index 68a814c..e431451 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_fr_FR.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_fr_FR.properties @@ -1606,7 +1606,7 @@ # auto translated by TM merge storageIscsiSelectStorageLabel=S\u00E9lectionner le Domaine de stockage # auto translated by TM merge -storageIsoSubTabLabel=Images +storageImagesSubTabLabel=Images # auto translated by TM merge storageLocalStorage=Stockage # auto translated by TM merge diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_ja_JP.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_ja_JP.properties index 2949348..60dd0cd 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_ja_JP.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_ja_JP.properties @@ -1047,7 +1047,7 @@ storageIscsiPopupTargetsToLunTabLabel=\u30BF\u30FC\u30B2\u30C3\u30C8 > LUN storageIscsiPopupUserAuthLabel=\u30E6\u30FC\u30B6\u30FC\u8A8D\u8A3C\: storageIscsiSelectStorageLabel=\u30B9\u30C8\u30EC\u30FC\u30B8\u30C9\u30E1\u30A4\u30F3\u3092\u9078\u629E -storageIsoSubTabLabel=\u30A4\u30E1\u30FC\u30B8 +storageImagesSubTabLabel=\u30A4\u30E1\u30FC\u30B8 storageLocalStorage=\u30B9\u30C8\u30EC\u30FC\u30B8 storageMainTabLabel=\u30B9\u30C8\u30EC\u30FC\u30B8 storageNameQuota=\u30B9\u30C8\u30EC\u30FC\u30B8\u540D diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_pt_BR.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_pt_BR.properties index b7131ce..de236d8 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_pt_BR.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_pt_BR.properties @@ -1229,7 +1229,7 @@ storageIscsiPopupTargetsToLunTabLabel=Destinos > LUNs storageIscsiPopupUserAuthLabel=Autentica\u00E7\u00E3o do Usu\u00E1rio\: storageIscsiSelectStorageLabel=Selecionar Dom\u00EDnio de Armazenamento -storageIsoSubTabLabel=Imagens +storageImagesSubTabLabel=Imagens storageLocalStorage=Armazenamento storageMainTabLabel=Armazenamento storageNameQuota=Nome do Armazenamento diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_zh_CN.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_zh_CN.properties index d980093..ec038ff 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_zh_CN.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/ApplicationConstants_zh_CN.properties @@ -1354,7 +1354,7 @@ storageIscsiPopupTargetsToLunTabLabel=Targets > LUNs storageIscsiPopupUserAuthLabel=\u7528\u6237\u9A8C\u8BC1\uFF1A storageIscsiSelectStorageLabel=\u9009\u62E9\u5B58\u50A8\u57DF -storageIsoSubTabLabel=\u56FE\u50CF +storageImagesSubTabLabel=\u56FE\u50CF storageLocalStorage=\u5B58\u50A8 storageMainTabLabel=\u5B58\u50A8 storageNameQuota=\u5B58\u50A8\u540D\u79F0 diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/images/glance_icon.png b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/images/glance_icon.png new file mode 100644 index 0000000..b78e53c --- /dev/null +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/webadmin/images/glance_icon.png Binary files differ -- To view, visit http://gerrit.ovirt.org/15898 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I07274bbc14e52471242935fcf99b510469ec4abe Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Federico Simoncelli <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
