Hello Yair Zaslavsky,

I'd like you to do a code review.  Please visit

    http://gerrit.ovirt.org/30460

to review the following change.

Change subject: aaa: Using collection instead of list
......................................................................

aaa: Using collection instead of list

Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1120720
Change-Id: I5aec7cc3de308e5be3601b87c0543267fa5c018d
Topic: AAA
Signed-off-by: Yair Zaslavsky <[email protected]>
---
M 
backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java
M 
backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/SearchQueryParsingUtils.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/aaa/DirectoryUtils.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SyncUsers.java
4 files changed, 45 insertions(+), 40 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/60/30460/1

diff --git 
a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java
 
b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java
index a8abdd3..7c16814 100644
--- 
a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java
+++ 
b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java
@@ -1,7 +1,7 @@
 package org.ovirt.engine.core.aaa;
 
 import java.util.ArrayList;
-import java.util.List;
+import java.util.Collection;
 
 import org.ovirt.engine.api.extensions.Base;
 import org.ovirt.engine.api.extensions.ExtMap;
@@ -13,7 +13,7 @@
 
 
     private static interface QueryResultHandler {
-        public boolean handle(List<ExtMap> queryResults);
+        public boolean handle(Collection<ExtMap> queryResults);
     }
 
     private static final int QUERIES_RESULTS_LIMIT = 1000;
@@ -39,14 +39,14 @@
         return ret;
     }
 
-    public static List<ExtMap> fetchPrincipalsByIdsRecursively(
+    public static Collection<ExtMap> fetchPrincipalsByIdsRecursively(
             final ExtensionProxy extension,
             final String namespace,
-            final List<String> ids) {
+            final Collection<String> ids) {
                 return findPrincipalsByIds(extension, namespace, ids, true, 
true);
     }
 
-    public static List<ExtMap> queryPrincipalRecords(
+    public static Collection<ExtMap> queryPrincipalRecords(
             final ExtensionProxy extension,
             final String namespace,
             final ExtMap filter,
@@ -73,7 +73,7 @@
 
     }
 
-    public static List<ExtMap> queryGroupRecords(
+    public static Collection<ExtMap> queryGroupRecords(
             final ExtensionProxy extension,
             final String namespace,
             final ExtMap filter,
@@ -100,15 +100,15 @@
 
     }
 
-    public static List<ExtMap> populatePrincipalRecords(
+    public static Collection<ExtMap> populatePrincipalRecords(
             final ExtensionProxy extension,
             final String namespace,
             final ExtMap input) {
-        final List<ExtMap> principalRecords = new ArrayList<>();
+        final Collection<ExtMap> principalRecords = new ArrayList<>();
         queryImpl(extension, namespace, input, new QueryResultHandler() {
 
             @Override
-            public boolean handle(List<ExtMap> queryResults) {
+            public boolean handle(Collection<ExtMap> queryResults) {
                 boolean result = true;
                 for (ExtMap queryResult : queryResults) {
                     if (principalRecords.size() < QUERIES_RESULTS_LIMIT) {
@@ -124,12 +124,12 @@
         return principalRecords;
     }
 
-    public static List<ExtMap> populateGroups(final ExtensionProxy extension, 
final String namespace,
+    public static Collection<ExtMap> populateGroups(final ExtensionProxy 
extension, final String namespace,
             final ExtMap input) {
-        final List<ExtMap> groups = new ArrayList<>();
+        final Collection<ExtMap> groups = new ArrayList<>();
         queryImpl(extension, namespace, input, new QueryResultHandler() {
             @Override
-            public boolean handle(List<ExtMap> queryResults) {
+            public boolean handle(Collection<ExtMap> queryResults) {
 
                 boolean result = true;
                 for (ExtMap queryResult : queryResults) {
@@ -163,7 +163,7 @@
                                 input
                         )
                 ).get(Authz.InvokeKeys.QUERY_OPAQUE);
-        List<ExtMap> result = null;
+        Collection<ExtMap> result = null;
         try {
             do {
                 result = extension.invoke(new ExtMap().mput(
@@ -190,15 +190,15 @@
         }
     }
 
-    public static List<ExtMap> findPrincipalsByIds(
+    public static Collection<ExtMap> findPrincipalsByIds(
             final ExtensionProxy extension,
             final String namespace,
-            final List<String> ids,
+            final Collection<String> ids,
             final boolean groupsResolving,
             final boolean groupsResolvingRecursive
             ) {
-        List<ExtMap> results = new ArrayList<>();
-        for (List<String> batch : 
SearchQueryParsingUtils.getIdsBatches(extension.getContext(), ids)) {
+        Collection<ExtMap> results = new ArrayList<>();
+        for (Collection<String> batch : 
SearchQueryParsingUtils.getIdsBatches(extension.getContext(), ids)) {
             results.addAll(
                     queryPrincipalRecords(
                             extension,
@@ -215,15 +215,15 @@
         return results;
     }
 
-    public static List<ExtMap> findGroupRecordsByIds(
+    public static Collection<ExtMap> findGroupRecordsByIds(
             final ExtensionProxy extension,
             final String namespace,
-            final List<String> ids,
+            final Collection<String> ids,
             final boolean groupsResolving,
             final boolean groupsResolvingRecursive
             ) {
-        List<ExtMap> results = new ArrayList<>();
-        for (List<String> batch : 
SearchQueryParsingUtils.getIdsBatches(extension.getContext(), ids)) {
+        Collection<ExtMap> results = new ArrayList<>();
+        for (Collection<String> batch : 
SearchQueryParsingUtils.getIdsBatches(extension.getContext(), ids)) {
             results.addAll(
                     queryGroupRecords(
                             extension,
diff --git 
a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/SearchQueryParsingUtils.java
 
b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/SearchQueryParsingUtils.java
index 3b578bc..636a8b4 100644
--- 
a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/SearchQueryParsingUtils.java
+++ 
b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/SearchQueryParsingUtils.java
@@ -2,6 +2,7 @@
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -40,7 +41,7 @@
         attributesToKeys.put("$PRINCIPAL_NAME", Authz.PrincipalRecord.NAME);
     }
 
-    public static ExtMap generateQueryMap(List<String> ids, ExtUUID 
queryEntity) {
+    public static ExtMap generateQueryMap(Collection<String> ids, ExtUUID 
queryEntity) {
         ExtMap result = new ExtMap().mput(
                 Authz.InvokeKeys.QUERY_ENTITY,
                 queryEntity);
@@ -128,12 +129,13 @@
         return queryPrefix;
     }
 
-    public static List<List<String>> getIdsBatches(final ExtMap context, final 
List<String> ids) {
+    public static Collection<? extends Collection<String>> getIdsBatches(final 
ExtMap context, final Collection<String> ids) {
 
+        List<String> idsList = new ArrayList<String>(ids);
         int chunk = context.<Integer> 
get(Authz.ContextKeys.QUERY_MAX_FILTER_SIZE, 100) - 10;
         List<List<String>> batchOfIdsList = new ArrayList<>();
         for (int counter = 0; counter < ids.size(); counter = counter + chunk) 
{
-            batchOfIdsList.add(ids.subList(counter, counter + chunk > 
ids.size() ? ids.size() : counter + chunk));
+            batchOfIdsList.add(idsList.subList(counter, counter + chunk > 
idsList.size() ? idsList.size() : counter + chunk));
         }
         return batchOfIdsList;
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/aaa/DirectoryUtils.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/aaa/DirectoryUtils.java
index 46634fe..5ea5230 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/aaa/DirectoryUtils.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/aaa/DirectoryUtils.java
@@ -2,6 +2,7 @@
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
@@ -32,7 +33,7 @@
         return results;
     }
 
-    public static List<DirectoryUser> findDirectoryUsersByQuery(
+    public static Collection<DirectoryUser> findDirectoryUsersByQuery(
             final ExtensionProxy extension,
             final String namespace,
             final String query) {
@@ -53,18 +54,18 @@
             final boolean resolveGroups,
             final boolean resolveGroupsRecursive
             ) {
-        List<DirectoryGroup> groups =
+        Collection<DirectoryGroup> groups =
                 findDirectoryGroupsByIds(extension, namespace, 
Arrays.asList(id), resolveGroups, resolveGroupsRecursive);
-        if (groups.isEmpty()) {
+        if (groups.size() == 0) {
             return null;
         }
-        return groups.get(0);
+        return new ArrayList<DirectoryGroup>(groups).get(0);
     }
 
-    public static List<DirectoryUser> findDirectoryUserByIds(
+    public static Collection<DirectoryUser> findDirectoryUserByIds(
             final ExtensionProxy extension,
             final String namespace,
-            final List<String> ids,
+            final Collection<String> ids,
             final boolean groupsResolving,
             final boolean groupsResolvingRecursive
             ) {
@@ -87,20 +88,20 @@
             final boolean groupsResolving,
             final boolean groupsResolvingRecursive
             ) {
-        List<DirectoryUser> users =
+        Collection<DirectoryUser> users =
                 findDirectoryUserByIds(
                         extension,
                         namespace,
                         Arrays.asList(id),
                         groupsResolving,
                         groupsResolvingRecursive);
-        if (users.isEmpty()) {
+        if (users.size() == 0) {
             return null;
         }
-        return users.get(0);
+        return new ArrayList<DirectoryUser>(users).get(0);
     }
 
-    public static List<DirectoryGroup> findDirectoryGroupsByQuery(
+    public static Collection<DirectoryGroup> findDirectoryGroupsByQuery(
             final ExtensionProxy extension,
             final String namespace,
             final String query) {
@@ -112,10 +113,10 @@
                 false);
     }
 
-    public static List<DirectoryGroup> findDirectoryGroupsByIds(
+    public static Collection<DirectoryGroup> findDirectoryGroupsByIds(
             final ExtensionProxy extension,
             final String namespace,
-            final List<String> ids,
+            final Collection<String> ids,
             final boolean resolveGroups,
             final boolean resolveGroupsRecursive) {
         return mapGroupRecordsToDirectoryGroups(AuthzUtils.getName(extension),
@@ -190,7 +191,8 @@
         return accumulator;
     }
 
-    public static List<DirectoryGroup> mapGroupRecordsToDirectoryGroups(final 
String authzName, final List<ExtMap> groups) {
+    public static Collection<DirectoryGroup> 
mapGroupRecordsToDirectoryGroups(final String authzName,
+            final Collection<ExtMap> groups) {
         List<DirectoryGroup> results = new ArrayList<>();
         for (ExtMap group : groups) {
             results.add(mapGroupRecordToDirectoryGroup(authzName, group));
@@ -198,7 +200,8 @@
         return results;
     }
 
-    public static List<DirectoryUser> 
mapPrincipalRecordsToDirectoryUsers(final String authzName, final List<ExtMap> 
users) {
+    public static Collection<DirectoryUser> 
mapPrincipalRecordsToDirectoryUsers(final String authzName,
+            final Collection<ExtMap> users) {
         List<DirectoryUser> results = new ArrayList<>();
         for (ExtMap user : users) {
             results.add(mapPrincipalRecordToDirectoryUser(authzName, user));
@@ -206,7 +209,7 @@
         return results;
     }
 
-    private static List<DirectoryUser> queryDirectoryUsers(
+    private static Collection<DirectoryUser> queryDirectoryUsers(
             final ExtensionProxy extension,
             final String namespace,
             final ExtMap filter,
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SyncUsers.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SyncUsers.java
index 8ad22c5..107d18c 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SyncUsers.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SyncUsers.java
@@ -47,7 +47,7 @@
                         ExtMap principal :
                         AuthzUtils.fetchPrincipalsByIdsRecursively(
                                 authzExtension, userIdsPerNamespace.getKey(),
-                                new 
ArrayList<String>(userIdsPerNamespace.getValue()))
+                                userIdsPerNamespace.getValue())
                         ) {
                             DirectoryUtils.flatGroups(principal);
                             DbUser dbUser = 
DirectoryUtils.mapPrincipalRecordToDbUser(authz, principal);


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5aec7cc3de308e5be3601b87c0543267fa5c018d
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.5
Gerrit-Owner: Alon Bar-Lev <[email protected]>
Gerrit-Reviewer: Yair Zaslavsky <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to