Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: Network dialog- displays default MTU if 'has MTU' is 
unchecked
......................................................................

webadmin: Network dialog- displays default MTU if 'has MTU' is unchecked

If 'has MTU' is unchecked the mtu should be disabled and display the
defaukt MTU value.

Note: if 'has 'MTU' is unchecked 'mtu=0' should be sent to the backend and
NOT the deafult value. (The default value is for display pupose only).

Change-Id: I9f813fd292b56407c97ae69c1580061bbc0eef04
Bug-Url: https://bugzilla.redhat.com/1043808
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/EditNetworkModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
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/ApplicationMessages.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/ItemInfoPopup.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkGeneralView.java
A 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/MtuRenderer.java
8 files changed, 55 insertions(+), 20 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/99/28099/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/EditNetworkModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/EditNetworkModel.java
index a3f91907..32e8ded 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/EditNetworkModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/EditNetworkModel.java
@@ -36,10 +36,10 @@
         getIsStpEnabled().setEntity(getNetwork().getStp());
         getHasVLanTag().setEntity(getNetwork().getVlanId() != null);
         getVLanTag().setEntity((getNetwork().getVlanId() == null ? 
Integer.valueOf(0) : getNetwork().getVlanId()));
-        initMtu();
         initIsVm();
         getExport().setEntity(getNetwork().isExternal());
         getExport().setIsChangable(false);
+        initMtu();
         getExternalProviders().setIsChangable(false);
         getNetworkLabel().setSelectedItem(getNetwork().getLabel());
         toggleProfilesAvailability();
@@ -58,7 +58,10 @@
     @Override
     protected void initMtu() {
         getHasMtu().setEntity(getNetwork().getMtu() != 0);
-        getMtu().setEntity(getNetwork().getMtu() != 0 ? getNetwork().getMtu() 
: null);
+
+        if (getHasMtu().getEntity()) {
+            getMtu().setEntity(getNetwork().getMtu());
+        }
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
index 8bbddbe..e2f4de3 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NetworkModel.java
@@ -102,6 +102,7 @@
             @Override
             public void eventRaised(Event ev, Object sender, EventArgs args) {
                 onExportChanged();
+                updateMtu();
             }
         });
 
@@ -125,13 +126,11 @@
         });
 
         setMtu(new EntityModel<Integer>());
-        EntityModel<Boolean> hasMtu = new EntityModel<Boolean>();
-        hasMtu.setEntity(false);
-        setHasMtu(hasMtu);
+        setHasMtu(new EntityModel<Boolean>());
         getHasMtu().getEntityChangedEvent().addListener(new IEventListener() {
             @Override
             public void eventRaised(Event ev, Object sender, EventArgs args) {
-                updateMtuChangeability();
+                updateMtu();
             }
         });
 
@@ -168,7 +167,6 @@
 
         // Update changeability according to initial values
         updateVlanTagChangeability();
-        updateMtuChangeability();
         updateSubnetChangeability();
     }
 
@@ -365,9 +363,7 @@
             
getHasMtu().setChangeProhibitionReason(ConstantsManager.getInstance().getMessages()
                     
.mtuOverrideNotSupported(getSelectedDc().getcompatibility_version().toString()));
             getHasMtu().setIsChangable(false);
-            getMtu().setIsChangable(false);
             getHasMtu().setEntity(false);
-            getMtu().setEntity(null);
         } else {
             if (this.mtuOverrideSupported != mtuOverrideSupported) {
                 initMtu();
@@ -727,8 +723,14 @@
         getVLanTag().setIsChangable(getHasVLanTag().getEntity());
     }
 
-    private void updateMtuChangeability() {
+    private void updateMtu() {
         getMtu().setIsChangable(getHasMtu().getEntity() && 
!getExport().getEntity());
+
+        if (getExport().getEntity() || getHasMtu().getEntity()) {
+            getMtu().setEntity(null);
+        } else {
+            getMtu().setEntity((Integer) 
AsyncDataProvider.getConfigValuePreConverted(ConfigurationValues.DefaultMTU));
+        }
     }
 
     private void updateSubnetChangeability() {
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
index 4968ca3..b2612ec 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/NewNetworkModel.java
@@ -88,7 +88,6 @@
     @Override
     protected void initMtu() {
         getHasMtu().setEntity(false);
-        getMtu().setEntity(null);
     }
 
     @Override
@@ -105,8 +104,8 @@
     protected void onExportChanged() {
         boolean externalNetwork = (Boolean) getExport().getEntity();
         getExternalProviders().setIsChangable(externalNetwork);
-        getIsVmNetwork().setIsChangable(!externalNetwork);
-        getHasMtu().setIsChangable(!externalNetwork);
+        getIsVmNetwork().setIsChangable(!externalNetwork && 
isSupportBridgesReportByVDSM());
+        getHasMtu().setIsChangable(!externalNetwork && 
isMTUOverrideSupported());
         if (externalNetwork) {
             getIsVmNetwork().setEntity(true);
             getHasMtu().setEntity(false);
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 561f379..5ad238c 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
@@ -1980,9 +1980,6 @@
     @DefaultStringValue("none")
     String noneVlan();
 
-    @DefaultStringValue("host's default")
-    String defaultMtu();
-
     @DefaultStringValue("New")
     String newNetworkProfile();
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
index 1ce251b..68baf62 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
@@ -101,4 +101,7 @@
 
     @DefaultMessage("{0} GB")
     String rebalanceFileSizeGb(String size);
+
+    @DefaultMessage("Default ({0})")
+    String defaultMtu(int mtu);
 }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/ItemInfoPopup.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/ItemInfoPopup.java
index e526dce..9a4f880 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/ItemInfoPopup.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/ItemInfoPopup.java
@@ -3,7 +3,9 @@
 import org.ovirt.engine.core.common.businessentities.network.Network;
 import 
org.ovirt.engine.core.common.businessentities.network.NetworkBootProtocol;
 import 
org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface;
+import org.ovirt.engine.core.common.queries.ConfigurationValues;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
+import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import 
org.ovirt.engine.ui.uicommonweb.models.hosts.network.BondNetworkInterfaceModel;
 import 
org.ovirt.engine.ui.uicommonweb.models.hosts.network.LogicalNetworkModel;
 import 
org.ovirt.engine.ui.uicommonweb.models.hosts.network.NetworkInterfaceModel;
@@ -43,6 +45,8 @@
             
SafeHtmlUtils.fromTrustedString(AbstractImagePrototype.create(resources.networkNotSyncImage()).getHTML());
     SafeHtml alertImage =
             
SafeHtmlUtils.fromTrustedString(AbstractImagePrototype.create(resources.alertImage()).getHTML());
+
+    int defaultMtu = (Integer) 
AsyncDataProvider.getConfigValuePreConverted(ConfigurationValues.DefaultMTU);
 
     public ItemInfoPopup() {
         super(true);
@@ -127,8 +131,8 @@
         }
 
         // Mtu
-        if (entity.getMtu() != 0) {
-            addRow(constants.mtuItemInfo(), String.valueOf(entity.getMtu()));
+        if (!entity.isExternal()) {
+            addRow(constants.mtuItemInfo(), entity.getMtu() == 0  ? 
messages.defaultMtu(defaultMtu) : String.valueOf(entity.getMtu()));
         }
     }
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkGeneralView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkGeneralView.java
index 68898f5..b42a571 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkGeneralView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkGeneralView.java
@@ -16,6 +16,7 @@
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.gin.ClientGinjectorProvider;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.network.SubTabNetworkGeneralPresenter;
+import org.ovirt.engine.ui.webadmin.widget.renderer.MtuRenderer;
 
 import com.google.gwt.core.client.GWT;
 import com.google.gwt.editor.client.Editor;
@@ -41,7 +42,7 @@
     TextBoxLabel description = new TextBoxLabel();
     TextBoxLabel role = new TextBoxLabel();
     ValueLabel<Integer> vlan = new ValueLabel<Integer>(new 
EmptyValueRenderer<Integer>(constants.noneVlan()));
-    ValueLabel<Integer> mtu = new ValueLabel<Integer>(new 
EmptyValueRenderer<Integer>(constants.defaultMtu()));
+    ValueLabel<Integer> mtu = new ValueLabel<Integer>(new MtuRenderer());
     TextBoxLabel externalId = new TextBoxLabel();
 
     @UiField(provided = true)
@@ -70,7 +71,11 @@
 
         formBuilder.addFormItem(new FormItem(constants.roleNetwork(), role, 0, 
1));
         formBuilder.addFormItem(new FormItem(constants.vlanNetwork(), vlan, 1, 
1));
-        formBuilder.addFormItem(new FormItem(constants.mtuNetwork(), mtu, 2, 
1));
+        formBuilder.addFormItem(new FormItem(constants.mtuNetwork(), mtu, 2, 
1) {
+            public boolean getIsAvailable() {
+                return getDetailModel().getExternalId() == null;
+            }
+        });
 
         formBuilder.addFormItem(new 
FormItem(constants.externalIdProviderNetwork(), externalId, 3, 0) {
             @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/MtuRenderer.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/MtuRenderer.java
new file mode 100644
index 0000000..00f3653
--- /dev/null
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/MtuRenderer.java
@@ -0,0 +1,22 @@
+package org.ovirt.engine.ui.webadmin.widget.renderer;
+
+import org.ovirt.engine.core.common.queries.ConfigurationValues;
+import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
+import org.ovirt.engine.ui.webadmin.ApplicationMessages;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.text.shared.AbstractRenderer;
+
+public class MtuRenderer extends AbstractRenderer<Integer> {
+
+    private static int defaultMtu =
+            (Integer) 
AsyncDataProvider.getConfigValuePreConverted(ConfigurationValues.DefaultMTU);
+
+    private final ApplicationMessages messages = 
GWT.create(ApplicationMessages.class);
+
+    @Override
+    public String render(Integer mtu) {
+        return mtu == null || mtu == 0 ? messages.defaultMtu(defaultMtu) : 
mtu.toString();
+    }
+
+}


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

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

Reply via email to