This is an automated email from the ASF dual-hosted git repository.

daim pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 5fee417d9c OAK-11513 : removed usage of Guava's Iterables.toArray 
(#2107)
5fee417d9c is described below

commit 5fee417d9cd384e6a01b8088d17fa817e4929c22
Author: Rishabh Kumar <[email protected]>
AuthorDate: Fri Feb 21 20:21:32 2025 +0530

    OAK-11513 : removed usage of Guava's Iterables.toArray (#2107)
    
    Co-authored-by: Rishabh Kumar <[email protected]>
---
 .../impl/principal/DynamicGroupValidatorProvider.java        |  3 ++-
 .../impl/principal/ExternalGroupPrincipalProvider.java       |  2 +-
 .../impl/principal/ExternalUserValidatorProvider.java        |  3 ++-
 .../external/impl/principal/AbstractPrincipalTest.java       |  2 +-
 .../principal/ExternalIdentityRepositoryInitializerTest.java |  3 ++-
 .../spi/security/authorization/cug/impl/TopLevelPaths.java   |  3 ++-
 .../impl/PrincipalBasedAccessControlManager.java             |  4 ++--
 .../principalbased/impl/PrincipalPolicyImporter.java         |  3 ++-
 .../jackrabbit/oak/plugins/index/property/PropertyIndex.java |  3 ++-
 .../oak/plugins/index/property/jmx/PropertyIndexStats.java   |  7 ++++---
 .../oak/plugins/observation/filter/FilterBuilder.java        |  3 ++-
 .../oak/security/authorization/AuthorizationContext.java     |  2 +-
 .../accesscontrol/AccessControlManagerImplTest.java          |  3 ++-
 .../apache/jackrabbit/oak/security/privilege/JcrAllTest.java |  3 ++-
 .../security/privilege/PrivilegeDefinitionWriterTest.java    |  3 ++-
 .../jackrabbit/oak/security/user/UserInitializerTest.java    |  7 ++++---
 .../jackrabbit/oak/security/user/action/GroupActionTest.java |  4 ++--
 .../apache/jackrabbit/oak/jcr/observation/EventFactory.java  |  3 +--
 .../apache/jackrabbit/oak/jcr/session/SessionNamespaces.java |  6 +++---
 .../jackrabbit/oak/jcr/observation/ObservationTest.java      |  3 ++-
 .../jackrabbit/oak/plugins/index/lucene/IndexCopier.java     |  6 +++---
 .../jackrabbit/oak/plugins/index/lucene/IndexTracker.java    |  3 ++-
 .../oak/plugins/index/lucene/LuceneIndexMBeanImpl.java       |  7 ++++---
 .../plugins/index/lucene/directory/CopyOnWriteDirectory.java |  3 ++-
 .../plugins/index/lucene/util/IndexDefinitionBuilder.java    |  2 +-
 .../jackrabbit/oak/plugins/index/search/Aggregate.java       |  4 ++--
 .../oak/plugins/index/search/PropertyDefinition.java         |  4 ++--
 .../plugins/index/search/spi/query/FulltextIndexTracker.java |  3 ++-
 .../jackrabbit/oak/plugins/index/search/util/ConfigUtil.java |  3 ++-
 .../plugins/index/search/util/IndexDefinitionBuilder.java    |  2 +-
 .../jackrabbit/oak/plugins/index/search/AggregateTest.java   |  4 ++--
 .../oak/plugins/document/DocumentNodeStoreMBeanImpl.java     |  8 ++++----
 .../jackrabbit/oak/plugins/document/RevisionVector.java      | 12 ++++++------
 .../oak/plugins/document/bundlor/BundlingConfigHandler.java  |  3 ++-
 .../plugins/document/secondary/SecondaryStoreCacheTest.java  |  3 ++-
 35 files changed, 78 insertions(+), 59 deletions(-)

diff --git 
a/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/DynamicGroupValidatorProvider.java
 
b/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/DynamicGroupValidatorProvider.java
index b18f9f114f..2fdbf64cc1 100644
--- 
a/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/DynamicGroupValidatorProvider.java
+++ 
b/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/DynamicGroupValidatorProvider.java
@@ -23,6 +23,7 @@ import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.plugins.tree.RootProvider;
 import org.apache.jackrabbit.oak.plugins.tree.TreeProvider;
@@ -78,7 +79,7 @@ class DynamicGroupValidatorProvider extends ValidatorProvider 
implements Externa
         this.rootBefore = rootProvider.createReadOnlyRoot(before);
         this.rootAfter = rootProvider.createReadOnlyRoot(after);
         
-        return new SubtreeValidator(new DynamicGroupValidator(), 
Iterables.toArray(PathUtils.elements(groupRootPath), String.class));
+        return new SubtreeValidator(new DynamicGroupValidator(), 
IterableUtils.toArray(PathUtils.elements(groupRootPath), String.class));
     }
     
     private class DynamicGroupValidator extends DefaultValidator {
diff --git 
a/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java
 
b/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java
index 6b0d7d9425..22dd6dae13 100644
--- 
a/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java
+++ 
b/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProvider.java
@@ -166,7 +166,7 @@ class ExternalGroupPrincipalProvider implements 
PrincipalProvider, ExternalIdent
         this.hasOnlyDynamicGroups = hasOnlyDynamicGroups;
 
         autoMembershipPrincipals = new AutoMembershipPrincipals(userManager, 
-                Collections.singletonMap(idpName, 
Iterables.toArray(IterableUtils.chainedIterable(syncConfig.user().getAutoMembership(),syncConfig.group().getAutoMembership()),
 String.class)),
+                Collections.singletonMap(idpName, 
IterableUtils.toArray(IterableUtils.chainedIterable(syncConfig.user().getAutoMembership(),syncConfig.group().getAutoMembership()),
 String.class)),
                 Collections.singletonMap(idpName, 
syncConfig.user().getAutoMembershipConfig()));
         groupAutoMembershipPrincipals = (idpNamesWithDynamicGroups.isEmpty()) 
? null : 
                 new AutoMembershipPrincipals(userManager, 
diff --git 
a/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalUserValidatorProvider.java
 
b/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalUserValidatorProvider.java
index e8204604ad..351a3601df 100644
--- 
a/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalUserValidatorProvider.java
+++ 
b/oak-auth-external/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalUserValidatorProvider.java
@@ -22,6 +22,7 @@ import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.plugins.tree.RootProvider;
 import org.apache.jackrabbit.oak.plugins.tree.TreeProvider;
 import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
@@ -84,7 +85,7 @@ class ExternalUserValidatorProvider extends ValidatorProvider 
implements Externa
     protected @NotNull Validator getRootValidator(NodeState before, NodeState 
after, CommitInfo info) {
         this.rootBefore = rootProvider.createReadOnlyRoot(before);
         this.rootAfter = rootProvider.createReadOnlyRoot(after);
-        return new SubtreeValidator(new ExternalUserValidator(), 
Iterables.toArray(PathUtils.elements(authorizableRootPath), String.class));
+        return new SubtreeValidator(new ExternalUserValidator(), 
IterableUtils.toArray(PathUtils.elements(authorizableRootPath), String.class));
     }
     
     private class ExternalUserValidator extends DefaultValidator {
diff --git 
a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/AbstractPrincipalTest.java
 
b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/AbstractPrincipalTest.java
index 0a341e506a..dafe3ca3bd 100644
--- 
a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/AbstractPrincipalTest.java
+++ 
b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/AbstractPrincipalTest.java
@@ -82,7 +82,7 @@ public abstract class AbstractPrincipalTest extends 
AbstractExternalAuthTest {
     }
 
     @NotNull String[] getAutoMembership() {
-        return 
Iterables.toArray(IterableUtils.chainedIterable(syncConfig.user().getAutoMembership(),syncConfig.group().getAutoMembership()),
 String.class);
+        return 
IterableUtils.toArray(IterableUtils.chainedIterable(syncConfig.user().getAutoMembership(),syncConfig.group().getAutoMembership()),
 String.class);
     }
     
     @NotNull AutoMembershipConfig getAutoMembershipConfig() {
diff --git 
a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalIdentityRepositoryInitializerTest.java
 
b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalIdentityRepositoryInitializerTest.java
index 59094ca51b..b2bb44e37e 100644
--- 
a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalIdentityRepositoryInitializerTest.java
+++ 
b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalIdentityRepositoryInitializerTest.java
@@ -19,6 +19,7 @@ package 
org.apache.jackrabbit.oak.spi.security.authentication.external.impl.prin
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.plugins.index.IndexConstants;
 import 
org.apache.jackrabbit.oak.spi.security.authentication.external.AbstractExternalAuthTest;
 import 
org.apache.jackrabbit.oak.spi.security.authentication.external.impl.ExternalIdentityConstants;
@@ -64,7 +65,7 @@ public class ExternalIdentityRepositoryInitializerTest 
extends AbstractExternalA
         assertEquals(isUnique, TreeUtil.getBoolean(tree, 
IndexConstants.UNIQUE_PROPERTY_NAME));
         assertArrayEquals(
                 propName, new String[]{propName},
-                Iterables.toArray(TreeUtil.getStrings(tree, 
IndexConstants.PROPERTY_NAMES), String.class));
+                IterableUtils.toArray(TreeUtil.getStrings(tree, 
IndexConstants.PROPERTY_NAMES), String.class));
         Iterable<String> declaringNtNames = TreeUtil.getStrings(tree, 
IndexConstants.DECLARING_NODE_TYPES);
         assertNull(declaringNtNames);
     }
diff --git 
a/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/TopLevelPaths.java
 
b/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/TopLevelPaths.java
index eae8a65339..e38e35c51e 100644
--- 
a/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/TopLevelPaths.java
+++ 
b/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/TopLevelPaths.java
@@ -22,6 +22,7 @@ import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.util.Text;
 import org.jetbrains.annotations.NotNull;
 
@@ -85,7 +86,7 @@ class TopLevelPaths implements CugConstants {
             cnt = hiddenTopCnt.getValue(Type.LONG);
             if (cnt <= MAX_CNT) {
                 PropertyState hidden = 
root.getTree(PathUtils.ROOT_PATH).getProperty(HIDDEN_NESTED_CUGS);
-                paths = (hidden == null) ? new String[0] : 
Iterables.toArray(hidden.getValue(Type.STRINGS), String.class);
+                paths = (hidden == null) ? new String[0] : 
IterableUtils.toArray(hidden.getValue(Type.STRINGS), String.class);
             } else {
                 paths = new String[0];
             }
diff --git 
a/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalBasedAccessControlManager.java
 
b/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalBasedAccessControlManager.java
index 7362d75fbc..a1b1df7db0 100644
--- 
a/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalBasedAccessControlManager.java
+++ 
b/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalBasedAccessControlManager.java
@@ -235,9 +235,9 @@ class PrincipalBasedAccessControlManager extends 
AbstractAccessControlManager im
 
             if (ReadPolicy.hasEffectiveReadPolicy(readPaths, oakPath)) {
                 Iterable<AccessControlPolicy> iterable = 
IterableUtils.chainedIterable(acls, Collections.singleton(ReadPolicy.INSTANCE));
-                return Iterables.toArray(iterable, AccessControlPolicy.class);
+                return IterableUtils.toArray(iterable, 
AccessControlPolicy.class);
             } else {
-                return Iterables.toArray(acls, 
PrincipalAccessControlList.class);
+                return IterableUtils.toArray(acls, 
PrincipalAccessControlList.class);
             }
         } catch (ParseException e) {
             String msg = "Error while collecting effective policies at " 
+absPath;
diff --git 
a/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalPolicyImporter.java
 
b/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalPolicyImporter.java
index fef2113034..95919b409f 100644
--- 
a/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalPolicyImporter.java
+++ 
b/oak-authorization-principalbased/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/principalbased/impl/PrincipalPolicyImporter.java
@@ -22,6 +22,7 @@ import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.commons.PathUtils;
 import org.apache.jackrabbit.oak.commons.StringUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.conditions.Validate;
 import org.apache.jackrabbit.oak.namepath.NamePathMapper;
 import org.apache.jackrabbit.oak.spi.security.SecurityProvider;
@@ -308,7 +309,7 @@ class PrincipalPolicyImporter implements 
ProtectedNodeImporter, ProtectedPropert
                 log.error("Missing rep:effectivePath for entry {} of policy at 
{}", this, policy.getOakPath());
                 throw new ConstraintViolationException("Entries for 
PrincipalAccessControlList must specify an effective path.");
             }
-            policy.addEntry(StringUtils.emptyToNull(effectivePath), 
Iterables.toArray(privileges, Privilege.class), restrictions, mvRestrictions);
+            policy.addEntry(StringUtils.emptyToNull(effectivePath), 
IterableUtils.toArray(privileges, Privilege.class), restrictions, 
mvRestrictions);
         }
     }
 }
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndex.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndex.java
index 1560fe57f7..e78436141e 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndex.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndex.java
@@ -23,6 +23,7 @@ import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.TYPE_PROPER
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.conditions.Validate;
 import org.apache.jackrabbit.oak.plugins.index.IndexConstants;
 import org.apache.jackrabbit.oak.plugins.index.IndexSelectionPolicy;
@@ -216,7 +217,7 @@ class PropertyIndex implements QueryIndex {
     private static String[] getOptionalStrings(NodeState defn, String 
propertyName) {
         PropertyState ps = defn.getProperty(propertyName);
         if (ps != null) {
-            return Iterables.toArray(ps.getValue(Type.STRINGS), String.class);
+            return IterableUtils.toArray(ps.getValue(Type.STRINGS), 
String.class);
         }
         return null;
     }
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStats.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStats.java
index 49023b4ecd..182ed26588 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStats.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStats.java
@@ -42,6 +42,7 @@ import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.jmx.AnnotatedStandardMBean;
 import org.apache.jackrabbit.oak.osgi.OsgiWhiteboard;
 import org.apache.jackrabbit.oak.plugins.tree.factories.TreeFactory;
@@ -141,7 +142,7 @@ public class PropertyIndexStats extends 
AnnotatedStandardMBean implements Proper
                     status = String.format("stats cannot be determined as 
number of values exceed the max limit of " +
                             "[%d]. Estimated value count [%d]", maxValueCount, 
childNodeCount);
                 } else {
-                    String[] values = Iterables.toArray(
+                    String[] values = IterableUtils.toArray(
                             Iterables.limit(data.getChildNodeNames(), 
maxValueCount),
                             String.class
                     );
@@ -199,7 +200,7 @@ public class PropertyIndexStats extends 
AnnotatedStandardMBean implements Proper
         }
 
         if (maxPathLimitBreachedAtLevel < 0) {
-            return Iterables.toArray(paths, String.class);
+            return IterableUtils.toArray(paths, String.class);
         }
 
         //If max limit for path is reached then we can safely
@@ -215,7 +216,7 @@ public class PropertyIndexStats extends 
AnnotatedStandardMBean implements Proper
                 }
             }
         }
-        return Iterables.toArray(result, String.class);
+        return IterableUtils.toArray(result, String.class);
     }
 
     @SuppressWarnings("unchecked")
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/FilterBuilder.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/FilterBuilder.java
index 229f34c863..421fa1a493 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/FilterBuilder.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/FilterBuilder.java
@@ -41,6 +41,7 @@ import java.util.regex.Pattern;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.api.PropertyState;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.plugins.nodetype.TypePredicate;
 import 
org.apache.jackrabbit.oak.plugins.observation.filter.UniversalFilter.Selector;
 import org.apache.jackrabbit.oak.plugins.tree.factories.RootFactory;
@@ -463,7 +464,7 @@ public final class FilterBuilder {
         return new FilterConfigMBean() {
             @Override
             public String[] getPaths() {
-                return Iterables.toArray(pathsForMBean, String.class);
+                return IterableUtils.toArray(pathsForMBean, String.class);
             }
 
             @Override
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContext.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContext.java
index f878dfce79..97b92786ba 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContext.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContext.java
@@ -31,7 +31,7 @@ final class AuthorizationContext implements Context, 
AccessControlConstants, Per
 
     private static final String[] NODE_NAMES = POLICY_NODE_NAMES.toArray(new 
String[0]);
     private static final String[] PROPERTY_NAMES = 
ACE_PROPERTY_NAMES.toArray(new String[0]);
-    private static final String[] NT_NAMES = 
Iterables.toArray(IterableUtils.chainedIterable(AC_NODETYPE_NAMES, 
PERMISSION_NODETYPE_NAMES), String.class);
+    private static final String[] NT_NAMES = 
IterableUtils.toArray(IterableUtils.chainedIterable(AC_NODETYPE_NAMES, 
PERMISSION_NODETYPE_NAMES), String.class);
 
     private static final Context INSTANCE = new AuthorizationContext();
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImplTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImplTest.java
index 0e1c1759f4..fb9cff661e 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImplTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImplTest.java
@@ -32,6 +32,7 @@ import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.namepath.NameMapper;
 import org.apache.jackrabbit.oak.namepath.NamePathMapper;
@@ -1356,7 +1357,7 @@ public class AccessControlManagerImplTest extends 
AbstractAccessControlTest impl
         assertEquals(4, acl.getAccessControlEntries().length);
 
         Iterable<Tree> aceTrees = 
root.getTree(testPath).getChild(REP_POLICY).getChildren();
-        String[] aceNodeNames = 
Iterables.toArray(Iterables.transform(aceTrees, Tree::getName), String.class);
+        String[] aceNodeNames = 
IterableUtils.toArray(Iterables.transform(aceTrees, Tree::getName), 
String.class);
         assertArrayEquals(new String[]{"allow", "allow1", "deny2", "deny3"}, 
aceNodeNames);
     }
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/JcrAllTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/JcrAllTest.java
index d40d7c9054..519c61e56c 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/JcrAllTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/JcrAllTest.java
@@ -23,6 +23,7 @@ import javax.jcr.security.Privilege;
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.api.security.authorization.PrivilegeManager;
 import org.apache.jackrabbit.oak.AbstractSecurityTest;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.namepath.NamePathMapper;
 import 
org.apache.jackrabbit.oak.spi.security.authorization.permission.Permissions;
 import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeBits;
@@ -67,7 +68,7 @@ public class JcrAllTest extends AbstractSecurityTest 
implements PrivilegeConstan
 
         PrivilegeManager pMgr = 
getSecurityProvider().getConfiguration(PrivilegeConfiguration.class).getPrivilegeManager(root,
 NamePathMapper.DEFAULT);
         Iterable<Privilege> declaredAggr = 
Arrays.asList(pMgr.getPrivilege(JCR_ALL).getDeclaredAggregatePrivileges());
-        String[] allAggregates = Iterables.toArray(Iterables.transform(
+        String[] allAggregates = IterableUtils.toArray(Iterables.transform(
                 declaredAggr,
                 privilege -> requireNonNull(privilege).getName()), 
String.class);
         PrivilegeBits all2 = bitsProvider.getBits(allAggregates);
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriterTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriterTest.java
index 448cb07b82..314e4d2d6a 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriterTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriterTest.java
@@ -25,6 +25,7 @@ import org.apache.jackrabbit.oak.api.ContentRepository;
 import org.apache.jackrabbit.oak.api.ContentSession;
 import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.spi.security.OpenSecurityProvider;
 import 
org.apache.jackrabbit.oak.spi.security.privilege.ImmutablePrivilegeDefinition;
 import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeConstants;
@@ -81,7 +82,7 @@ public class PrivilegeDefinitionWriterTest extends 
AbstractSecurityTest implemen
         assertTrue(TreeUtil.getBoolean(tmpTree, REP_IS_ABSTRACT));
         assertArrayEquals(
                 new String[] {JCR_READ_ACCESS_CONTROL, 
JCR_MODIFY_ACCESS_CONTROL},
-                Iterables.toArray(TreeUtil.getStrings(tmpTree, 
REP_AGGREGATES), String.class));
+                IterableUtils.toArray(TreeUtil.getStrings(tmpTree, 
REP_AGGREGATES), String.class));
     }
 
     @Test(expected = RepositoryException.class)
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserInitializerTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserInitializerTest.java
index 6edd57e099..491d79e5d6 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserInitializerTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserInitializerTest.java
@@ -27,6 +27,7 @@ import org.apache.jackrabbit.oak.api.ContentRepository;
 import org.apache.jackrabbit.oak.api.ContentSession;
 import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.jdkcompat.Java23Subject;
 import org.apache.jackrabbit.oak.commons.PathUtils;
 import org.apache.jackrabbit.oak.namepath.NamePathMapper;
@@ -135,14 +136,14 @@ public class UserInitializerTest extends 
AbstractSecurityTest {
         Iterable<String> declaringNtNames = TreeUtil.getStrings(princName, 
IndexConstants.DECLARING_NODE_TYPES);
         assertArrayEquals(
                 new String[]{UserConstants.NT_REP_AUTHORIZABLE},
-                Iterables.toArray(declaringNtNames, String.class));
+                IterableUtils.toArray(declaringNtNames, String.class));
 
         Tree repMembers = oakIndex.getChild("repMembers");
         assertIndexDefinition(repMembers, UserConstants.REP_MEMBERS, false);
         declaringNtNames = TreeUtil.getStrings(repMembers, 
IndexConstants.DECLARING_NODE_TYPES);
         assertArrayEquals(
                 new String[]{UserConstants.NT_REP_MEMBER_REFERENCES},
-                Iterables.toArray(declaringNtNames, String.class));
+                IterableUtils.toArray(declaringNtNames, String.class));
     }
 
     private static void assertIndexDefinition(Tree tree, String propName, 
boolean isUnique) {
@@ -151,7 +152,7 @@ public class UserInitializerTest extends 
AbstractSecurityTest {
         assertEquals(isUnique, TreeUtil.getBoolean(tree, 
IndexConstants.UNIQUE_PROPERTY_NAME));
         assertArrayEquals(
                 propName, new String[]{propName},
-                Iterables.toArray(TreeUtil.getStrings(tree, 
IndexConstants.PROPERTY_NAMES), String.class));
+                IterableUtils.toArray(TreeUtil.getStrings(tree, 
IndexConstants.PROPERTY_NAMES), String.class));
     }
 
     /**
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/action/GroupActionTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/action/GroupActionTest.java
index d23cf25425..7d0230b740 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/action/GroupActionTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/action/GroupActionTest.java
@@ -123,7 +123,7 @@ public class GroupActionTest extends AbstractSecurityTest {
         Set<String> failedIds = Set.of(testUser02.getID(), testGroup.getID());
         Iterable<String> ids = IterableUtils.chainedIterable(memberIds, 
failedIds);
 
-        testGroup.addMembers(Iterables.toArray(ids, String.class));
+        testGroup.addMembers(IterableUtils.toArray(ids, String.class));
 
         verify(groupAction, times(1)).onMembersAdded(testGroup, memberIds, 
failedIds, root, getNamePathMapper());
     }
@@ -146,7 +146,7 @@ public class GroupActionTest extends AbstractSecurityTest {
         Set<String> failedIds = Set.of(testUser02.getID(), testGroup.getID());
         Iterable<String> ids = IterableUtils.chainedIterable(memberIds, 
failedIds);
 
-        testGroup.removeMembers(Iterables.toArray(ids, String.class));
+        testGroup.removeMembers(IterableUtils.toArray(ids, String.class));
         verify(groupAction, times(1)).onMembersRemoved(testGroup, memberIds, 
failedIds, root, getNamePathMapper());
     }
 
diff --git 
a/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/EventFactory.java
 
b/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/EventFactory.java
index f8409633f7..fd2b5b4c05 100644
--- 
a/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/EventFactory.java
+++ 
b/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/EventFactory.java
@@ -18,7 +18,6 @@
  */
 package org.apache.jackrabbit.oak.jcr.observation;
 
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static java.util.Collections.emptyMap;
 import static org.apache.jackrabbit.JcrConstants.JCR_MIXINTYPES;
 import static org.apache.jackrabbit.JcrConstants.JCR_PRIMARYTYPE;
@@ -231,7 +230,7 @@ public class EventFactory {
             }
             return Map.of(
                     JCR_PRIMARYTYPE, mapper.getJcrName(primaryType),
-                    JCR_MIXINTYPES, toArray(jcrNames, String.class));
+                    JCR_MIXINTYPES, IterableUtils.toArray(jcrNames, 
String.class));
         }
     }
 
diff --git 
a/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionNamespaces.java
 
b/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionNamespaces.java
index ecb69e6689..46243c1dfd 100644
--- 
a/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionNamespaces.java
+++ 
b/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionNamespaces.java
@@ -16,8 +16,6 @@
  */
 package org.apache.jackrabbit.oak.jcr.session;
 
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
-
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Locale;
@@ -28,6 +26,7 @@ import javax.jcr.NamespaceException;
 import javax.jcr.Session;
 
 import org.apache.jackrabbit.oak.api.Root;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.namepath.impl.LocalNameMapper;
 import org.apache.jackrabbit.util.XMLChar;
@@ -105,7 +104,8 @@ public class SessionNamespaces extends LocalNameMapper {
 
         // unless there are local remappings just use the registered ones
         if (local.isEmpty()) {
-            return toArray(global, String.class);
+
+            return IterableUtils.toArray(global, String.class);
         }
 
         Set<String> prefixes = SetUtils.toSet(global);
diff --git 
a/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/observation/ObservationTest.java
 
b/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/observation/ObservationTest.java
index acf0e37428..71bbf4558e 100644
--- 
a/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/observation/ObservationTest.java
+++ 
b/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/observation/ObservationTest.java
@@ -99,6 +99,7 @@ import 
org.apache.jackrabbit.api.observation.JackrabbitEventFilter;
 import org.apache.jackrabbit.api.observation.JackrabbitObservationManager;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.fixture.NodeStoreFixture;
 import org.apache.jackrabbit.oak.jcr.AbstractRepositoryTest;
@@ -2312,7 +2313,7 @@ public class ObservationTest extends 
AbstractRepositoryTest {
         assertNotNull(cp);
         FilterProvider filterProvider = cp.getFilterProvider();
         assertNotNull(filterProvider);
-        assertArrayEquals(expectedSubTrees, 
Iterables.toArray(filterProvider.getSubTrees(), String.class));
+        assertArrayEquals(expectedSubTrees, 
IterableUtils.toArray(filterProvider.getSubTrees(), String.class));
         
         Node parent = getAdminSession().getRootNode().addNode("parent", 
"nt:unstructured");
         Node bar = parent.addNode("bar", "nt:unstructured");
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
index b3ee5d0af7..5134362349 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
@@ -42,6 +42,7 @@ import javax.management.openmbean.TabularType;
 
 import org.apache.jackrabbit.guava.common.util.concurrent.Monitor;
 import org.apache.commons.io.FileUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.commons.conditions.Validate;
 import 
org.apache.jackrabbit.oak.plugins.index.lucene.directory.CopyOnReadDirectory;
@@ -60,7 +61,6 @@ import org.jetbrains.annotations.NotNull;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static org.apache.jackrabbit.guava.common.collect.Iterables.transform;
 import static org.apache.jackrabbit.oak.commons.IOUtils.humanReadableByteCount;
 
@@ -607,7 +607,7 @@ public class IndexCopier implements CopyOnReadStatsMBean, 
Closeable {
 
     @Override
     public String[] getGarbageDetails() {
-        return toArray(transform(failedToDeleteFiles.values(),
+        return IterableUtils.toArray(transform(failedToDeleteFiles.values(),
                 input -> input.deleteLog()), String.class);
     }
 
@@ -651,7 +651,7 @@ public class IndexCopier implements CopyOnReadStatsMBean, 
Closeable {
 
     @Override
     public String[] getCopyInProgressDetails() {
-        return toArray(transform(copyInProgressFiles,
+        return IterableUtils.toArray(transform(copyInProgressFiles,
                 input -> input.copyLog()), String.class);
     }
 
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java
index c63f256412..0923f064e5 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java
@@ -29,6 +29,7 @@ import java.util.Set;
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.commons.PathUtils;
 import org.apache.jackrabbit.oak.commons.PerfLogger;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.MapUtils;
 import org.apache.jackrabbit.oak.plugins.index.AsyncIndexInfoService;
 import org.apache.jackrabbit.oak.plugins.index.lucene.hybrid.NRTIndexFactory;
@@ -177,7 +178,7 @@ public class IndexTracker {
                         badIndexTracker.markBadPersistedIndex(path, e);
                     }
                 }
-            }, Iterables.toArray(PathUtils.elements(path), String.class)));
+            }, IterableUtils.toArray(PathUtils.elements(path), String.class)));
         }
 
         EditorDiff.process(CompositeEditor.compose(editors), this.root, root);
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexMBeanImpl.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexMBeanImpl.java
index ca6fd15550..a6ad68e4a7 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexMBeanImpl.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexMBeanImpl.java
@@ -48,6 +48,7 @@ import javax.management.openmbean.TabularType;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.jmx.Name;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.jmx.AnnotatedStandardMBean;
 import org.apache.jackrabbit.oak.commons.json.JsopBuilder;
 import org.apache.jackrabbit.oak.json.JsopDiff;
@@ -354,7 +355,7 @@ public class LuceneIndexMBeanImpl extends 
AnnotatedStandardMBean implements Luce
             }
         }
         log.info("Checked index consistency in {}. Check result {}", watch, 
results);
-        return Iterables.toArray(results, String.class);
+        return IterableUtils.toArray(results, String.class);
     }
 
     @Override
@@ -579,7 +580,7 @@ public class LuceneIndexMBeanImpl extends 
AnnotatedStandardMBean implements Luce
             }
         }
         if (maxPathLimitBreachedAtLevel < 0) {
-            return Iterables.toArray(paths, String.class);
+            return IterableUtils.toArray(paths, String.class);
         }
 
         //If max limit for path is reached then we can safely
@@ -595,7 +596,7 @@ public class LuceneIndexMBeanImpl extends 
AnnotatedStandardMBean implements Luce
                 }
             }
         }
-        return Iterables.toArray(result, String.class);
+        return IterableUtils.toArray(result, String.class);
     }
 
     /**
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnWriteDirectory.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnWriteDirectory.java
index 7249d1f188..426d00833c 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnWriteDirectory.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnWriteDirectory.java
@@ -41,6 +41,7 @@ import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.commons.io.FileUtils;
 import org.apache.jackrabbit.oak.commons.IOUtils;
 import org.apache.jackrabbit.oak.commons.PerfLogger;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.commons.concurrent.NotifyingFutureTask;
 import org.apache.jackrabbit.oak.plugins.index.lucene.IndexCopier;
@@ -149,7 +150,7 @@ public class CopyOnWriteDirectory extends FilterDirectory {
 
     @Override
     public String[] listAll() throws IOException {
-        return Iterables.toArray(fileMap.keySet(), String.class);
+        return IterableUtils.toArray(fileMap.keySet(), String.class);
     }
 
     @Override
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
index ff5f2b136d..80b8b72817 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
@@ -160,7 +160,7 @@ public final class IndexDefinitionBuilder {
         boolean noAdditionalTags = currTags.containsAll(tagVals);
         if (!noAdditionalTags) {
             tree.removeProperty(INDEX_TAGS);
-            tree.setProperty(INDEX_TAGS, asList(Iterables.toArray(tagVals, 
String.class)), STRINGS);
+            tree.setProperty(INDEX_TAGS, asList(IterableUtils.toArray(tagVals, 
String.class)), STRINGS);
         }
         return this;
     }
diff --git 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/Aggregate.java
 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/Aggregate.java
index fe6e240bc8..ed883478ec 100644
--- 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/Aggregate.java
+++ 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/Aggregate.java
@@ -29,6 +29,7 @@ import java.util.regex.Pattern;
 
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.ListUtils;
 import org.apache.jackrabbit.oak.plugins.index.search.util.ConfigUtil;
 import org.apache.jackrabbit.oak.plugins.memory.MemoryChildNodeEntry;
@@ -38,7 +39,6 @@ import org.apache.jackrabbit.oak.spi.state.NodeStateUtils;
 import org.jetbrains.annotations.Nullable;
 
 import static 
org.apache.jackrabbit.oak.commons.conditions.Validate.checkArgument;
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static org.apache.jackrabbit.oak.commons.PathUtils.elements;
 import static org.apache.jackrabbit.oak.commons.PathUtils.getParentPath;
 
@@ -666,7 +666,7 @@ public class Aggregate {
     //~--------------------------------------------------< utility >
 
     private static String[] computeElements(String path) {
-        return toArray(elements(path), String.class);
+        return IterableUtils.toArray(elements(path), String.class);
     }
 
 }
diff --git 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java
 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java
index dea29cb0e7..0ebe6b61eb 100644
--- 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java
+++ 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java
@@ -18,7 +18,6 @@
  */
 package org.apache.jackrabbit.oak.plugins.index.search;
 
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static org.apache.jackrabbit.oak.commons.PathUtils.elements;
 import static org.apache.jackrabbit.oak.commons.PathUtils.isAbsolute;
 import static 
org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.FIELD_BOOST;
@@ -31,6 +30,7 @@ import static 
org.apache.jackrabbit.oak.plugins.index.search.util.ConfigUtil.get
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.ListUtils;
 import org.apache.jackrabbit.oak.plugins.index.property.ValuePattern;
 import 
org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition.IndexingRule;
@@ -306,7 +306,7 @@ public class PropertyDefinition {
         if (FulltextIndexConstants.REGEX_ALL_PROPS.equals(path)) {
             return EMPTY_ANCESTORS;
         } else {
-            return 
toArray(ListUtils.toList(elements(PathUtils.getParentPath(path))), 
String.class);
+            return 
IterableUtils.toArray(ListUtils.toList(elements(PathUtils.getParentPath(path))),
 String.class);
         }
     }
 
diff --git 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java
 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java
index 87cd474f50..9daf7c8043 100644
--- 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java
+++ 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java
@@ -28,6 +28,7 @@ import java.util.Set;
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.commons.PathUtils;
 import org.apache.jackrabbit.oak.commons.PerfLogger;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.MapUtils;
 import org.apache.jackrabbit.oak.plugins.index.AsyncIndexInfoService;
 import org.apache.jackrabbit.oak.plugins.index.search.BadIndexTracker;
@@ -140,7 +141,7 @@ public abstract class FulltextIndexTracker<I extends 
IndexNodeManager<N>, N exte
                         badIndexTracker.markBadPersistedIndex(path, e);
                     }
                 }
-            }, Iterables.toArray(PathUtils.elements(path), String.class)));
+            }, IterableUtils.toArray(PathUtils.elements(path), String.class)));
         }
 
         EditorDiff.process(CompositeEditor.compose(editors), this.root, root);
diff --git 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/ConfigUtil.java
 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/ConfigUtil.java
index 2b34a94b1a..aa0996fb75 100644
--- 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/ConfigUtil.java
+++ 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/ConfigUtil.java
@@ -25,6 +25,7 @@ import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.oak.api.Blob;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.jetbrains.annotations.Nullable;
 
@@ -130,7 +131,7 @@ public class ConfigUtil {
     public static<T> T[] getOptionalValues(NodeState definition, String 
propName, Type<Iterable<T>> type, Class<T> typeParam, T[] defaultValues) {
         PropertyState ps = definition.getProperty(propName);
         if (ps != null) {
-            return Iterables.toArray(ps.getValue(type), typeParam);
+            return IterableUtils.toArray(ps.getValue(type), typeParam);
         }
         return defaultValues;
     }
diff --git 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/IndexDefinitionBuilder.java
 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/IndexDefinitionBuilder.java
index fb4c60a9d1..464061cbaf 100644
--- 
a/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/IndexDefinitionBuilder.java
+++ 
b/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/IndexDefinitionBuilder.java
@@ -173,7 +173,7 @@ public class IndexDefinitionBuilder {
         boolean noAdditionalTags = currTags.containsAll(tagVals);
         if (!noAdditionalTags) {
             tree.removeProperty(INDEX_TAGS);
-            tree.setProperty(INDEX_TAGS, asList(Iterables.toArray(tagVals, 
String.class)), STRINGS);
+            tree.setProperty(INDEX_TAGS, asList(IterableUtils.toArray(tagVals, 
String.class)), STRINGS);
         }
         return this;
     }
diff --git 
a/oak-search/src/test/java/org/apache/jackrabbit/oak/plugins/index/search/AggregateTest.java
 
b/oak-search/src/test/java/org/apache/jackrabbit/oak/plugins/index/search/AggregateTest.java
index db8b986478..5c8bfd5b0b 100644
--- 
a/oak-search/src/test/java/org/apache/jackrabbit/oak/plugins/index/search/AggregateTest.java
+++ 
b/oak-search/src/test/java/org/apache/jackrabbit/oak/plugins/index/search/AggregateTest.java
@@ -33,6 +33,7 @@ import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.plugins.index.search.Aggregate.NodeInclude;
 import 
org.apache.jackrabbit.oak.plugins.index.search.Aggregate.NodeIncludeResult;
 import 
org.apache.jackrabbit.oak.plugins.index.search.Aggregate.PropertyIncludeResult;
@@ -41,7 +42,6 @@ import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.junit.Test;
 
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static org.apache.jackrabbit.JcrConstants.JCR_MIXINTYPES;
 import static org.apache.jackrabbit.JcrConstants.JCR_PRIMARYTYPE;
 import static org.apache.jackrabbit.oak.InitialContentHelper.INITIAL_CONTENT;
@@ -258,7 +258,7 @@ public class AggregateTest {
 
         agFile.collectAggregates(nb.getNodeState(), col);
         assertEquals(expectedPaths.size(), col.getNodePaths().size());
-        assertThat(col.getNodePaths(), hasItems(toArray(expectedPaths, 
String.class)));
+        assertThat(col.getNodePaths(), 
hasItems(IterableUtils.toArray(expectedPaths, String.class)));
     }
 
     @Test
diff --git 
a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreMBeanImpl.java
 
b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreMBeanImpl.java
index 29e5cb2223..85df9cce9f 100644
--- 
a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreMBeanImpl.java
+++ 
b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreMBeanImpl.java
@@ -27,6 +27,7 @@ import javax.management.openmbean.CompositeData;
 import org.apache.jackrabbit.api.stats.RepositoryStatistics;
 import org.apache.jackrabbit.api.stats.TimeSeries;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.jmx.AnnotatedStandardMBean;
 import org.apache.jackrabbit.oak.plugins.document.util.Utils;
 import org.apache.jackrabbit.stats.TimeSeriesStatsUtil;
@@ -36,7 +37,6 @@ import org.slf4j.LoggerFactory;
 import static 
org.apache.jackrabbit.oak.commons.conditions.Validate.checkArgument;
 import static java.util.Objects.requireNonNull;
 import static org.apache.jackrabbit.guava.common.collect.Iterables.filter;
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static org.apache.jackrabbit.guava.common.collect.Iterables.transform;
 
 /**
@@ -87,21 +87,21 @@ final class DocumentNodeStoreMBeanImpl extends 
AnnotatedStandardMBean implements
 
     @Override
     public String[] getInactiveClusterNodes() {
-        return toArray(transform(filter(clusterNodes,
+        return IterableUtils.toArray(transform(filter(clusterNodes,
                 input -> !input.isActive()),
                 input -> input.getClusterId() + "=" + input.getCreated()), 
String.class);
     }
 
     @Override
     public String[] getActiveClusterNodes() {
-        return toArray(transform(filter(clusterNodes,
+        return IterableUtils.toArray(transform(filter(clusterNodes,
                 input -> input.isActive()),
                 input -> input.getClusterId() + "=" + 
input.getLeaseEndTime()), String.class);
     }
 
     @Override
     public String[] getLastKnownRevisions() {
-        return toArray(transform(filter(nodeStore.getHeadRevision(),
+        return 
IterableUtils.toArray(transform(filter(nodeStore.getHeadRevision(),
                 input -> input.getClusterId() != getClusterId()),
                 input -> input.getClusterId() + "=" + input.toString()), 
String.class);
     }
diff --git 
a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
 
b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
index 15c2908fa4..ea1bfc4172 100644
--- 
a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
+++ 
b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
@@ -27,6 +27,7 @@ import 
org.apache.jackrabbit.guava.common.collect.AbstractIterator;
 import org.apache.jackrabbit.guava.common.collect.Iterators;
 import org.apache.jackrabbit.guava.common.collect.PeekingIterator;
 import org.apache.jackrabbit.oak.cache.CacheValue;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.commons.collections.SetUtils;
 import org.apache.jackrabbit.oak.plugins.document.util.Utils;
 import org.jetbrains.annotations.NotNull;
@@ -35,7 +36,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.collect.Iterables.toArray;
 import static 
org.apache.jackrabbit.guava.common.collect.Iterators.peekingIterator;
 import static java.util.Arrays.sort;
 
@@ -78,11 +78,11 @@ public final class RevisionVector implements 
Iterable<Revision>, Comparable<Revi
     }
 
     public RevisionVector(@NotNull Iterable<Revision> revisions) {
-        this(toArray(revisions, Revision.class), true, true);
+        this(IterableUtils.toArray(revisions, Revision.class), true, true);
     }
 
     public RevisionVector(@NotNull Set<Revision> revisions) {
-        this(toArray(revisions, Revision.class), false, true);
+        this(IterableUtils.toArray(revisions, Revision.class), false, true);
     }
 
     /**
@@ -186,7 +186,7 @@ public final class RevisionVector implements 
Iterable<Revision>, Comparable<Revi
                 break;
             }
         }
-        return new RevisionVector(toArray(pmin, Revision.class), false, false);
+        return new RevisionVector(IterableUtils.toArray(pmin, Revision.class), 
false, false);
     }
 
     /**
@@ -222,7 +222,7 @@ public final class RevisionVector implements 
Iterable<Revision>, Comparable<Revi
         }
         // add remaining
         Iterators.addAll(pmax, it);
-        return new RevisionVector(toArray(pmax, Revision.class), false, false);
+        return new RevisionVector(IterableUtils.toArray(pmax, Revision.class), 
false, false);
     }
 
     /**
@@ -242,7 +242,7 @@ public final class RevisionVector implements 
Iterable<Revision>, Comparable<Revi
                 diff.add(r);
             }
         }
-        return new RevisionVector(toArray(diff, Revision.class), false, false);
+        return new RevisionVector(IterableUtils.toArray(diff, Revision.class), 
false, false);
     }
 
     /**
diff --git 
a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundlingConfigHandler.java
 
b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundlingConfigHandler.java
index 04c0454a5b..50c763efdf 100644
--- 
a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundlingConfigHandler.java
+++ 
b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundlingConfigHandler.java
@@ -26,6 +26,7 @@ import java.util.concurrent.Executor;
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.spi.commit.BackgroundObserver;
 import org.apache.jackrabbit.oak.spi.commit.BackgroundObserverMBean;
 import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
@@ -62,7 +63,7 @@ public class BundlingConfigHandler implements Observer, 
Closeable {
         public void leave(NodeState before, NodeState after) throws 
CommitFailedException {
             recreateRegistry(after);
         }
-    }, Iterables.toArray(PathUtils.elements(CONFIG_PATH), String.class));
+    }, IterableUtils.toArray(PathUtils.elements(CONFIG_PATH), String.class));
 
     @Override
     public synchronized void contentChanged(@NotNull NodeState root, @NotNull 
CommitInfo info) {
diff --git 
a/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/secondary/SecondaryStoreCacheTest.java
 
b/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/secondary/SecondaryStoreCacheTest.java
index 7c0ee5eb1f..6efe3e5be1 100644
--- 
a/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/secondary/SecondaryStoreCacheTest.java
+++ 
b/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/secondary/SecondaryStoreCacheTest.java
@@ -25,6 +25,7 @@ import java.util.List;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
+import org.apache.jackrabbit.oak.commons.collections.IterableUtils;
 import org.apache.jackrabbit.oak.plugins.document.AbstractDocumentNodeState;
 import org.apache.jackrabbit.oak.plugins.document.Collection;
 import org.apache.jackrabbit.oak.plugins.document.DocumentMKBuilderProvider;
@@ -164,7 +165,7 @@ public class SecondaryStoreCacheTest {
             revs.add(r.getRootRevision());
         }
 
-        AbstractDocumentNodeState[] rootsArr = Iterables.toArray(roots, 
AbstractDocumentNodeState.class);
+        AbstractDocumentNodeState[] rootsArr = IterableUtils.toArray(roots, 
AbstractDocumentNodeState.class);
 
         Collections.shuffle(revs);
         for (RevisionVector rev : revs){

Reply via email to