Gilad Chaplik has uploaded a new change for review.

Change subject: webadmin: DataProvider.java cleanup (2/6)
......................................................................

webadmin: DataProvider.java cleanup (2/6)

DataProvider is a class which is mostly obsolete,
as it contains synchronous calls to the engine,
which are not relevant anymore under the GWT platform/infrastructure.

The goal is to eliminate this class all-together.

In this patch:
1) Removing methods that used old cache mechanism for
config values, and replacing them with the new mechanism
in AsyncDataProvider (only 2 methods)
2) Removing DataProvider config values mechanism

Change-Id: I8eb69268ef416c1738d92129e8c10f3197967a53
Signed-off-by: Gilad Chaplik <[email protected]>
Bug-Url: https://bugzilla.redhat.com/881747
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/DataProvider.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/autocomplete/SearchSuggestModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateGeneralModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmGeneralModel.java
7 files changed, 45 insertions(+), 120 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/18/9718/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/DataProvider.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/DataProvider.java
index 491a01f..ac23b04 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/DataProvider.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/DataProvider.java
@@ -1,17 +1,12 @@
 package org.ovirt.engine.ui.uicommonweb;
 
 import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map;
 
 import org.ovirt.engine.core.common.businessentities.DbUser;
 import org.ovirt.engine.core.common.businessentities.IVdcQueryable;
 import org.ovirt.engine.core.common.businessentities.VDSGroup;
 import org.ovirt.engine.core.common.businessentities.VmTemplate;
-import org.ovirt.engine.core.common.config.Config;
 import org.ovirt.engine.core.common.interfaces.SearchType;
-import org.ovirt.engine.core.common.queries.ConfigurationValues;
-import org.ovirt.engine.core.common.queries.GetConfigurationValueParameters;
 import org.ovirt.engine.core.common.queries.GetVdsGroupByIdParameters;
 import org.ovirt.engine.core.common.queries.GetVmTemplateParameters;
 import org.ovirt.engine.core.common.queries.IsVmWithSameNameExistParameters;
@@ -19,7 +14,6 @@
 import org.ovirt.engine.core.common.queries.VdcQueryReturnValue;
 import org.ovirt.engine.core.common.queries.VdcQueryType;
 import org.ovirt.engine.core.compat.Guid;
-import org.ovirt.engine.core.compat.KeyValuePairCompat;
 import org.ovirt.engine.ui.frontend.Frontend;
 
 /**
@@ -43,19 +37,6 @@
         }
 
         return null;
-    }
-
-    public static String GetAuthenticationMethod()
-    {
-        VdcQueryReturnValue returnValue =
-                GetConfigFromCache(new 
GetConfigurationValueParameters(ConfigurationValues.AuthenticationMethod, 
Config.DefaultConfigurationVersion));
-
-        if (returnValue != null && returnValue.getSucceeded() && 
returnValue.getReturnValue() != null)
-        {
-            return (String) returnValue.getReturnValue();
-        }
-
-        return ""; //$NON-NLS-1$
     }
 
     public static boolean IsLicenseHasDesktops()
@@ -102,84 +83,6 @@
         }
 
         return null;
-    }
-
-    public static int GetMaxVmPriority()
-    {
-        VdcQueryReturnValue returnValue =
-                GetConfigFromCache(new 
GetConfigurationValueParameters(ConfigurationValues.VmPriorityMaxValue, 
Config.DefaultConfigurationVersion));
-
-        if (returnValue != null && returnValue.getSucceeded() && 
returnValue.getReturnValue() != null)
-        {
-            return (Integer) returnValue.getReturnValue();
-        }
-
-        return 100;
-    }
-
-    public static int RoundPriority(int priority)
-    {
-        int max = GetMaxVmPriority();
-        int medium = max / 2;
-
-        int[] levels = new int[] { 1, medium, max };
-
-        for (int i = 0; i < levels.length; i++)
-        {
-            int lengthToLess = levels[i] - priority;
-            int lengthToMore = levels[i + 1] - priority;
-
-            if (lengthToMore < 0)
-            {
-                continue;
-            }
-
-            return Math.abs(lengthToLess) < lengthToMore ? levels[i] : 
levels[i + 1];
-        }
-
-        return 0;
-    }
-
-    // dictionary to hold cache of all config values (per version) queried by 
client, if the request for them succeeded.
-    private static HashMap<Map.Entry<ConfigurationValues, String>, 
VdcQueryReturnValue> CachedConfigValues =
-            new HashMap<Map.Entry<ConfigurationValues, String>, 
VdcQueryReturnValue>();
-
-    // helper method to clear the config cache (currently used on each login)
-    public static void ClearConfigCache()
-    {
-        if (CachedConfigValues != null)
-        {
-            CachedConfigValues.clear();
-        }
-
-    }
-
-    // method to get an item from config while caching it (config is not 
supposed to change during a session)
-    public static VdcQueryReturnValue 
GetConfigFromCache(GetConfigurationValueParameters parameters)
-    {
-        Map.Entry<ConfigurationValues, String> config_key =
-                new KeyValuePairCompat<ConfigurationValues, 
String>(parameters.getConfigValue(),
-                        parameters.getVersion());
-
-        // populate cache if not in cache already
-        if (!CachedConfigValues.containsKey(config_key))
-        {
-
-            VdcQueryReturnValue returnValue = 
Frontend.RunQuery(VdcQueryType.GetConfigurationValue, parameters);
-
-            // only put result in cache if query succeeded
-            if (returnValue != null && returnValue.getSucceeded())
-            {
-                CachedConfigValues.put(config_key, returnValue);
-            }
-            // return actual return value on error
-            else
-            {
-                return returnValue;
-            }
-        }
-        // return value from cache (either it was in, or the query succeeded, 
and it is now in the cache
-        return CachedConfigValues.get(config_key);
     }
 
 }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java
index 85db6b3..66bbb26 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java
@@ -2886,4 +2886,33 @@
     {
         return "mode=802.3ad miimon=150"; //$NON-NLS-1$
     }
+
+    public static int GetMaxVmPriority()
+    {
+        return (Integer) 
GetConfigValuePreConverted(ConfigurationValues.VmPriorityMaxValue,
+                Config.DefaultConfigurationVersion);
+    }
+
+    public static int RoundPriority(int priority)
+    {
+        int max = GetMaxVmPriority();
+        int medium = max / 2;
+
+        int[] levels = new int[] { 1, medium, max };
+
+        for (int i = 0; i < levels.length; i++)
+        {
+            int lengthToLess = levels[i] - priority;
+            int lengthToMore = levels[i + 1] - priority;
+
+            if (lengthToMore < 0)
+            {
+                continue;
+            }
+
+            return Math.abs(lengthToLess) < lengthToMore ? levels[i] : 
levels[i + 1];
+        }
+
+        return 0;
+    }
 }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
index 92ec833..91e606f 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
@@ -12,7 +12,6 @@
 import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.Frontend;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
-import org.ovirt.engine.ui.uicommonweb.DataProvider;
 import org.ovirt.engine.ui.uicommonweb.Linq;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
@@ -270,9 +269,6 @@
 
         StartProgress(null);
         disableLoginScreen();
-
-        // Clear config cache on login (to make sure we don't use old config 
in a new session)
-        DataProvider.ClearConfigCache();
 
         String fullUserName = (String) getUserName().getEntity();
         String[] parts = GetUserNameParts(fullUserName);
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/autocomplete/SearchSuggestModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/autocomplete/SearchSuggestModel.java
index 81f407e..fdae2ac 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/autocomplete/SearchSuggestModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/autocomplete/SearchSuggestModel.java
@@ -1,5 +1,10 @@
 package org.ovirt.engine.ui.uicommonweb.models.autocomplete;
 
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.ovirt.engine.core.common.queries.ConfigurationValues;
 import org.ovirt.engine.core.compat.ObservableCollection;
 import org.ovirt.engine.core.compat.StringHelper;
 import org.ovirt.engine.core.searchbackend.ISyntaxChecker;
@@ -7,19 +12,15 @@
 import org.ovirt.engine.core.searchbackend.SyntaxContainer;
 import org.ovirt.engine.core.searchbackend.SyntaxError;
 import org.ovirt.engine.core.searchbackend.SyntaxObjectType;
-import org.ovirt.engine.ui.uicommonweb.DataProvider;
+import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel;
 import org.ovirt.engine.ui.uicompat.ITaskTarget;
 import org.ovirt.engine.ui.uicompat.Task;
 import org.ovirt.engine.ui.uicompat.TaskContext;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
 public class SearchSuggestModel extends SearchableListModel implements 
ITaskTarget
 {
-    private ISyntaxChecker syntaxChecker;
+    private final ISyntaxChecker syntaxChecker;
 
     @Override
     public List getItems()
@@ -75,7 +76,9 @@
     {
         setItems(new ObservableCollection<Object>());
 
-        syntaxChecker = 
SyntaxCheckerFactory.CreateUISyntaxChecker(DataProvider.GetAuthenticationMethod());
+        syntaxChecker =
+                SyntaxCheckerFactory.CreateUISyntaxChecker((String)
+                        
AsyncDataProvider.GetConfigValuePreConverted(ConfigurationValues.AuthenticationMethod));
 
         setIsTimerDisabled(true);
     }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateGeneralModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateGeneralModel.java
index 9b65239..a10963e 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateGeneralModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateGeneralModel.java
@@ -14,7 +14,6 @@
 import org.ovirt.engine.core.compat.PropertyChangedEventArgs;
 import org.ovirt.engine.core.compat.StringFormat;
 import org.ovirt.engine.core.compat.StringHelper;
-import org.ovirt.engine.ui.uicommonweb.DataProvider;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
 import org.ovirt.engine.ui.uicompat.ConstantsManager;
@@ -492,8 +491,8 @@
     public String PriorityToString(int value)
     {
         String priorityStr;
-        int highPriority = DataProvider.GetMaxVmPriority();
-        int roundedPriority = DataProvider.RoundPriority(value);
+        int highPriority = AsyncDataProvider.GetMaxVmPriority();
+        int roundedPriority = AsyncDataProvider.RoundPriority(value);
 
         if (roundedPriority == 1)
         {
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
index 3660f23..56f2f5b 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
@@ -15,7 +15,6 @@
 import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.Frontend;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
-import org.ovirt.engine.ui.uicommonweb.DataProvider;
 import org.ovirt.engine.ui.uicommonweb.Linq;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.auth.ApplicationGuids;
@@ -187,9 +186,6 @@
         getDomain().setIsChangable(false);
         getLoginCommand().setIsExecutionAllowed(false);
         getIsAutoConnect().setIsChangable(false);
-
-        // Clear config cache on login (to make sure we don't use old config 
in a new session)
-        DataProvider.ClearConfigCache();
 
         Frontend.RunAction(VdcActionType.LoginUser, new 
LoginUserParameters((String) getUserName().getEntity(),
                 (String) getPassword().getEntity(),
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmGeneralModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmGeneralModel.java
index f63f03a..c406a33 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmGeneralModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmGeneralModel.java
@@ -28,7 +28,6 @@
 import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.Frontend;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
-import org.ovirt.engine.ui.uicommonweb.DataProvider;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
 import org.ovirt.engine.ui.uicompat.ConstantsManager;
@@ -737,18 +736,18 @@
     // allowing using of converters' code available in UICommon.
     public String PriorityToString(int value)
     {
-        int highPriority = DataProvider.GetMaxVmPriority();
-        int roundedPriority = DataProvider.RoundPriority(value);
+        int highPriority = AsyncDataProvider.GetMaxVmPriority();
+        int roundedPriority = AsyncDataProvider.RoundPriority(value);
 
         if (roundedPriority == 1)
         {
             return "Low"; //$NON-NLS-1$
         }
-        else if (roundedPriority == DataProvider.GetMaxVmPriority() / 2)
+        else if (roundedPriority == AsyncDataProvider.GetMaxVmPriority() / 2)
         {
             return "Medium"; //$NON-NLS-1$
         }
-        else if (roundedPriority == DataProvider.GetMaxVmPriority())
+        else if (roundedPriority == AsyncDataProvider.GetMaxVmPriority())
         {
             return "High"; //$NON-NLS-1$
         }


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

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

Reply via email to