Gilad Chaplik has uploaded a new change for review.

Change subject: webadmin: VM dialog Host tab for Local SD
......................................................................

webadmin: VM dialog Host tab for Local SD

In vm/template/pool dialog Host tab will be visible for
local SD data center (to show other host fields, used to be hidden).
In local DC Migration fields will be disabled and set to
non-migratable and pinned.

Change-Id: I490f19a9a66c78d9f0d81bf5fb009d2a8eec38a4
Bug-Url: https://bugzilla.redhat.com/1018201
Signed-off-by: Gilad Chaplik <[email protected]>
---
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/TemplateVmModelBehavior.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
4 files changed, 23 insertions(+), 29 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/33/21833/1

diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
index d20fe53..c9ce0c2 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
@@ -1065,10 +1065,6 @@
         });
     }
 
-    protected void setupHostTabAvailability(UnitVmModel model) {
-        changeApplicationLevelVisibility(hostTab, model.getIsHostAvailable());
-    }
-
     protected void setupCustomPropertiesAvailability(UnitVmModel model) {
         changeApplicationLevelVisibility(customPropertiesTab, 
model.getIsCustomPropertiesTabAvailable());
     }
@@ -1079,9 +1075,7 @@
             @Override
             public void eventRaised(Event ev, Object sender, EventArgs args) {
                 String propName = ((PropertyChangedEventArgs) 
args).PropertyName;
-                if ("IsHostAvailable".equals(propName)) { //$NON-NLS-1$
-                    setupHostTabAvailability(object);
-                } else if ("IsHostTabValid".equals(propName)) { //$NON-NLS-1$
+                if ("IsHostTabValid".equals(propName)) { //$NON-NLS-1$
                     if (object.getIsHostTabValid()) {
                         hostTab.markAsValid();
                     } else {
@@ -1105,9 +1099,6 @@
                 specificHost.setValue(!isAutoAssign);
             }
         });
-
-        // only for non local storage available
-        setupHostTabAvailability(object);
 
         object.getProvisioning().getPropertyChangedEvent().addListener(new 
IEventListener() {
             @Override
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/TemplateVmModelBehavior.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/TemplateVmModelBehavior.java
index 75a4450..89743c8 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/TemplateVmModelBehavior.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/TemplateVmModelBehavior.java
@@ -114,6 +114,7 @@
         updateMemoryBalloon();
         updateCpuSharesAvailability();
         updateVirtioScsiAvailability();
+        updateMigrationForLocalSD();
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java
index 0809ccf..c2f4d8d 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java
@@ -1021,22 +1021,6 @@
         onPropertyChanged(new PropertyChangedEventArgs("IsDisksAvailable")); 
//$NON-NLS-1$
     }
 
-    private boolean isHostAvailable;
-
-    public boolean getIsHostAvailable()
-    {
-        return isHostAvailable;
-    }
-
-    public void setIsHostAvailable(boolean value)
-    {
-        if (isHostAvailable != value)
-        {
-            isHostAvailable = value;
-            onPropertyChanged(new 
PropertyChangedEventArgs("IsHostAvailable")); //$NON-NLS-1$
-        }
-    }
-
     private boolean isCustomPropertiesTabAvailable;
 
     public boolean getIsCustomPropertiesTabAvailable()
@@ -1742,6 +1726,7 @@
     private void template_SelectedItemChanged(Object sender, EventArgs args)
     {
         behavior.template_SelectedItemChanged();
+        behavior.updateMigrationForLocalSD();
     }
 
     private void timeZone_SelectedItemChanged(Object sender, EventArgs args)
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
index 7f0eb7c..6ec662c 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
@@ -87,8 +87,6 @@
             return;
         }
 
-        getModel().setIsHostAvailable(dataCenter.getStorageType() != 
StorageType.LOCALFS);
-
         if (dataCenter.getQuotaEnforcementType() != 
QuotaEnforcementTypeEnum.DISABLED) {
             getModel().getQuota().setIsAvailable(true);
         } else {
@@ -96,6 +94,26 @@
         }
 
         postDataCenterWithClusterSelectedItemChanged();
+    }
+
+    protected void updateMigrationForLocalSD() {
+        boolean isLocalSD = getDateCenter() != null && 
StorageType.LOCALFS.equals(getDateCenter().getStorageType());
+        if(isLocalSD) {
+            getModel().getIsAutoAssign().setEntity(false);
+            
getModel().getMigrationMode().setSelectedItem(MigrationSupport.PINNED_TO_HOST);
+        }
+        getModel().getIsAutoAssign().setIsChangable(!isLocalSD);
+        getModel().getMigrationMode().setIsChangable(!isLocalSD);
+        getModel().getDefaultHost().setIsChangable(!isLocalSD);
+    }
+
+    private StoragePool getDateCenter() {
+        DataCenterWithCluster dataCenterWithCluster = 
getModel().getDataCenterWithClustersList().getSelectedItem();
+        if (dataCenterWithCluster == null) {
+            return null;
+
+        }
+        return dataCenterWithCluster.getDataCenter();
     }
 
     public abstract void template_SelectedItemChanged();
@@ -755,7 +773,6 @@
             
getModel().getMigrationMode().setSelectedItem(MigrationSupport.MIGRATABLE);
         }
         getModel().getMigrationMode().setIsChangable(!haHost);
-
     }
 
     public void updateCpuSharesAmountChangeability() {


-- 
To view, visit http://gerrit.ovirt.org/21833
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I490f19a9a66c78d9f0d81bf5fb009d2a8eec38a4
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Gilad Chaplik <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to