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/17 06:23:00 UTC

(jackrabbit-oak) branch OAK-11100 updated: OAK-11100: remove use of Guava transform/filter - oak-lucene

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

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


The following commit(s) were added to refs/heads/OAK-11100 by this push:
     new c9849584df OAK-11100: remove use of Guava transform/filter - oak-lucene
c9849584df is described below

commit c9849584df03c166716123436733e9d02ac3da9e
Author: Julian Reschke <re...@apache.org>
AuthorDate: Tue Sep 17 07:22:50 2024 +0100

    OAK-11100: remove use of Guava transform/filter - oak-lucene
---
 .../index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java     |  8 ++++----
 .../jackrabbit/oak/plugins/index/lucene/IndexCopier.java      | 10 +++-------
 .../oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java |  5 +++--
 .../oak/plugins/index/lucene/property/BucketSwitcher.java     |  9 +++++----
 .../index/lucene/property/HybridPropertyIndexInfo.java        |  5 ++---
 .../index/lucene/property/HybridPropertyIndexLookup.java      | 11 ++++++-----
 .../plugins/index/lucene/property/RecursiveDeleteTest.java    |  8 +++++---
 7 files changed, 28 insertions(+), 28 deletions(-)

diff --git a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java
index 2e88260114..e12a7fa62a 100644
--- a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java
+++ b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java
@@ -24,6 +24,7 @@ import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.jmx.CheckpointMBean;
 import org.apache.jackrabbit.oak.api.jmx.IndexStatsMBean;
 import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
 import org.apache.jackrabbit.oak.commons.jmx.ManagementOperation;
 import org.apache.jackrabbit.oak.plugins.index.AsyncIndexInfoService;
 import org.apache.jackrabbit.oak.plugins.index.IndexPathService;
@@ -48,10 +49,9 @@ import java.util.concurrent.Callable;
 import java.util.concurrent.Executor;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
-import java.util.stream.StreamSupport;
 
 import static java.util.Objects.requireNonNull;
-import static org.apache.jackrabbit.guava.common.collect.Iterables.transform;
+
 import static org.apache.jackrabbit.oak.api.Type.STRING;
 import static org.apache.jackrabbit.oak.api.jmx.IndexStatsMBean.STATUS_RUNNING;
 import static org.apache.jackrabbit.oak.commons.jmx.ManagementOperation.Status.failed;
@@ -213,7 +213,7 @@ public class ActiveDeletedBlobCollectorMBeanImpl implements ActiveDeletedBlobCol
      */
     private boolean waitForRunningIndexCycles() {
         Map<IndexStatsMBean, Long> origIndexLaneToExecutinoCountMap = Maps.asMap(
-                new HashSet<>(StreamSupport.stream(asyncIndexInfoService.getAsyncLanes().spliterator(), false)
+                new HashSet<>(CollectionUtils.toStream(asyncIndexInfoService.getAsyncLanes())
                         .map(lane -> asyncIndexInfoService.getInfo(lane).getStatsMBean())
                         .filter(bean -> {
                             String beanStatus;
@@ -234,7 +234,7 @@ public class ActiveDeletedBlobCollectorMBeanImpl implements ActiveDeletedBlobCol
 
         if (!origIndexLaneToExecutinoCountMap.isEmpty()) {
             LOG.info("Found running index lanes ({}). Sleep a bit before continuing.",
-                    transform(origIndexLaneToExecutinoCountMap.keySet(), IndexStatsMBean::getName));
+                    origIndexLaneToExecutinoCountMap.keySet().stream().map(IndexStatsMBean::getName).collect(Collectors.toList()));
             try {
                 clock.waitUntil(clock.getTime() + TimeUnit.SECONDS.toMillis(1));
             } catch (InterruptedException e) {
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 4d0d874ce8..7278a0d4cc 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
@@ -40,7 +40,6 @@ import javax.management.openmbean.TabularData;
 import javax.management.openmbean.TabularDataSupport;
 import javax.management.openmbean.TabularType;
 
-import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
 import org.apache.jackrabbit.guava.common.collect.Sets;
 import org.apache.jackrabbit.guava.common.util.concurrent.Monitor;
 import org.apache.commons.io.FileUtils;
@@ -61,8 +60,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import static org.apache.jackrabbit.guava.common.base.Preconditions.checkState;
-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.guava.common.collect.Maps.newConcurrentMap;
 import static org.apache.jackrabbit.oak.commons.IOUtils.humanReadableByteCount;
 
@@ -609,8 +607,7 @@ public class IndexCopier implements CopyOnReadStatsMBean, Closeable {
 
     @Override
     public String[] getGarbageDetails() {
-        return toArray(transform(failedToDeleteFiles.values(),
-                input -> input.deleteLog()), String.class);
+        return failedToDeleteFiles.values().stream().map(input -> input.deleteLog()).toArray(String[]::new);
     }
 
     @Override
@@ -653,8 +650,7 @@ public class IndexCopier implements CopyOnReadStatsMBean, Closeable {
 
     @Override
     public String[] getCopyInProgressDetails() {
-        return toArray(transform(copyInProgressFiles,
-                input -> input.copyLog()), String.class);
+        return copyInProgressFiles.stream().map(input -> input.copyLog()).toArray(String[]::new);
     }
 
     @Override
diff --git a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
index d436833d6d..ac67300007 100644
--- a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
+++ b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
@@ -20,6 +20,7 @@ package org.apache.jackrabbit.oak.plugins.index.lucene.hybrid;
 
 import java.util.Collection;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.apache.jackrabbit.guava.common.collect.ArrayListMultimap;
 import org.apache.jackrabbit.guava.common.collect.Iterables;
@@ -115,7 +116,7 @@ public class LuceneDocumentHolder implements JournalProperty {
     }
 
     private static Iterable<? extends LuceneDocInfo> asLuceneDocInfo(ListMultimap<String, String> docs) {
-        return Iterables.transform(docs.entries(), input -> {
+        return docs.entries().stream().map(input -> {
                 return new LuceneDocInfo() {
                     @Override
                     public String getIndexPath() {
@@ -127,6 +128,6 @@ public class LuceneDocumentHolder implements JournalProperty {
                         return input.getValue();
                     }
                 };
-            });
+            }).collect(Collectors.toList());
     }
 }
diff --git a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/BucketSwitcher.java b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/BucketSwitcher.java
index ea11e914a3..5c53793534 100644
--- a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/BucketSwitcher.java
+++ b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/BucketSwitcher.java
@@ -20,10 +20,11 @@
 package org.apache.jackrabbit.oak.plugins.index.lucene.property;
 
 import java.util.Objects;
+import java.util.stream.Collectors;
 
-import org.apache.jackrabbit.guava.common.collect.Iterables;
 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.spi.state.NodeBuilder;
 
 import static org.apache.jackrabbit.oak.plugins.index.lucene.property.HybridPropertyIndexUtil.PROP_ASYNC_INDEXED_TO_TIME_AT_SWITCH;
@@ -97,9 +98,9 @@ class BucketSwitcher {
     public Iterable<String> getOldBuckets() {
         String head = builder.getString(PROP_HEAD_BUCKET);
         String previous = builder.getString(PROP_PREVIOUS_BUCKET);
-        return Iterables.filter(builder.getChildNodeNames(),
-                name -> !Objects.equals(name, head) && !Objects.equals(name, previous)
-        );
+        return CollectionUtils.toStream(builder.getChildNodeNames())
+                .filter(name -> !Objects.equals(name, head) && !Objects.equals(name, previous)).collect(Collectors.toList());
+
     }
 
     private boolean asyncIndexedToTimeSameAsPrevious(long lastIndexedTo) {
diff --git a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexInfo.java b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexInfo.java
index bf81faced5..bcb5f7b944 100644
--- a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexInfo.java
+++ b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexInfo.java
@@ -16,14 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index.lucene.property;
 
 import java.util.Objects;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.guava.common.collect.TreeTraverser;
+import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
 import org.apache.jackrabbit.oak.commons.json.JsopBuilder;
 import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
@@ -91,7 +90,7 @@ public class HybridPropertyIndexInfo {
         TreeTraverser<NodeState> t = new TreeTraverser<NodeState>() {
             @Override
             public Iterable<NodeState> children(NodeState root) {
-                return Iterables.transform(root.getChildNodeEntries(), ChildNodeEntry::getNodeState);
+                return () -> CollectionUtils.toStream(root.getChildNodeEntries()).map(ChildNodeEntry::getNodeState).iterator();
             }
         };
         AtomicInteger matches = new AtomicInteger();
diff --git a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexLookup.java b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexLookup.java
index d6cd834c55..b80a74b3aa 100644
--- a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexLookup.java
+++ b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexLookup.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index.lucene.property;
 
 import java.util.Collections;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.oak.api.PropertyValue;
@@ -35,7 +35,7 @@ import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import static org.apache.jackrabbit.guava.common.collect.Iterables.transform;
+
 import static org.apache.jackrabbit.oak.commons.PathUtils.isAbsolute;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.property.HybridPropertyIndexUtil.PROPERTY_INDEX;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.property.HybridPropertyIndexUtil.PROP_HEAD_BUCKET;
@@ -102,13 +102,14 @@ public class HybridPropertyIndexLookup {
             result = querySimple(filter, indexName, propIndexNode, encodedValues);
         }
 
-        Iterable<String> paths = transform(result, path -> isAbsolute(path) ? path : "/" + path);
+        Iterable<String> paths = CollectionUtils.toStream(result).map(path -> isAbsolute(path) ? path : "/" + path)
+                .collect(Collectors.toList());
 
         if (log.isTraceEnabled()) {
-            paths = transform(paths, path -> {
+            paths = CollectionUtils.toStream(paths).map(path -> {
                 log.trace("[{}] {} = {} -> {}", indexPath, propertyName, encodedValues, path);
                 return path;
-            });
+            }).collect(Collectors.toList());
         }
         return paths;
     }
diff --git a/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/RecursiveDeleteTest.java b/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/RecursiveDeleteTest.java
index 34c604c258..c153a0ca1f 100644
--- a/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/RecursiveDeleteTest.java
+++ b/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/RecursiveDeleteTest.java
@@ -25,9 +25,9 @@ import java.util.List;
 import java.util.Random;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.apache.jackrabbit.guava.common.collect.Iterables;
 import org.apache.jackrabbit.guava.common.collect.TreeTraverser;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
+import org.apache.jackrabbit.oak.commons.collections.CollectionUtils;
 import org.apache.jackrabbit.oak.fixture.DocumentMemoryFixture;
 import org.apache.jackrabbit.oak.fixture.MemoryFixture;
 import org.apache.jackrabbit.oak.fixture.NodeStoreFixture;
@@ -46,7 +46,9 @@ import org.junit.runners.Parameterized;
 
 import static java.util.Arrays.asList;
 import static org.apache.jackrabbit.oak.spi.state.NodeStateUtils.getNode;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
 
 @RunWith(Parameterized.class)
 public class RecursiveDeleteTest {
@@ -152,7 +154,7 @@ public class RecursiveDeleteTest {
         TreeTraverser<NodeState> t = new TreeTraverser<NodeState>() {
             @Override
             public Iterable<NodeState> children(NodeState root) {
-                return Iterables.transform(root.getChildNodeEntries(), ChildNodeEntry::getNodeState);
+                return () -> CollectionUtils.toStream(root.getChildNodeEntries()).map(ChildNodeEntry::getNodeState).iterator();
             }
         };
         return t.preOrderTraversal(state).size();