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 2024/09/06 14:01:51 UTC
(jackrabbit-oak) branch trunk updated: OAK-11087: Remove usage of Guava Predicates.in() (#1694)
This is an automated email from the ASF dual-hosted git repository.
reschke 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 1e24f55ac6 OAK-11087: Remove usage of Guava Predicates.in() (#1694)
1e24f55ac6 is described below
commit 1e24f55ac6e4e0109c344bb447afed7606047bc9
Author: Julian Reschke <re...@apache.org>
AuthorDate: Fri Sep 6 16:01:44 2024 +0200
OAK-11087: Remove usage of Guava Predicates.in() (#1694)
---
.../oak/plugins/index/aggregate/AggregationCursor.java | 3 +--
.../oak/plugins/index/property/PropertyIndexPlan.java | 3 +--
.../oak/plugins/migration/AbstractDecoratedNodeState.java | 3 +--
.../apache/jackrabbit/oak/plugins/nodetype/TypeEditor.java | 5 ++---
.../apache/jackrabbit/oak/plugins/nodetype/TypePredicate.java | 7 +++----
.../jackrabbit/oak/plugins/index/lucene/IndexTracker.java | 3 +--
.../plugins/index/search/spi/query/FulltextIndexTracker.java | 3 +--
.../oak/plugins/document/mongo/MongoDocumentStore.java | 5 ++---
.../oak/plugins/document/persistentCache/NodeCache.java | 3 +--
.../jackrabbit/oak/plugins/memory/ModifiedNodeState.java | 11 +++++++----
10 files changed, 20 insertions(+), 26 deletions(-)
diff --git a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/AggregationCursor.java b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/AggregationCursor.java
index 21ba4f3827..fcd1e03576 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/AggregationCursor.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/AggregationCursor.java
@@ -28,7 +28,6 @@ import org.apache.jackrabbit.oak.spi.query.Cursor;
import org.apache.jackrabbit.oak.spi.query.IndexRow;
import org.apache.jackrabbit.oak.spi.query.QueryIndex;
import org.apache.jackrabbit.oak.spi.state.NodeState;
-
import org.apache.jackrabbit.guava.common.base.Predicates;
import org.apache.jackrabbit.guava.common.collect.Iterators;
@@ -94,7 +93,7 @@ class AggregationCursor extends AbstractCursor {
aggregates = Iterators.filter(Iterators.concat(
Iterators.singletonIterator(path),
aggregator.getParents(rootState, path)), Predicates
- .not(Predicates.in(seenPaths)));
+ .not(x -> seenPaths.contains(x)));
}
fetchNext();
return;
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 ceb12ba717..749a6f98e7 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
@@ -16,7 +16,6 @@
*/
package org.apache.jackrabbit.oak.plugins.index.property;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.collect.Iterables.any;
import static org.apache.jackrabbit.guava.common.collect.Sets.newHashSet;
import static java.util.Collections.emptySet;
@@ -110,7 +109,7 @@ public class PropertyIndexPlan {
this.matchesAllTypes = !definition.hasProperty(DECLARING_NODE_TYPES);
this.deprecated = definition.getBoolean(IndexConstants.INDEX_DEPRECATED);
this.matchesNodeTypes =
- matchesAllTypes || any(types, in(filter.getSupertypes()));
+ matchesAllTypes || any(types, x -> filter.getSupertypes().contains(x));
ValuePattern valuePattern = new ValuePattern(definition);
diff --git a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/migration/AbstractDecoratedNodeState.java b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/migration/AbstractDecoratedNodeState.java
index f7fc2e947f..a5a5798261 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/migration/AbstractDecoratedNodeState.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/migration/AbstractDecoratedNodeState.java
@@ -16,7 +16,6 @@
*/
package org.apache.jackrabbit.oak.plugins.migration;
-import org.apache.jackrabbit.guava.common.base.Predicates;
import org.apache.jackrabbit.guava.common.collect.Iterables;
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.api.Type;
@@ -99,7 +98,7 @@ public abstract class AbstractDecoratedNodeState extends AbstractNodeState {
final Collection<String> childNodeNames = new ArrayList<String>();
Iterables.addAll(childNodeNames, nodeState.getChildNodeNames());
final Iterable<String> values = Iterables.filter(
- propertyState.getValue(Type.NAMES), Predicates.in(childNodeNames));
+ propertyState.getValue(Type.NAMES), x -> childNodeNames.contains(x));
return PropertyStates.createProperty(OAK_CHILD_ORDER, values, Type.NAMES);
}
return propertyState;
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 9e00410b80..3dc672ef44 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
@@ -17,7 +17,6 @@
package org.apache.jackrabbit.oak.plugins.nodetype;
import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.collect.Iterables.any;
import static org.apache.jackrabbit.JcrConstants.JCR_ISMIXIN;
import static org.apache.jackrabbit.JcrConstants.JCR_MIXINTYPES;
@@ -176,7 +175,7 @@ public class TypeEditor extends DefaultEditor {
this.checkThisNode =
typesToCheck == null
|| typesToCheck.contains(primary)
- || any(mixins, in(typesToCheck));
+ || any(mixins, x -> typesToCheck.contains(x));
this.parent = null;
this.nodeName = null;
this.types = requireNonNull(types);
@@ -196,7 +195,7 @@ public class TypeEditor extends DefaultEditor {
this.checkThisNode =
typesToCheck == null
|| typesToCheck.contains(primary)
- || any(mixins, in(typesToCheck));
+ || any(mixins, x -> typesToCheck.contains(x));
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 a4dc6d8067..08238729d5 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
@@ -31,7 +31,6 @@ import org.jetbrains.annotations.Nullable;
import static java.util.Collections.singleton;
import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.collect.Iterables.any;
import static org.apache.jackrabbit.guava.common.collect.Sets.newHashSet;
import static org.apache.jackrabbit.JcrConstants.JCR_HASORDERABLECHILDNODES;
@@ -161,7 +160,7 @@ public class TypePredicate implements Predicate<NodeState> {
if (primaryTypes != null && primaryTypes.contains(primary)) {
return true;
}
- if (mixinTypes != null && any(mixins, in(mixinTypes))) {
+ if (mixinTypes != null && any(mixins, x -> mixinTypes.contains(x))) {
return true;
}
return false;
@@ -175,7 +174,7 @@ public class TypePredicate implements Predicate<NodeState> {
return true;
}
if (mixinTypes != null
- && any(TreeUtil.getNames(input, JCR_MIXINTYPES), in(mixinTypes))) {
+ && any(TreeUtil.getNames(input, JCR_MIXINTYPES), x -> mixinTypes.contains(x))) {
return true;
}
}
@@ -193,7 +192,7 @@ public class TypePredicate implements Predicate<NodeState> {
return true;
}
if (mixinTypes != null
- && any(input.getNames(JCR_MIXINTYPES), in(mixinTypes))) {
+ && any(input.getNames(JCR_MIXINTYPES), x -> mixinTypes.contains(x))) {
return true;
}
}
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 9593c36e1c..28b48b37a3 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
@@ -48,7 +48,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.base.Predicates.not;
import static org.apache.jackrabbit.guava.common.collect.Lists.newArrayListWithCapacity;
@@ -188,7 +187,7 @@ public class IndexTracker {
if (!updates.isEmpty()) {
indices = ImmutableMap.<String, LuceneIndexNodeManager>builder()
- .putAll(Maps.filterKeys(original, not(in(updates.keySet()))))
+ .putAll(Maps.filterKeys(original, not(x -> updates.keySet().contains(x))))
.putAll(Maps.filterValues(updates, x -> x != null))
.build();
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 af55831c5d..8a5f97c433 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
@@ -44,7 +44,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.base.Predicates.not;
import static org.apache.jackrabbit.guava.common.collect.Maps.filterKeys;
@@ -150,7 +149,7 @@ public abstract class FulltextIndexTracker<I extends IndexNodeManager<N>, N exte
if (!updates.isEmpty()) {
indices = ImmutableMap.<String, I>builder()
- .putAll(filterKeys(original, not(in(updates.keySet()))))
+ .putAll(filterKeys(original, not(x -> updates.keySet().contains(x))))
.putAll(filterValues(updates, x -> x != null))
.build();
diff --git a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java
index 4798590473..03084cb493 100644
--- a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java
+++ b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java
@@ -119,7 +119,6 @@ import com.mongodb.client.result.UpdateResult;
import static java.util.Objects.isNull;
import static java.util.concurrent.TimeUnit.NANOSECONDS;
import static java.util.stream.Collectors.toList;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.base.Predicates.not;
import static org.apache.jackrabbit.guava.common.collect.Iterables.filter;
import static org.apache.jackrabbit.guava.common.collect.Maps.filterKeys;
@@ -530,7 +529,7 @@ public class MongoDocumentStore implements DocumentStore {
result.queryCount++;
int invalidated = nodesCache.invalidateOutdated(modStamps);
- for (String id : filter(ids, not(in(modStamps.keySet())))) {
+ for (String id : filter(ids, not(x -> modStamps.keySet().contains(x)))) {
nodesCache.invalidate(id);
invalidated++;
}
@@ -1492,7 +1491,7 @@ public class MongoDocumentStore implements DocumentStore {
if (collection == Collection.NODES) {
List<NodeDocument> docsToCache = new ArrayList<NodeDocument>();
- for (UpdateOp op : filterKeys(bulkOperations, in(bulkResult.upserts)).values()) {
+ for (UpdateOp op : filterKeys(bulkOperations, x -> bulkResult.upserts.contains(x)).values()) {
NodeDocument doc = Collection.NODES.newDocument(this);
UpdateUtils.applyChanges(doc, op);
docsToCache.add(doc);
diff --git a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/persistentCache/NodeCache.java b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/persistentCache/NodeCache.java
index af0e49dd7c..c5c07cbe63 100644
--- a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/persistentCache/NodeCache.java
+++ b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/persistentCache/NodeCache.java
@@ -16,7 +16,6 @@
*/
package org.apache.jackrabbit.oak.plugins.document.persistentCache;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.base.Predicates.not;
import static org.apache.jackrabbit.guava.common.collect.Iterables.filter;
import static java.util.Collections.singleton;
@@ -252,7 +251,7 @@ class NodeCache<K extends CacheValue, V extends CacheValue>
Iterable<K> typedKeys = (Iterable<K>) keys;
memCacheMetadata.incrementAll(keys);
ImmutableMap<K, V> result = memCache.getAllPresent(keys);
- memCacheMetadata.removeAll(filter(typedKeys, not(in(result.keySet()))));
+ memCacheMetadata.removeAll(filter(typedKeys, not(x -> result.keySet().contains(x))));
return result;
}
diff --git a/oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java b/oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
index d76f931840..94ee81f51d 100644
--- a/oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
+++ b/oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
@@ -17,7 +17,6 @@
package org.apache.jackrabbit.oak.plugins.memory;
import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.base.Predicates.in;
import static org.apache.jackrabbit.guava.common.base.Predicates.not;
import static org.apache.jackrabbit.guava.common.collect.Iterables.concat;
@@ -31,6 +30,7 @@ import static org.apache.jackrabbit.oak.plugins.memory.MemoryChildNodeEntry.iter
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
+import java.util.Set;
import java.util.function.Function;
import java.util.function.Predicate;
@@ -169,8 +169,9 @@ public class ModifiedNodeState extends AbstractNodeState {
if (copy) {
properties = new HashMap<>(properties);
}
+ final Set<String> keys = properties.keySet();
Predicate<PropertyState> predicate = Predicates.compose(
- not(in(properties.keySet())), GET_NAME::apply);
+ not(x-> keys.contains(x)), GET_NAME::apply);
return concat(
filter(base.getProperties(), predicate::test),
filter(properties.values(), x -> x != null));
@@ -220,8 +221,9 @@ public class ModifiedNodeState extends AbstractNodeState {
if (copy) {
nodes = new HashMap<>(nodes);
}
+ final Set<String> keys = nodes.keySet();
return concat(
- filter(base.getChildNodeNames(), not(in(nodes.keySet()))),
+ filter(base.getChildNodeNames(), not(x -> keys.contains(x))),
filterValues(nodes, NodeState.EXISTS::test).keySet());
}
}
@@ -350,8 +352,9 @@ public class ModifiedNodeState extends AbstractNodeState {
} else if (nodes.isEmpty()) {
return base.getChildNodeEntries(); // shortcut
} else {
+ final Set<String> keys = nodes.keySet();
Predicate<ChildNodeEntry> predicate = Predicates.compose(
- not(in(nodes.keySet())), ChildNodeEntry.GET_NAME::apply);
+ not(x -> keys.contains(x)), ChildNodeEntry.GET_NAME::apply);
return concat(
filter(base.getChildNodeEntries(), predicate::test),
iterable(filterValues(nodes, NodeState.EXISTS::test).entrySet()));