Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: Edit host interfaces menu doesn't change by dc 
version(#838491)
......................................................................

webadmin: Edit host interfaces menu doesn't change by dc version(#838491)

https://bugzilla.redhat.com/838491

When fixing 838491 overriden setEntity (that return if entity id wasn't
changed) was removed from HostInterfaceListModel.
Removing it caused the HostInterfaceListModel to be refreshed every search
cycle.

Change-Id: I7c7a60178feab0d18e0fb51ab556bca50ba04353
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java
1 file changed, 109 insertions(+), 79 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/73/7473/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java
index 8faf0fc..89bcc48 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java
@@ -164,6 +164,27 @@
         return (VDS) super.getEntity();
     }
 
+    public void setEntity(VDS value)
+    {
+        if (super.getEntity() != null)
+        {
+            VDS currentItem = ((VDS) super.getEntity());
+            VDS newItem = value;
+
+            Guid currentItemId = currentItem.getId().getValue();
+            Guid newItemId = newItem.getId().getValue();
+
+            if (currentItemId.equals(newItemId))
+            {
+                setEntity(value, false);
+                UpdateActionAvailability();
+                return;
+            }
+        }
+
+        super.setEntity(value);
+    }
+
     private ArrayList<VdsNetworkInterface> GetSelectedItems(boolean withVlans)
     {
         ArrayList<VdsNetworkInterface> list = new 
ArrayList<VdsNetworkInterface>();
@@ -813,7 +834,7 @@
                         {
                             Network network = 
networkDictionary.get(selectedNetworkName);
 
-                            if 
(!StringHelper.isNullOrEmpty(item.getNetworkName())){
+                            if 
(!StringHelper.isNullOrEmpty(item.getNetworkName())) {
                                 networksToAdd.add(network);
                                 attachedNetworks.remove(network);
 
@@ -990,83 +1011,89 @@
 
                 final StringBuilder tmpDefaultInterfaceName = new 
StringBuilder();
 
-                        
AsyncDataProvider.GetInterfaceOptionsForEditNetwork(new AsyncQuery(this, new 
INewAsyncCallback() {
+                AsyncDataProvider.GetInterfaceOptionsForEditNetwork(new 
AsyncQuery(this, new INewAsyncCallback() {
 
-                            @Override
-                            public void OnSuccess(Object model, Object 
returnValue) {
-                                ArrayList<VdsNetworkInterface> interfaces = 
(ArrayList<VdsNetworkInterface>) returnValue;
+                    @Override
+                    public void OnSuccess(Object model, Object returnValue) {
+                        ArrayList<VdsNetworkInterface> interfaces = 
(ArrayList<VdsNetworkInterface>) returnValue;
 
-                                String  defaultInterfaceName = 
tmpDefaultInterfaceName.toString();
-                                
managementModel.getInterface().setItems(interfaces);
-                                managementModel.getInterface()
-                                        
.setSelectedItem(Linq.FindInterfaceByName(Linq.VdsNetworkInterfaceListToBase(interfaces),
-                                                defaultInterfaceName));
-                                if (item.getBonded() != null && 
item.getBonded().equals(true))
+                        String defaultInterfaceName = 
tmpDefaultInterfaceName.toString();
+                        managementModel.getInterface().setItems(interfaces);
+                        managementModel.getInterface()
+                                
.setSelectedItem(Linq.FindInterfaceByName(Linq.VdsNetworkInterfaceListToBase(interfaces),
+                                        defaultInterfaceName));
+                        if (item.getBonded() != null && 
item.getBonded().equals(true))
+                        {
+                            
managementModel.getInterface().setTitle(ConstantsManager.getInstance()
+                                    .getConstants()
+                                    .interfaceListTitle());
+                            managementModel.getInterface()
+                                    .getSelectedItemChangedEvent()
+                                    .addListener(hostInterfaceListModel);
+                        }
+                        
managementModel.getCheckConnectivity().setIsAvailable(true);
+                        
managementModel.getCheckConnectivity().setIsChangable(true);
+                        
managementModel.getCheckConnectivity().setEntity(item.getIsManagement()); // 
currently, always
+                                                                               
                   // should be
+                                                                               
                   // true
+
+                        
managementModel.getBondingOptions().setIsAvailable(false);
+                        if (item.getBonded() != null && 
item.getBonded().equals(true))
+                        {
+                            
managementModel.getBondingOptions().setIsAvailable(true);
+                            Map.Entry<String, EntityModel> defaultItem = null;
+                            RefObject<Map.Entry<String, EntityModel>> 
tempRef_defaultItem =
+                                    new RefObject<Map.Entry<String, 
EntityModel>>(defaultItem);
+                            ArrayList<Map.Entry<String, EntityModel>> list =
+                                    
DataProvider.GetBondingOptionList(tempRef_defaultItem);
+                            defaultItem = tempRef_defaultItem.argvalue;
+                            Map.Entry<String, EntityModel> selectBondingOpt =
+                                    new KeyValuePairCompat<String, 
EntityModel>();
+                            boolean containsSelectBondingOpt = false;
+                            managementModel.getBondingOptions().setItems(list);
+                            for (int i = 0; i < list.size(); i++)
+                            {
+                                if 
(StringHelper.stringsEqual(list.get(i).getKey(), item.getBondOptions()))
                                 {
-                                    
managementModel.getInterface().setTitle(ConstantsManager.getInstance()
-                                            .getConstants()
-                                            .interfaceListTitle());
-                                    
managementModel.getInterface().getSelectedItemChangedEvent().addListener(hostInterfaceListModel);
+                                    selectBondingOpt = list.get(i);
+                                    containsSelectBondingOpt = true;
+                                    break;
                                 }
-                                
managementModel.getCheckConnectivity().setIsAvailable(true);
-                                
managementModel.getCheckConnectivity().setIsChangable(true);
-                                
managementModel.getCheckConnectivity().setEntity(item.getIsManagement()); // 
currently, always should be
-                                                                               
                           // true
-
-                                
managementModel.getBondingOptions().setIsAvailable(false);
-                                if (item.getBonded() != null && 
item.getBonded().equals(true))
-                                {
-                                    
managementModel.getBondingOptions().setIsAvailable(true);
-                                    Map.Entry<String, EntityModel> defaultItem 
= null;
-                                    RefObject<Map.Entry<String, EntityModel>> 
tempRef_defaultItem =
-                                            new RefObject<Map.Entry<String, 
EntityModel>>(defaultItem);
-                                    ArrayList<Map.Entry<String, EntityModel>> 
list =
-                                            
DataProvider.GetBondingOptionList(tempRef_defaultItem);
-                                    defaultItem = tempRef_defaultItem.argvalue;
-                                    Map.Entry<String, EntityModel> 
selectBondingOpt =
-                                            new KeyValuePairCompat<String, 
EntityModel>();
-                                    boolean containsSelectBondingOpt = false;
-                                    
managementModel.getBondingOptions().setItems(list);
-                                    for (int i = 0; i < list.size(); i++)
-                                    {
-                                        if 
(StringHelper.stringsEqual(list.get(i).getKey(), item.getBondOptions()))
-                                        {
-                                            selectBondingOpt = list.get(i);
-                                            containsSelectBondingOpt = true;
-                                            break;
-                                        }
-                                    }
-                                    if (containsSelectBondingOpt == false)
-                                    {
-                                        if 
(StringHelper.stringsEqual(item.getBondOptions(), 
DataProvider.GetDefaultBondingOption()))
-                                        {
-                                            selectBondingOpt = defaultItem;
-                                        }
-                                        else
-                                        {
-                                            selectBondingOpt = 
list.get(list.size() - 1);
-                                            EntityModel entityModel = 
selectBondingOpt.getValue();
-                                            
entityModel.setEntity(item.getBondOptions());
-                                        }
-                                    }
-                                    
managementModel.getBondingOptions().setSelectedItem(selectBondingOpt);
-                                }
-
-                                UICommand tempVar = new 
UICommand("OnEditManagementNetworkConfirmation", hostInterfaceListModel); 
//$NON-NLS-1$
-                                
tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok());
-                                tempVar.setIsDefault(true);
-                                managementModel.getCommands().add(tempVar);
-                                UICommand tempVar2 = new UICommand("Cancel", 
hostInterfaceListModel); //$NON-NLS-1$
-                                
tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel());
-                                tempVar2.setIsCancel(true);
-                                managementModel.getCommands().add(tempVar2);
-
                             }
-                        }) ,getOriginalItems(),
-                                item,
-                                networkToEdit,
-                                getEntity().getId(),
-                                tmpDefaultInterfaceName);
+                            if (containsSelectBondingOpt == false)
+                            {
+                                if 
(StringHelper.stringsEqual(item.getBondOptions(),
+                                        
DataProvider.GetDefaultBondingOption()))
+                                {
+                                    selectBondingOpt = defaultItem;
+                                }
+                                else
+                                {
+                                    selectBondingOpt = list.get(list.size() - 
1);
+                                    EntityModel entityModel = 
selectBondingOpt.getValue();
+                                    
entityModel.setEntity(item.getBondOptions());
+                                }
+                            }
+                            
managementModel.getBondingOptions().setSelectedItem(selectBondingOpt);
+                        }
+
+                        UICommand tempVar =
+                                new 
UICommand("OnEditManagementNetworkConfirmation", hostInterfaceListModel); 
//$NON-NLS-1$
+                        
tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok());
+                        tempVar.setIsDefault(true);
+                        managementModel.getCommands().add(tempVar);
+                        UICommand tempVar2 = new UICommand("Cancel", 
hostInterfaceListModel); //$NON-NLS-1$
+                        
tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel());
+                        tempVar2.setIsCancel(true);
+                        managementModel.getCommands().add(tempVar2);
+
+                    }
+                }),
+                        getOriginalItems(),
+                        item,
+                        networkToEdit,
+                        getEntity().getId(),
+                        tmpDefaultInterfaceName);
 
             }
         };
@@ -1158,7 +1185,7 @@
         UpdateNetworkToVdsParameters parameters =
                 new UpdateNetworkToVdsParameters(getEntity().getId(),
                         network,
-                        new ArrayList<VdsNetworkInterface>(Arrays.asList(new 
VdsNetworkInterface[] {nic})));
+                        new ArrayList<VdsNetworkInterface>(Arrays.asList(new 
VdsNetworkInterface[] { nic })));
 
         Map.Entry<String, EntityModel> bondingOption;
         if (model.getBondingOptions().getSelectedItem() != null)
@@ -1736,7 +1763,8 @@
                             @Override
                             public void Executed(FrontendActionAsyncResult 
result) {
 
-                                HostInterfaceListModel hostInterfaceListModel 
= (HostInterfaceListModel) result.getState();
+                                HostInterfaceListModel hostInterfaceListModel =
+                                        (HostInterfaceListModel) 
result.getState();
                                 VdcReturnValueBase returnValueBase = 
result.getReturnValue();
                                 if (returnValueBase != null && 
returnValueBase.getSucceeded())
                                 {
@@ -2063,7 +2091,8 @@
                             @Override
                             public void Executed(FrontendActionAsyncResult 
result) {
 
-                                HostInterfaceListModel hostInterfaceListModel 
= (HostInterfaceListModel) result.getState();
+                                HostInterfaceListModel hostInterfaceListModel =
+                                        (HostInterfaceListModel) 
result.getState();
                                 VdcReturnValueBase returnValueBase = 
result.getReturnValue();
                                 if (returnValueBase != null && 
returnValueBase.getSucceeded())
                                 {
@@ -2160,7 +2189,7 @@
                 VdcReturnValueBase returnValueBase = result.getReturnValue();
                 if (returnValueBase != null && returnValueBase.getSucceeded())
                 {
-                    EntityModel commitChanges =model.getCommitChanges();
+                    EntityModel commitChanges = model.getCommitChanges();
                     if ((Boolean) commitChanges.getEntity())
                     {
                         SaveNetworkConfig(getEntity().getId(),
@@ -2242,7 +2271,8 @@
                 && host.getstatus() != VDSStatus.NonResponsive && 
selectedItems.size() == 1
                 && selectedItem != null && selectedItem.getIsManagement());
 
-        // Setup Networks is only available on 3.1 Clusters, all the other 
commands (except save network configuration) available only on less than 3.1 
Clusters
+        // Setup Networks is only available on 3.1 Clusters, all the other 
commands (except save network configuration)
+        // available only on less than 3.1 Clusters
         if (host != null) {
             Version v31 = new Version(3, 1);
             boolean isLessThan31 = 
host.getvds_group_compatibility_version().compareTo(v31) < 0;
@@ -2254,7 +2284,7 @@
             getEditCommand().setIsAvailable(isLessThan31);
             getBondCommand().setIsAvailable(isLessThan31);
             getDetachCommand().setIsAvailable(isLessThan31);
-            getEditManagementNetworkCommand().setIsAvailable(isLessThan31) ;
+            getEditManagementNetworkCommand().setIsAvailable(isLessThan31);
         }
     }
 


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

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