Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: Unsynced networks boot parameters can be changed 
(#848354)
......................................................................

webadmin: Unsynced networks boot parameters can be changed (#848354)

https://bugzilla.redhat.com/848354

If after marking the network as to-sync and changing its parameter,
to to-sync is unmarked the changed parameters should be reverted.

Change-Id: I688e46577f03dd55024b8eea9c38aec57dfcd511
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
2 files changed, 51 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/86/7586/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 485ce7d..d854b88 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
@@ -216,6 +216,8 @@
         this.isToSync = isToSync;
     }
 
+    private NetworkParameters originalNetParams = null;
+
     public HostInterfaceModel() {
         this(false);
     }
@@ -243,8 +245,14 @@
                 super.setEntity(value);
                 if (getIsToSync().getIsChangable()){
                     setBootProtocolsAvailable((Boolean) value);
+                    if (!(Boolean)value){
+                        revertChanges();
+                    }else{
+                        saveOriginalNetworkParameters();
+                    }
                 }
             }
+
         });
 
         // call the Network_ValueChanged method to set all
@@ -252,6 +260,23 @@
         Network_SelectedItemChanged(null);
     }
 
+    private void revertChanges() {
+        if (originalNetParams!=null){
+            setBootProtocol(originalNetParams.getBootProtocol());
+            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
     public void eventRaised(Event ev, Object sender, EventArgs args)
     {
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 72a86c9..48e5888 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
@@ -209,6 +209,8 @@
         this.isToSync = isToSync;
     }
 
+    private NetworkParameters originalNetParams = null;
+
     public HostManagementNetworkModel() {
         this(false);
     }
@@ -232,6 +234,11 @@
 
                 if (getIsToSync().getIsChangable()){
                     setBootProtocolsAvailable((Boolean) value);
+                    if (!(Boolean)value){
+                        revertChanges();
+                    }else{
+                        saveOriginalNetworkParameters();
+                    }
                 }
             }
         });
@@ -242,6 +249,25 @@
         UpdateFieldsByEntity();
     }
 
+    private void revertChanges() {
+        if (originalNetParams!=null){
+            setBootProtocol(originalNetParams.getBootProtocol());
+            getAddress().setEntity(originalNetParams.getAddress());
+            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()
     {
         UpdateCanSpecify();


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

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