Laszlo Hornyak has uploaded a new change for review.

Change subject: engine: remove lazy-initialization from SearchObjects (3/N)
......................................................................

engine: remove lazy-initialization from SearchObjects (3/N)

The init method can be removed by initializing SAFE_SEARCH_EXPR with a
non-empty value.

Change-Id: I17788e5ddb2c83d62a90ac51800fc8ee35fd0a7a
Signed-off-by: Laszlo Hornyak <[email protected]>
---
M 
backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SearchObjects.java
1 file changed, 39 insertions(+), 39 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/16/14616/1

diff --git 
a/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SearchObjects.java
 
b/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SearchObjects.java
index f4c156d..98da025 100644
--- 
a/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SearchObjects.java
+++ 
b/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SearchObjects.java
@@ -1,6 +1,8 @@
 package org.ovirt.engine.core.searchbackend;
 
+import java.util.Collections;
 import java.util.HashSet;
+import java.util.Set;
 
 public final class SearchObjects {
     // objects
@@ -45,43 +47,44 @@
     private static final String HOST_BY_CPU = "Host: sortby cpu_usage desc";
     private static final String DATACENTER_BY_NAME = "DataCenter: sortby name";
     private static final String VM_BY_STATUS = "Vms: status=Up or 
status=PoweringUp or status=PoweredDown or status=MigratingTo or 
status=WaitForLaunch or status=RebootInProgress or status=PoweringDown or 
status=Paused or status=Unknown sortby cpu_usage desc";
-    private static final HashSet<String> SAFE_SEARCH_EXPR = new  
HashSet<String>();
+    @SuppressWarnings("serial")
+    private static final Set<String> SAFE_SEARCH_EXPR = 
Collections.unmodifiableSet(new HashSet<String>() {
+        {
+            final char SEPERATOR = ':';
 
-    private static void init() {
-        final char SEPERATOR = ':';
-
-        SAFE_SEARCH_EXPR.add(VDS_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDS_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VM_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VM_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(AUDIT_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(AUDIT_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(TEMPLATE_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(TEMPLATE_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_USER_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_USER_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_POOL_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_POOL_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_CLUSTER_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_CLUSTER_PLU_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_STORAGE_POOL_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_STORAGE_DOMAIN_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_STORAGE_DOMAIN_PLU_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(VDC_STORAGE_DOMAIN_IMAGE_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(DISK_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(DISK_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(GLUSTER_VOLUME_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(GLUSTER_VOLUME_PLU_OBJ_NAME.toLowerCase() + 
SEPERATOR);
-        SAFE_SEARCH_EXPR.add(QUOTA_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(QUOTA_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(NETWORK_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(NETWORK_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
-        SAFE_SEARCH_EXPR.add(ALERT.toLowerCase());
-        SAFE_SEARCH_EXPR.add(ERROR.toLowerCase());
-        SAFE_SEARCH_EXPR.add(HOST_BY_CPU.toLowerCase());
-        SAFE_SEARCH_EXPR.add(DATACENTER_BY_NAME.toLowerCase());
-        SAFE_SEARCH_EXPR.add(VM_BY_STATUS.toLowerCase());
-    }
+            add(VDS_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDS_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VM_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VM_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(AUDIT_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(AUDIT_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(TEMPLATE_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(TEMPLATE_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_USER_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_USER_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_POOL_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_POOL_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_CLUSTER_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_CLUSTER_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_STORAGE_POOL_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_STORAGE_DOMAIN_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_STORAGE_DOMAIN_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(VDC_STORAGE_DOMAIN_IMAGE_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(DISK_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(DISK_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(GLUSTER_VOLUME_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(GLUSTER_VOLUME_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(QUOTA_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(QUOTA_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(NETWORK_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(NETWORK_PLU_OBJ_NAME.toLowerCase() + SEPERATOR);
+            add(ALERT.toLowerCase());
+            add(ERROR.toLowerCase());
+            add(HOST_BY_CPU.toLowerCase());
+            add(DATACENTER_BY_NAME.toLowerCase());
+            add(VM_BY_STATUS.toLowerCase());
+        }
+    });
 
     /**
      * Determines if a search expression is safe.
@@ -89,9 +92,6 @@
      * @return boolean
      */
     public static boolean isSafeExpression(String expr) {
-        if (SAFE_SEARCH_EXPR.size() == 0) {
-            init();
-        }
         return SAFE_SEARCH_EXPR.contains(expr.toLowerCase());
     }
 }


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

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

Reply via email to