You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by re...@apache.org on 2025/01/07 15:44:53 UTC
(jackrabbit-oak) 01/03: OAK-11357: Create StreamUtils
This is an automated email from the ASF dual-hosted git repository.
reschke pushed a commit to branch OAK-11357
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git
commit 0aa1e067e08feacf25f1031271cd91a905c0e7e8
Author: Julian Reschke <re...@apache.org>
AuthorDate: Tue Jan 7 16:43:19 2025 +0100
OAK-11357: Create StreamUtils
---
.../external/impl/AbstractDynamicTest.java | 6 +--
.../ExternalGroupPrincipalProviderTest.java | 3 +-
.../impl/principal/ExternalGroupPrincipalTest.java | 4 +-
.../oak/commons/collections/CollectionUtils.java | 27 ----------
.../oak/commons/collections/StreamUtils.java | 59 ++++++++++++++++++++++
.../oak/commons/collections/package-info.java | 2 +-
.../commons/collections/CollectionUtilsTest.java | 2 +-
.../oak/plugins/commit/MergingNodeStateDiff.java | 6 +--
.../plugins/index/property/PropertyIndexPlan.java | 3 +-
.../oak/plugins/nodetype/TypeEditor.java | 5 +-
.../oak/plugins/nodetype/TypePredicate.java | 7 +--
.../plugins/index/lucene/LucenePropertyIndex.java | 6 +--
.../index/elastic/ElasticIndexDefinition.java | 8 +--
.../oak/composite/CompositeNodeStore.java | 3 +-
.../oak/plugins/document/SplitOperations.java | 4 +-
15 files changed, 91 insertions(+), 54 deletions(-)
diff --git a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/AbstractDynamicTest.java b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/AbstractDynamicTest.java
index 6094a9774e..f1f7521e58 100644
--- a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/AbstractDynamicTest.java
+++ b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/AbstractDynamicTest.java
@@ -20,7 +20,7 @@ import org.apache.jackrabbit.guava.common.collect.Iterables;
import org.apache.jackrabbit.api.security.user.Authorizable;
import org.apache.jackrabbit.api.security.user.UserManager;
import org.apache.jackrabbit.oak.api.Root;
-import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.spi.security.authentication.external.AbstractExternalAuthTest;
import org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentity;
import org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalUser;
@@ -116,7 +116,7 @@ public abstract class AbstractDynamicTest extends AbstractExternalAuthTest {
@NotNull
static List<String> getIds(@NotNull Iterator<? extends Authorizable> authorizables) {
- return CollectionUtils.toStream(authorizables).map(authorizable -> {
+ return StreamUtils.toStream(authorizables).map(authorizable -> {
try {
return authorizable.getID();
} catch (RepositoryException repositoryException) {
@@ -127,6 +127,6 @@ public abstract class AbstractDynamicTest extends AbstractExternalAuthTest {
@NotNull
static List<String> getPrincipalNames(@NotNull Iterator<Principal> groupPrincipals) {
- return CollectionUtils.toStream(groupPrincipals).map(Principal::getName).collect(Collectors.toList());
+ return StreamUtils.toStream(groupPrincipals).map(Principal::getName).collect(Collectors.toList());
}
}
\ No newline at end of file
diff --git a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java
index f31f01b097..dce8bfb078 100644
--- a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java
+++ b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalProviderTest.java
@@ -28,6 +28,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.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.namepath.NamePathMapper;
import org.apache.jackrabbit.oak.plugins.tree.TreeAware;
import org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalGroup;
@@ -89,7 +90,7 @@ public class ExternalGroupPrincipalProviderTest extends AbstractPrincipalTest {
@NotNull
Set<Principal> getExpectedGroupPrincipals(@NotNull String userId) throws Exception {
if (syncConfig.user().getMembershipNestingDepth() == 1) {
- return CollectionUtils.toStream(idp.getUser(userId).getDeclaredGroups()).map(externalIdentityRef -> {
+ return StreamUtils.toStream(idp.getUser(userId).getDeclaredGroups()).map(externalIdentityRef -> {
try {
return new PrincipalImpl(idp.getIdentity(externalIdentityRef).getPrincipalName());
} catch (ExternalIdentityException e) {
diff --git a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalTest.java b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalTest.java
index d22ea62126..8fb49c3b0c 100644
--- a/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalTest.java
+++ b/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/principal/ExternalGroupPrincipalTest.java
@@ -24,7 +24,7 @@ import org.apache.jackrabbit.api.security.user.UserManager;
import org.apache.jackrabbit.oak.api.QueryEngine;
import org.apache.jackrabbit.oak.api.Root;
import org.apache.jackrabbit.oak.api.Type;
-import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentity;
import org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentityRef;
import org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalUser;
@@ -81,7 +81,7 @@ public class ExternalGroupPrincipalTest extends AbstractPrincipalTest {
public void testIsMemberExternalGroup() throws Exception {
GroupPrincipal principal = getGroupPrincipal();
- List<String> exGroupPrincNames = CollectionUtils.toStream(
+ List<String> exGroupPrincNames = StreamUtils.toStream(
idp.listGroups()).map(ExternalIdentity::getPrincipalName).collect(Collectors.toList());
for (String principalName : exGroupPrincNames) {
assertFalse(principal.isMember(new PrincipalImpl(principalName)));
diff --git a/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtils.java b/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtils.java
index 238639078c..0fc1d349c4 100644
--- a/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtils.java
+++ b/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtils.java
@@ -39,7 +39,6 @@ import java.util.function.Predicate;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import java.util.stream.Stream;
-import java.util.stream.StreamSupport;
import org.jetbrains.annotations.NotNull;
@@ -449,32 +448,6 @@ public class CollectionUtils {
};
}
- /**
- * Generates a (non-parallel) {@linkplain Stream} for the {@linkplain Iterable}
- * @param iterable iterable to convert
- * @return the stream
- */
- @NotNull
- public static <T> Stream<T> toStream(@NotNull Iterable<T> iterable) {
- Objects.requireNonNull(iterable);
- return StreamSupport.stream(iterable.spliterator(), false);
- }
-
- /**
- * Generates a (non-parallel) {@linkplain Stream} for the
- * {@linkplain Iterable}
- * <p>
- * This method is not thread-safe
- *
- * @param iterator
- * iterator to convert
- * @return the stream (representing the remaining elements in the iterator)
- */
- @NotNull
- public static <T> Stream<T> toStream(@NotNull Iterator<T> iterator) {
- return StreamSupport.stream(toIterable(iterator).spliterator(), false);
- }
-
/**
* Ensure the capacity of a map or set given the expected number of elements.
*
diff --git a/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/StreamUtils.java b/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/StreamUtils.java
new file mode 100755
index 0000000000..3b6bfea34c
--- /dev/null
+++ b/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/StreamUtils.java
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.jackrabbit.oak.commons.collections;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.Iterator;
+import java.util.Objects;
+import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
+
+public class StreamUtils {
+
+ private StreamUtils() {
+ // no instances for you
+ }
+
+ /**
+ * Generates a (non-parallel) {@linkplain Stream} for the {@linkplain Iterable}
+ * @param iterable iterable to convert
+ * @return the stream
+ */
+ @NotNull
+ public static <T> Stream<T> toStream(@NotNull Iterable<T> iterable) {
+ Objects.requireNonNull(iterable);
+ return StreamSupport.stream(iterable.spliterator(), false);
+ }
+
+ /**
+ * Generates a (non-parallel) {@linkplain Stream} for the
+ * {@linkplain Iterable}
+ * <p>
+ * This method is not thread-safe
+ *
+ * @param iterator
+ * iterator to convert
+ * @return the stream (representing the remaining elements in the iterator)
+ */
+ @NotNull
+ public static <T> Stream<T> toStream(@NotNull Iterator<T> iterator) {
+ return StreamSupport.stream(CollectionUtils.toIterable(iterator).spliterator(), false);
+ }
+}
diff --git a/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/package-info.java b/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/package-info.java
index 11a3fa317b..95dfb8621e 100644
--- a/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/package-info.java
+++ b/oak-commons/src/main/java/org/apache/jackrabbit/oak/commons/collections/package-info.java
@@ -21,7 +21,7 @@
* Utilities for Java collections and streams.
*/
@Internal(since = "1.0.0")
-@Version("1.2.0")
+@Version("2.0.0")
package org.apache.jackrabbit.oak.commons.collections;
import org.apache.jackrabbit.oak.commons.annotations.Internal;
import org.osgi.annotation.versioning.Version;
diff --git a/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtilsTest.java b/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtilsTest.java
index 5bd8a148fb..ad88bea0a1 100644
--- a/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtilsTest.java
+++ b/oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/collections/CollectionUtilsTest.java
@@ -497,7 +497,7 @@ public class CollectionUtilsTest {
public void iteratorToStream() {
List<String> input = List.of("a", "b", "c");
Iterator<String> iterator = input.iterator();
- Stream<String> stream = CollectionUtils.toStream(iterator);
+ Stream<String> stream = StreamUtils.toStream(iterator);
List<String> result = stream.collect(Collectors.toList());
Assert.assertEquals(input.toString(), result.toString());
}
diff --git a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java
index 7dde9ab9d1..b842d3eb9d 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java
@@ -37,7 +37,7 @@ import java.util.Set;
import java.util.stream.Stream;
import org.apache.jackrabbit.oak.api.PropertyState;
-import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.json.JsopDiff;
import org.apache.jackrabbit.oak.plugins.memory.PropertyBuilder;
import org.apache.jackrabbit.oak.plugins.tree.TreeConstants;
@@ -134,8 +134,8 @@ public final class MergingNodeStateDiff extends DefaultNodeStateDiff {
NodeState oursNS = conflictInfo.getChildNode(OURS);
NodeState baseNS = conflictInfo.getChildNode(BASE);
- Set<String> candidates = Stream.concat(CollectionUtils.toStream(oursNS.getChildNodeNames()),
- CollectionUtils.toStream(baseNS.getChildNodeNames())).collect(toSet());
+ Set<String> candidates = Stream.concat(StreamUtils.toStream(oursNS.getChildNodeNames()),
+ StreamUtils.toStream(baseNS.getChildNodeNames())).collect(toSet());
for (String name : candidates) {
NodeState ours = oursNS.getChildNode(name);
NodeState base = baseNS.getChildNode(name);
diff --git a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexPlan.java b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexPlan.java
index 849c281925..b38195616d 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexPlan.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexPlan.java
@@ -27,6 +27,7 @@ import java.util.Set;
import org.apache.jackrabbit.oak.commons.PathUtils;
import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.plugins.index.IndexConstants;
import org.apache.jackrabbit.oak.plugins.index.IndexUtils;
import org.apache.jackrabbit.oak.plugins.index.cursor.Cursors;
@@ -108,7 +109,7 @@ public class PropertyIndexPlan {
this.matchesAllTypes = !definition.hasProperty(DECLARING_NODE_TYPES);
this.deprecated = definition.getBoolean(IndexConstants.INDEX_DEPRECATED);
this.matchesNodeTypes =
- matchesAllTypes || CollectionUtils.toStream(types).anyMatch(filter.getSupertypes()::contains);
+ matchesAllTypes || StreamUtils.toStream(types).anyMatch(filter.getSupertypes()::contains);
ValuePattern valuePattern = new ValuePattern(definition);
diff --git a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeEditor.java b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeEditor.java
index 4b929bf7b8..199524d755 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeEditor.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeEditor.java
@@ -50,6 +50,7 @@ import org.apache.jackrabbit.oak.api.CommitFailedException;
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.api.Type;
import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.namepath.NamePathMapper;
import org.apache.jackrabbit.oak.plugins.value.jcr.PartialValueFactory;
import org.apache.jackrabbit.oak.spi.commit.DefaultEditor;
@@ -176,7 +177,7 @@ public class TypeEditor extends DefaultEditor {
this.checkThisNode =
typesToCheck == null
|| typesToCheck.contains(primary)
- || CollectionUtils.toStream(mixins).anyMatch(typesToCheck::contains);
+ || StreamUtils.toStream(mixins).anyMatch(typesToCheck::contains);
this.parent = null;
this.nodeName = null;
this.types = requireNonNull(types);
@@ -196,7 +197,7 @@ public class TypeEditor extends DefaultEditor {
this.checkThisNode =
typesToCheck == null
|| typesToCheck.contains(primary)
- || CollectionUtils.toStream(mixins).anyMatch(typesToCheck::contains);
+ || StreamUtils.toStream(mixins).anyMatch(typesToCheck::contains);
this.parent = requireNonNull(parent);
this.nodeName = requireNonNull(name);
this.types = parent.types;
diff --git a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypePredicate.java b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypePredicate.java
index 68f5e994b6..66a858715c 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypePredicate.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypePredicate.java
@@ -25,6 +25,7 @@ import org.apache.jackrabbit.guava.common.collect.Iterables;
import org.apache.jackrabbit.oak.api.Tree;
import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
import org.apache.jackrabbit.oak.spi.state.NodeState;
import org.apache.jackrabbit.oak.plugins.tree.TreeUtil;
@@ -161,7 +162,7 @@ public class TypePredicate implements Predicate<NodeState> {
if (primaryTypes != null && primaryTypes.contains(primary)) {
return true;
}
- if (mixinTypes != null && CollectionUtils.toStream(mixins).anyMatch(mixinTypes::contains)) {
+ if (mixinTypes != null && StreamUtils.toStream(mixins).anyMatch(mixinTypes::contains)) {
return true;
}
return false;
@@ -175,7 +176,7 @@ public class TypePredicate implements Predicate<NodeState> {
return true;
}
if (mixinTypes != null
- && CollectionUtils.toStream(TreeUtil.getNames(input, JCR_MIXINTYPES)).anyMatch(mixinTypes::contains)) {
+ && StreamUtils.toStream(TreeUtil.getNames(input, JCR_MIXINTYPES)).anyMatch(mixinTypes::contains)) {
return true;
}
}
@@ -193,7 +194,7 @@ public class TypePredicate implements Predicate<NodeState> {
return true;
}
if (mixinTypes != null
- && CollectionUtils.toStream(input.getNames(JCR_MIXINTYPES)).anyMatch(mixinTypes::contains)) {
+ && StreamUtils.toStream(input.getNames(JCR_MIXINTYPES)).anyMatch(mixinTypes::contains)) {
return true;
}
}
diff --git a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
index 093852c4f6..63b5f99d3a 100644
--- a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
+++ b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
@@ -45,7 +45,7 @@ import org.apache.jackrabbit.oak.api.PropertyValue;
import org.apache.jackrabbit.oak.api.Type;
import org.apache.jackrabbit.oak.commons.PathUtils;
import org.apache.jackrabbit.oak.commons.PerfLogger;
-import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.commons.conditions.Validate;
import org.apache.jackrabbit.oak.commons.properties.SystemPropertySupplier;
import org.apache.jackrabbit.oak.plugins.index.lucene.util.fv.SimSearchUtils;
@@ -1088,7 +1088,7 @@ public class LucenePropertyIndex extends FulltextIndex {
// deduced
if (planResult.isPathTransformed()) {
String parentPathSegment = planResult.getParentPathSegment();
- if (!CollectionUtils.toStream(PathUtils.elements(parentPathSegment)).anyMatch("*"::equals)) {
+ if (!StreamUtils.toStream(PathUtils.elements(parentPathSegment)).anyMatch("*"::equals)) {
qs.add(new TermQuery(newPathTerm(path + parentPathSegment)));
}
} else {
@@ -1106,7 +1106,7 @@ public class LucenePropertyIndex extends FulltextIndex {
// deduced
if (planResult.isPathTransformed()) {
String parentPathSegment = planResult.getParentPathSegment();
- if (!CollectionUtils.toStream(PathUtils.elements(parentPathSegment)).anyMatch("*"::equals)) {
+ if (!StreamUtils.toStream(PathUtils.elements(parentPathSegment)).anyMatch("*"::equals)) {
qs.add(new TermQuery(newPathTerm(getParentPath(path) + parentPathSegment)));
}
} else {
diff --git a/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexDefinition.java b/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexDefinition.java
index 0eefd1695d..0beb326c66 100644
--- a/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexDefinition.java
+++ b/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexDefinition.java
@@ -30,7 +30,7 @@ import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.apache.jackrabbit.oak.api.Type;
-import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants;
import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition;
import org.apache.jackrabbit.oak.plugins.index.search.PropertyDefinition;
@@ -223,7 +223,7 @@ public class ElasticIndexDefinition extends IndexDefinition {
this.propertiesByName = getDefinedRules()
.stream()
- .flatMap(rule -> Stream.concat(CollectionUtils.toStream(rule.getProperties()),
+ .flatMap(rule -> Stream.concat(StreamUtils.toStream(rule.getProperties()),
rule.getFunctionRestrictions().stream()))
.filter(pd -> pd.index) // keep only properties that can be indexed
.collect(Collectors.groupingBy(pd -> {
@@ -432,12 +432,12 @@ public class ElasticIndexDefinition extends IndexDefinition {
*/
public InferenceDefinition(NodeState inferenceNode) {
if (inferenceNode.hasChildNode("properties")) {
- this.properties = CollectionUtils.toStream(inferenceNode.getChildNode("properties").getChildNodeEntries())
+ this.properties = StreamUtils.toStream(inferenceNode.getChildNode("properties").getChildNodeEntries())
.map(cne -> new Property(cne.getName(), cne.getNodeState()))
.collect(Collectors.toList());
}
if (inferenceNode.hasChildNode("queries")) {
- this.queries = CollectionUtils.toStream(inferenceNode.getChildNode("queries").getChildNodeEntries())
+ this.queries = StreamUtils.toStream(inferenceNode.getChildNode("queries").getChildNodeEntries())
.map(cne -> new Query(cne.getName(), cne.getNodeState()))
.collect(Collectors.toList());
}
diff --git a/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java b/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java
index c6533bdb1c..56246a2cd3 100644
--- a/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java
+++ b/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java
@@ -21,6 +21,7 @@ import org.apache.jackrabbit.oak.api.CommitFailedException;
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.commons.PathUtils;
import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.composite.checks.NodeStoreChecks;
import org.apache.jackrabbit.oak.spi.commit.ChangeDispatcher;
import org.apache.jackrabbit.oak.spi.commit.CommitHook;
@@ -318,7 +319,7 @@ public class CompositeNodeStore implements NodeStore, PrefetchNodeStore, Observa
}
private static boolean checkpointExists(NodeStore nodeStore, String checkpoint) {
- return CollectionUtils.toStream(nodeStore.checkpoints()).anyMatch(x -> Objects.equals(x, checkpoint));
+ return StreamUtils.toStream(nodeStore.checkpoints()).anyMatch(x -> Objects.equals(x, checkpoint));
}
private String checkpointDebugInfo() {
diff --git a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/SplitOperations.java b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/SplitOperations.java
index 1bea179c40..e5457b8a47 100644
--- a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/SplitOperations.java
+++ b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/SplitOperations.java
@@ -33,7 +33,7 @@ import java.util.function.Predicate;
import java.util.function.Supplier;
import java.util.stream.Collectors;
-import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
+import org.apache.jackrabbit.oak.commons.collections.StreamUtils;
import org.apache.jackrabbit.oak.plugins.document.memory.MemoryDocumentStore;
import org.apache.jackrabbit.oak.plugins.document.util.Utils;
import org.jetbrains.annotations.NotNull;
@@ -227,7 +227,7 @@ class SplitOperations {
}
private boolean hasBinaryPropertyForSplit(Iterable<String> values) {
- return doc.hasBinary() && CollectionUtils.toStream(values).map(binarySize).anyMatch(BINARY_FOR_SPLIT_THRESHOLD);
+ return doc.hasBinary() && StreamUtils.toStream(values).map(binarySize).anyMatch(BINARY_FOR_SPLIT_THRESHOLD);
}
/**