Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: [setupNetworks] Unsync net params can be changed 
(#848354)
......................................................................

webadmin: [setupNetworks] Unsync net params can be changed (#848354)

https://bugzilla.redhat.com/848354

The bug was fixed in a previous commit, but the fix worked just in
case the "is to sync" was checked an unchecked without closing the
dialog.
If the edit network dialog is colsed and then opened again and
the "is to sync" is changed back to false. The original "before sync"
values should be reverted- this didn't work in the prevoius commit.


Change-Id: Ia00641b123f109d443d98e2c99e727099c2a9d16
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/NetworkParameters.java
4 files changed, 30 insertions(+), 25 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/84/7684/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java
index d854b88..aaffc9c 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java
@@ -218,6 +218,10 @@
 
     private NetworkParameters originalNetParams = null;
 
+    public void setOriginalNetParams(NetworkParameters originalNetParams) {
+        this.originalNetParams = originalNetParams;
+    }
+
     public HostInterfaceModel() {
         this(false);
     }
@@ -244,12 +248,10 @@
             public void setEntity(Object value) {
                 super.setEntity(value);
                 if (getIsToSync().getIsChangable()){
-                    setBootProtocolsAvailable((Boolean) value);
                     if (!(Boolean)value){
                         revertChanges();
-                    }else{
-                        saveOriginalNetworkParameters();
                     }
+                    setBootProtocolsAvailable((Boolean) value);
                 }
             }
 
@@ -266,15 +268,6 @@
             getAddress().setEntity(originalNetParams.getAddress());
             getSubnet().setEntity(originalNetParams.getSubnet());
         }
-    }
-
-    private void saveOriginalNetworkParameters(){
-        if (originalNetParams == null){
-            originalNetParams = new  NetworkParameters();
-        }
-        originalNetParams.setBootProtocol(getBootProtocol());
-        originalNetParams.setAddress((String)getAddress().getEntity());
-        originalNetParams.setSubnet((String)getSubnet().getEntity());
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java
index 48e5888..b258bec 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java
@@ -211,6 +211,10 @@
 
     private NetworkParameters originalNetParams = null;
 
+    public void setOriginalNetParams(NetworkParameters originalNetParams) {
+        this.originalNetParams = originalNetParams;
+    }
+
     public HostManagementNetworkModel() {
         this(false);
     }
@@ -233,12 +237,10 @@
                 super.setEntity(value);
 
                 if (getIsToSync().getIsChangable()){
-                    setBootProtocolsAvailable((Boolean) value);
                     if (!(Boolean)value){
                         revertChanges();
-                    }else{
-                        saveOriginalNetworkParameters();
                     }
+                    setBootProtocolsAvailable((Boolean) value);
                 }
             }
         });
@@ -256,16 +258,6 @@
             getSubnet().setEntity(originalNetParams.getSubnet());
             getGateway().setEntity(originalNetParams.getGateway());
         }
-    }
-
-    private void saveOriginalNetworkParameters(){
-        if (originalNetParams == null){
-            originalNetParams = new  NetworkParameters();
-        }
-        originalNetParams.setBootProtocol(getBootProtocol());
-        originalNetParams.setAddress((String)getAddress().getEntity());
-        originalNetParams.setSubnet((String)getSubnet().getEntity());
-        originalNetParams.setGateway((String)getGateway().getEntity());
     }
 
     private void UpdateFieldsByEntity()
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java
index 71e0428..e329a04 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java
@@ -115,6 +115,7 @@
     private NetworkOperationFactory operationFactory;
     private List<Network> allNetworks;
     private final Map<String, DcNetworkParams> netTodcParams;
+    private final Map<String, NetworkParameters> netToBeforeSyncParams;
     private final HostInterfaceListModel hostInterfaceListModel;
     private List<VdsNetworkInterface> allBonds;
     private NetworkOperation currentCandidate;
@@ -125,6 +126,7 @@
         this.hostInterfaceListModel = hostInterfaceListModel;
         networkToLastDetachParams = new HashMap<String, NetworkParameters>();
         netTodcParams = new HashMap<String, DcNetworkParams>();
+        netToBeforeSyncParams = new HashMap<String, NetworkParameters>();
         setNicsChangedEvent(new Event(NICS_CHANGED_EVENT_DEFINITION));
         setNetworksChangedEvent(new Event(NETWORKS_CHANGED_EVENT_DEFINITION));
         setOperationCandidateEvent(new 
Event(OPERATION_CANDIDATE_EVENT_DEFINITION));
@@ -281,6 +283,7 @@
                 editPopup = new HostManagementNetworkModel(true);
                 final HostManagementNetworkModel mgmntDialogModel = 
(HostManagementNetworkModel) editPopup;
                 
mgmntDialogModel.setTitle(ConstantsManager.getInstance().getConstants().editManagementNetworkTitle());
+                
mgmntDialogModel.setOriginalNetParams(netToBeforeSyncParams.get(logicalNetwork.getName()));
                 mgmntDialogModel.setEntity(logicalNetwork.getEntity());
                 mgmntDialogModel.getAddress().setEntity(entity.getAddress());
                 mgmntDialogModel.getSubnet().setEntity(entity.getSubnet());
@@ -321,6 +324,7 @@
                 editPopup = new HostInterfaceModel(true);
                 final HostInterfaceModel networkDialogModel = 
(HostInterfaceModel) editPopup;
                 
networkDialogModel.setTitle(ConstantsManager.getInstance().getMessages().editNetworkTitle(logicalNetwork.getName()));
+                
networkDialogModel.setOriginalNetParams(netToBeforeSyncParams.get(logicalNetwork.getName()));
                 networkDialogModel.getAddress().setEntity(entity.getAddress());
                 networkDialogModel.getSubnet().setEntity(entity.getSubnet());
                 networkDialogModel.getName().setIsAvailable(false);
@@ -598,6 +602,10 @@
                     bridgedNetworks.add(networkName);
                     nicToNetwork.put(ifName, bridgedNetworks);
                 }
+
+                if (!networkModel.isInSync() && networkModel.isManaged()){
+                    netToBeforeSyncParams.put(networkName, new 
NetworkParameters(nic));
+                }
             }
         }
 
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/NetworkParameters.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/NetworkParameters.java
index 061ebe7..8edae6b 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/NetworkParameters.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/NetworkParameters.java
@@ -1,6 +1,7 @@
 package org.ovirt.engine.ui.uicommonweb.models.hosts;
 
 import org.ovirt.engine.core.common.businessentities.NetworkBootProtocol;
+import org.ovirt.engine.core.common.businessentities.VdsNetworkInterface;
 
 public class NetworkParameters {
 
@@ -9,6 +10,17 @@
     private String subnet;
     private String gateway;
 
+
+    public NetworkParameters() {
+    }
+
+    public NetworkParameters(VdsNetworkInterface nic) {
+        setBootProtocol(nic.getBootProtocol());
+        setAddress(nic.getAddress());
+        setSubnet(nic.getSubnet());
+        setGateway(nic.getGateway());
+    }
+
     public NetworkBootProtocol getBootProtocol() {
         return bootProtocol;
     }


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia00641b123f109d443d98e2c99e727099c2a9d16
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