Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: MTU config should be disabled and blocked for 3.0 DC 
(#854496)
......................................................................

webadmin: MTU config should be disabled and blocked for 3.0 DC (#854496)

https://bugzilla.redhat.com/854496

A pervious commit fixed the bz, but there was a little problem.
The "MTUOverrideSupported" config value request is async and in some cases
can be retrieved after the dialog and its ok and cancel buttons are loaded.

In this case the user can change the mtu before the field is disabled.

Change-Id: I33d7c24b40ff5acd3ee1249387a93f48f632b3c4
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterNetworkListModel.java
2 files changed, 155 insertions(+), 124 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/08/7908/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java
index d8be374..7a34bb0 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java
@@ -412,53 +412,53 @@
                                                         
networkModel.getHasMtu().setIsChangable(false);
                                                         
networkModel.getMtu().setIsChangable(false);
                                                     }
+
+                                                    
clusterNetworkModel.setDataCenterName(dataCenter.getname());
+                                                    AsyncQuery _asyncQuery2 = 
new AsyncQuery();
+                                                    _asyncQuery2.asyncCallback 
= new INewAsyncCallback() {
+                                                        @Override
+                                                        public void 
OnSuccess(Object model, Object ReturnValue)
+                                                        {
+                                                            
ClusterNetworkListModel networkListModel = ClusterNetworkListModel.this;
+                                                            
ClusterNetworkModel networkModel =
+                                                                    
(ClusterNetworkModel) networkListModel.getWindow();
+
+                                                            // Cluster list
+                                                            
ArrayList<VDSGroup> clusterList = (ArrayList<VDSGroup>) ReturnValue;
+                                                            
NetworkClusterModel networkClusterModel;
+                                                            ListModel 
networkClusterList =
+                                                                    new 
ListModel();
+                                                            
List<NetworkClusterModel> items = new ArrayList<NetworkClusterModel>();
+                                                            for (VDSGroup 
cluster : clusterList)
+                                                            {
+                                                                
networkClusterModel = new NetworkClusterModel(cluster);
+                                                                if 
(!(cluster.getId().equals(getEntity().getId()))) {
+                                                                    
networkClusterModel.setAttached(false);
+                                                                } else {
+                                                                    
networkClusterModel.setAttached(true);
+                                                                    
networkClusterModel.setIsChangable(false);
+                                                                }
+
+                                                                
items.add(networkClusterModel);
+                                                            }
+                                                            
networkClusterList.setItems(items);
+                                                            
networkModel.setNetworkClusterList(networkClusterList);
+
+                                                            UICommand tempVar 
= new UICommand("OnSave", networkListModel); //$NON-NLS-1$
+                                                            
tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok());
+                                                            
tempVar.setIsDefault(true);
+                                                            
networkModel.getCommands().add(tempVar);
+
+                                                            UICommand tempVar2 
= new UICommand("Cancel", networkListModel); //$NON-NLS-1$
+                                                            
tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel());
+                                                            
tempVar2.setIsCancel(true);
+                                                            
networkModel.getCommands().add(tempVar2);
+                                                        }
+                                                    };
+                                                    
AsyncDataProvider.GetClusterList(_asyncQuery2, dataCenter.getId());
                                                 }
                                             }),
                                             
getEntity().getcompatibility_version().toString());
-
-                                    
clusterNetworkModel.setDataCenterName(dataCenter.getname());
-                                    AsyncQuery _asyncQuery2 = new AsyncQuery();
-                                    _asyncQuery2.asyncCallback = new 
INewAsyncCallback() {
-                                        @Override
-                                        public void OnSuccess(Object model, 
Object ReturnValue)
-                                        {
-                                            ClusterNetworkListModel 
networkListModel = ClusterNetworkListModel.this;
-                                            ClusterNetworkModel networkModel =
-                                                    (ClusterNetworkModel) 
networkListModel.getWindow();
-
-                                            // Cluster list
-                                            ArrayList<VDSGroup> clusterList = 
(ArrayList<VDSGroup>) ReturnValue;
-                                            NetworkClusterModel 
networkClusterModel;
-                                            ListModel networkClusterList =
-                                                    new ListModel();
-                                            List<NetworkClusterModel> items = 
new ArrayList<NetworkClusterModel>();
-                                            for (VDSGroup cluster : 
clusterList)
-                                            {
-                                                networkClusterModel = new 
NetworkClusterModel(cluster);
-                                                if 
(!(cluster.getId().equals(getEntity().getId()))) {
-                                                    
networkClusterModel.setAttached(false);
-                                                } else {
-                                                    
networkClusterModel.setAttached(true);
-                                                    
networkClusterModel.setIsChangable(false);
-                                                }
-
-                                                items.add(networkClusterModel);
-                                            }
-                                            networkClusterList.setItems(items);
-                                            
networkModel.setNetworkClusterList(networkClusterList);
-
-                                            UICommand tempVar = new 
UICommand("OnSave", networkListModel); //$NON-NLS-1$
-                                            
tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok());
-                                            tempVar.setIsDefault(true);
-                                            
networkModel.getCommands().add(tempVar);
-
-                                            UICommand tempVar2 = new 
UICommand("Cancel", networkListModel); //$NON-NLS-1$
-                                            
tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel());
-                                            tempVar2.setIsCancel(true);
-                                            
networkModel.getCommands().add(tempVar2);
-                                        }
-                                    };
-                                    
AsyncDataProvider.GetClusterList(_asyncQuery2, dataCenter.getId());
                                 }
                             }),
                             dataCenter.getcompatibility_version().toString());
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterNetworkListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterNetworkListModel.java
index 0fd3ef3..765e1c8 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterNetworkListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterNetworkListModel.java
@@ -263,52 +263,68 @@
                             
networkModel.getIsVmNetwork().setIsChangable(false);
                         }
 
-                        updateMTUOverrideSupport((DataCenterNetworkModel) 
getWindow(),
-                                
getEntity().getcompatibility_version().toString());
+                        AsyncDataProvider.IsMTUOverrideSupported(new 
AsyncQuery(DataCenterNetworkListModel.this,
+                                new INewAsyncCallback() {
+                                    @Override
+                                    public void OnSuccess(Object model, Object 
returnValue) {
+                                        boolean isMTUOverrideSupported = 
(Boolean) returnValue;
 
-                        AsyncQuery _asyncQuery = new AsyncQuery();
-                        _asyncQuery.setModel(DataCenterNetworkListModel.this);
-                        _asyncQuery.asyncCallback = new INewAsyncCallback() {
-                            @Override
-                            public void OnSuccess(Object model, Object 
ReturnValue)
-                            {
-                                DataCenterNetworkListModel dcNetworkModel = 
(DataCenterNetworkListModel) model;
-                                
dcNetworkModel.setClusterList((ArrayList<VDSGroup>) ReturnValue);
-                                dcNetworkModel.setNetworkClusterList(new 
ListModel());
-                                ArrayList<VdcQueryParametersBase> 
parametersList =
-                                        new 
ArrayList<VdcQueryParametersBase>();
-                                ArrayList<VdcQueryType> queryTypeList = new 
ArrayList<VdcQueryType>();
-                                List<NetworkClusterModel> items = new 
ArrayList<NetworkClusterModel>();
-                                for (VDSGroup vdsGroup : 
dcNetworkModel.getClusterList())
-                                {
-                                    
queryTypeList.add(VdcQueryType.GetAllNetworksByClusterId);
-                                    parametersList.add(new 
VdsGroupQueryParamenters(vdsGroup.getId()));
-                                    NetworkClusterModel tempVar = new 
NetworkClusterModel(vdsGroup);
-                                    tempVar.setAttached(false);
-                                    items.add(tempVar);
-                                }
-                                
dcNetworkModel.getNetworkClusterList().setItems(items);
-                                Frontend.RunMultipleQueries(queryTypeList, 
parametersList, dcNetworkModel);
-                                DataCenterNetworkModel networkModel1 =
-                                        (DataCenterNetworkModel) 
dcNetworkModel.getWindow();
+                                        
networkModel.setMTUOverrideSupported(isMTUOverrideSupported);
+                                        if (!isMTUOverrideSupported) {
+                                            
networkModel.getHasMtu().setIsChangable(false);
+                                            
networkModel.getMtu().setIsChangable(false);
+                                        }
 
-                                // cannot detach engine networks from clusters
-                                Network network1 = (Network) 
dcNetworkModel.getSelectedItem();
-                                if 
(StringHelper.stringsEqual(network1.getname(), ENGINE_NETWORK))
-                                {
-                                    for (Object item : 
dcNetworkModel.getNetworkClusterList().getItems())
-                                    {
-                                        ((NetworkClusterModel) 
item).setIsChangable(false);
+                                        AsyncQuery _asyncQuery = new 
AsyncQuery();
+                                        
_asyncQuery.setModel(DataCenterNetworkListModel.this);
+                                        _asyncQuery.asyncCallback = new 
INewAsyncCallback() {
+                                            @Override
+                                            public void OnSuccess(Object 
model, Object ReturnValue)
+                                            {
+                                                DataCenterNetworkListModel 
dcNetworkModel =
+                                                        
(DataCenterNetworkListModel) model;
+                                                
dcNetworkModel.setClusterList((ArrayList<VDSGroup>) ReturnValue);
+                                                
dcNetworkModel.setNetworkClusterList(new ListModel());
+                                                
ArrayList<VdcQueryParametersBase> parametersList =
+                                                        new 
ArrayList<VdcQueryParametersBase>();
+                                                ArrayList<VdcQueryType> 
queryTypeList = new ArrayList<VdcQueryType>();
+                                                List<NetworkClusterModel> 
items = new ArrayList<NetworkClusterModel>();
+                                                for (VDSGroup vdsGroup : 
dcNetworkModel.getClusterList())
+                                                {
+                                                    
queryTypeList.add(VdcQueryType.GetAllNetworksByClusterId);
+                                                    parametersList.add(new 
VdsGroupQueryParamenters(vdsGroup.getId()));
+                                                    NetworkClusterModel 
tempVar = new NetworkClusterModel(vdsGroup);
+                                                    tempVar.setAttached(false);
+                                                    items.add(tempVar);
+                                                }
+                                                
dcNetworkModel.getNetworkClusterList().setItems(items);
+                                                
Frontend.RunMultipleQueries(queryTypeList,
+                                                        parametersList,
+                                                        dcNetworkModel);
+                                                DataCenterNetworkModel 
networkModel1 =
+                                                        
(DataCenterNetworkModel) dcNetworkModel.getWindow();
+
+                                                // cannot detach engine 
networks from clusters
+                                                Network network1 = (Network) 
dcNetworkModel.getSelectedItem();
+                                                if 
(StringHelper.stringsEqual(network1.getname(), ENGINE_NETWORK))
+                                                {
+                                                    for (Object item : 
dcNetworkModel.getNetworkClusterList()
+                                                            .getItems())
+                                                    {
+                                                        ((NetworkClusterModel) 
item).setIsChangable(false);
+                                                    }
+                                                    
networkModel1.getApplyCommand().setIsExecutionAllowed(false);
+                                                    
networkModel1.getName().setIsChangable(false);
+                                                    
networkModel1.setMessage(ConstantsManager.getInstance()
+                                                            .getConstants()
+                                                            
.cannotDetachManagementNetworkFromClustersMsg());
+                                                }
+                                            }
+                                        };
+                                        
AsyncDataProvider.GetClusterList(_asyncQuery, getEntity().getId());
                                     }
-                                    
networkModel1.getApplyCommand().setIsExecutionAllowed(false);
-                                    
networkModel1.getName().setIsChangable(false);
-                                    
networkModel1.setMessage(ConstantsManager.getInstance()
-                                            .getConstants()
-                                            
.cannotDetachManagementNetworkFromClustersMsg());
-                                }
-                            }
-                        };
-                        AsyncDataProvider.GetClusterList(_asyncQuery, 
getEntity().getId());
+                                }),
+                                
getEntity().getcompatibility_version().toString());
                     }
                 }),
                 getEntity().getcompatibility_version().toString());
@@ -340,44 +356,59 @@
                             
networkModel.getIsVmNetwork().setIsChangable(false);
                         }
 
-                        updateMTUOverrideSupport((DataCenterNetworkModel) 
getWindow(),
+                        AsyncDataProvider.IsMTUOverrideSupported(new 
AsyncQuery(DataCenterNetworkListModel.this,
+                                new INewAsyncCallback() {
+                                    @Override
+                                    public void OnSuccess(Object model, Object 
returnValue) {
+                                        boolean isMTUOverrideSupported = 
(Boolean) returnValue;
+
+                                        
networkModel.setMTUOverrideSupported(isMTUOverrideSupported);
+                                        if (!isMTUOverrideSupported) {
+                                            
networkModel.getHasMtu().setIsChangable(false);
+                                            
networkModel.getMtu().setIsChangable(false);
+                                        }
+
+                                        AsyncQuery _asyncQuery = new 
AsyncQuery();
+                                        
_asyncQuery.setModel(DataCenterNetworkListModel.this);
+                                        _asyncQuery.asyncCallback = new 
INewAsyncCallback() {
+                                            @Override
+                                            public void OnSuccess(Object 
model, Object ReturnValue)
+                                            {
+                                                DataCenterNetworkListModel 
networkListModel =
+                                                        
(DataCenterNetworkListModel) model;
+                                                DataCenterNetworkModel 
networkModel1 =
+                                                        
(DataCenterNetworkModel) networkListModel.getWindow();
+                                                // Cluster list
+                                                ArrayList<VDSGroup> 
clusterList = (ArrayList<VDSGroup>) ReturnValue;
+                                                NetworkClusterModel 
networkClusterModel;
+                                                ListModel networkClusterList =
+                                                        new ListModel();
+                                                List<NetworkClusterModel> 
items = new ArrayList<NetworkClusterModel>();
+                                                for (VDSGroup cluster : 
clusterList)
+                                                {
+                                                    networkClusterModel = new 
NetworkClusterModel(cluster);
+                                                    
networkClusterModel.setAttached(false);
+                                                    
items.add(networkClusterModel);
+                                                }
+                                                
networkClusterList.setItems(items);
+                                                
networkModel1.setNetworkClusterList(networkClusterList);
+
+                                                UICommand tempVar = new 
UICommand("OnSave", networkListModel); //$NON-NLS-1$
+                                                
tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok());
+                                                tempVar.setIsDefault(true);
+                                                
networkModel1.getCommands().add(tempVar);
+                                                UICommand tempVar2 = new 
UICommand("Cancel", networkListModel); //$NON-NLS-1$
+                                                
tempVar2.setTitle(ConstantsManager.getInstance()
+                                                        .getConstants()
+                                                        .cancel());
+                                                tempVar2.setIsCancel(true);
+                                                
networkModel1.getCommands().add(tempVar2);
+                                            }
+                                        };
+                                        
AsyncDataProvider.GetClusterList(_asyncQuery, getEntity().getId());
+                                    }
+                                }),
                                 
getEntity().getcompatibility_version().toString());
-
-                        AsyncQuery _asyncQuery = new AsyncQuery();
-                        _asyncQuery.setModel(DataCenterNetworkListModel.this);
-                        _asyncQuery.asyncCallback = new INewAsyncCallback() {
-                            @Override
-                            public void OnSuccess(Object model, Object 
ReturnValue)
-                            {
-                                DataCenterNetworkListModel networkListModel = 
(DataCenterNetworkListModel) model;
-                                DataCenterNetworkModel networkModel1 =
-                                        (DataCenterNetworkModel) 
networkListModel.getWindow();
-                                // Cluster list
-                                ArrayList<VDSGroup> clusterList = 
(ArrayList<VDSGroup>) ReturnValue;
-                                NetworkClusterModel networkClusterModel;
-                                ListModel networkClusterList =
-                                        new ListModel();
-                                List<NetworkClusterModel> items = new 
ArrayList<NetworkClusterModel>();
-                                for (VDSGroup cluster : clusterList)
-                                {
-                                    networkClusterModel = new 
NetworkClusterModel(cluster);
-                                    networkClusterModel.setAttached(false);
-                                    items.add(networkClusterModel);
-                                }
-                                networkClusterList.setItems(items);
-                                
networkModel1.setNetworkClusterList(networkClusterList);
-
-                                UICommand tempVar = new UICommand("OnSave", 
networkListModel); //$NON-NLS-1$
-                                
tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok());
-                                tempVar.setIsDefault(true);
-                                networkModel1.getCommands().add(tempVar);
-                                UICommand tempVar2 = new UICommand("Cancel", 
networkListModel); //$NON-NLS-1$
-                                
tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel());
-                                tempVar2.setIsCancel(true);
-                                networkModel1.getCommands().add(tempVar2);
-                            }
-                        };
-                        AsyncDataProvider.GetClusterList(_asyncQuery, 
getEntity().getId());
                     }
                 }),
                 getEntity().getcompatibility_version().toString());


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

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