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

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


The following commit(s) were added to refs/heads/OAK-11023 by this push:
     new 4d7cca3caf OAK-11023: Remove usage of Guava newArrayList (w.i.p.)
4d7cca3caf is described below

commit 4d7cca3caf6d15904179412b4ad35b4f2f5e33a8
Author: Julian Reschke <[email protected]>
AuthorDate: Sun Sep 1 16:17:38 2024 +0100

    OAK-11023: Remove usage of Guava newArrayList (w.i.p.)
---
 .../oak/management/RepositoryManager.java          |  1 +
 .../plugins/commit/AnnotatingConflictHandler.java  |  5 +-
 .../oak/plugins/cow/BranchNodeStore.java           |  8 +--
 .../oak/plugins/index/AsyncIndexUpdate.java        |  2 +-
 .../oak/plugins/index/AsyncIndexerService.java     |  2 +-
 .../index/CompositeIndexEditorProvider.java        |  2 +-
 .../oak/plugins/index/IndexMBeanRegistration.java  |  4 +-
 .../jackrabbit/oak/plugins/index/IndexUpdate.java  |  1 +
 .../index/aggregate/SimpleNodeAggregator.java      |  8 +--
 .../property/OrderedPropertyIndexProvider.java     | 12 ++---
 .../index/property/PropertyIndexLookup.java        |  2 +-
 .../plugins/index/property/PropertyIndexPlan.java  |  8 +--
 .../oak/plugins/itemsave/ItemSaveValidator.java    |  5 +-
 .../plugins/metric/StatisticsProviderFactory.java  |  4 +-
 .../plugins/nodetype/ReadOnlyNodeTypeManager.java  |  2 +-
 .../oak/plugins/nodetype/TypeEditor.java           | 29 +++++------
 .../oak/plugins/nodetype/TypeRegistration.java     |  5 +-
 .../nodetype/write/NodeTypeTemplateImpl.java       |  1 +
 .../oak/plugins/observation/EventGenerator.java    | 11 ++--
 .../plugins/observation/filter/FilterBuilder.java  | 18 +++----
 .../oak/plugins/observation/filter/Filters.java    |  8 +--
 .../oak/plugins/version/VersionHook.java           |  1 +
 .../oak/plugins/version/VersionableState.java      |  5 +-
 .../apache/jackrabbit/oak/query/ast/OrImpl.java    |  1 +
 .../security/authorization/accesscontrol/ACL.java  |  7 +--
 .../accesscontrol/AccessControlManagerImpl.java    | 19 ++++---
 .../composite/CompositeAccessControlManager.java   |  2 +-
 .../permission/MountPermissionProvider.java        |  3 +-
 .../internal/SecurityProviderRegistration.java     |  2 +-
 .../oak/security/user/PasswordHistory.java         |  7 ++-
 .../jackrabbit/oak/AbstractSecurityTest.java       |  3 +-
 .../java/org/apache/jackrabbit/oak/OakTest.java    |  2 +-
 .../plugins/index/IndexInfoServiceImplTest.java    |  8 +--
 .../plugins/index/IndexPathServiceImplTest.java    | 10 ++--
 .../oak/plugins/index/IndexUtilsTest.java          | 17 +++----
 .../index/aggregate/SimpleNodeAggregatorTest.java  | 58 +++++++++++-----------
 .../inventory/IndexDefinitionPrinterTest.java      |  7 ++-
 .../index/property/MultiPropertyOrTest.java        | 11 ++--
 .../index/property/PropertyIndexLookupTest.java    |  5 +-
 .../property/SinglePropertyIndexQueryTests.java    | 15 +++---
 .../plugins/index/property/ValuePatternTest.java   | 39 +++++++--------
 .../index/property/jmx/PropertyIndexStatsTest.java |  5 +-
 .../index/reference/ReferenceIndexTest.java        |  2 +-
 .../metric/MetricStatisticsProviderTest.java       |  2 +-
 .../plugins/migration/FilteringNodeStateTest.java  |  7 ++-
 .../oak/plugins/tree/impl/ImmutableTreeTest.java   | 13 +++--
 .../apache/jackrabbit/oak/query/IteratorsTest.java | 29 ++++++-----
 .../query/OrQueryOrderLimitWithoutIndexTest.java   |  6 +--
 .../jackrabbit/oak/query/UnionQueryTest.java       | 13 +++--
 .../authorization/AuthorizationContextTest.java    |  3 +-
 .../authorization/accesscontrol/ACLTest.java       |  9 ++--
 .../AccessControlImporterBaseTest.java             |  7 +--
 .../authorization/accesscontrol/EntryTest.java     | 11 ++--
 .../security/user/AuthorizableIteratorTest.java    |  5 +-
 .../security/user/UserConfigurationImplTest.java   |  5 +-
 .../user/autosave/AuthorizableWrapperTest.java     | 12 +++--
 56 files changed, 247 insertions(+), 242 deletions(-)

diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
index 2a84cacbe1..da908b776d 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/management/RepositoryManager.java
@@ -28,6 +28,7 @@ import static 
org.apache.jackrabbit.oak.commons.jmx.ManagementOperation.Status.s
 import static 
org.apache.jackrabbit.oak.commons.jmx.ManagementOperation.Status.toTabularData;
 import static 
org.apache.jackrabbit.oak.commons.jmx.ManagementOperation.Status.unavailable;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/AnnotatingConflictHandler.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/AnnotatingConflictHandler.java
index e489ad1553..471c7ad1ec 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/AnnotatingConflictHandler.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/AnnotatingConflictHandler.java
@@ -16,7 +16,6 @@
  */
 package org.apache.jackrabbit.oak.plugins.commit;
 
-
 import static org.apache.jackrabbit.JcrConstants.JCR_MIXINTYPES;
 import static org.apache.jackrabbit.JcrConstants.JCR_PRIMARYTYPE;
 import static org.apache.jackrabbit.oak.api.Type.NAMES;
@@ -33,6 +32,8 @@ import static 
org.apache.jackrabbit.oak.spi.state.ConflictType.DELETE_DELETED_NO
 import static 
org.apache.jackrabbit.oak.spi.state.ConflictType.DELETE_DELETED_PROPERTY;
 
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
@@ -136,7 +137,7 @@ public class AnnotatingConflictHandler implements 
ThreeWayConflictHandler {
     }
 
     private static NodeBuilder addConflictMarker(@NotNull NodeBuilder parent) {
-        List<String> mixins = new ArrayList<>(parent.getNames(JCR_MIXINTYPES));
+        List<String> mixins = 
StreamSupport.stream(parent.getNames(JCR_MIXINTYPES).spliterator(), 
false).collect(Collectors.toList());
         if (mixins.add(MIX_REP_MERGE_CONFLICT)) {
             parent.setProperty(JCR_MIXINTYPES, mixins, NAMES);
         }
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/cow/BranchNodeStore.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/cow/BranchNodeStore.java
index 9853a275f6..546bde2e43 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/cow/BranchNodeStore.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/cow/BranchNodeStore.java
@@ -39,15 +39,11 @@ import java.util.UUID;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 import java.util.stream.StreamSupport;
-import static org.apache.jackrabbit.guava.common.collect.Iterables.addAll;
 
-import static 
org.apache.jackrabbit.guava.common.collect.Lists.newCopyOnWriteArrayList;
 import static org.apache.jackrabbit.guava.common.collect.Maps.newConcurrentMap;
 
 import static java.util.Collections.emptyMap;
 import static java.util.Collections.singletonMap;
-import static java.util.stream.Collectors.toList;
-import static java.util.stream.StreamSupport.stream;
 
 public class BranchNodeStore implements NodeStore, Observable {
 
@@ -63,7 +59,7 @@ public class BranchNodeStore implements NodeStore, Observable 
{
 
     public BranchNodeStore(NodeStore nodeStore) throws CommitFailedException {
         this.nodeStore = nodeStore;
-        this.inheritedCheckpoints = new ArrayList<>(nodeStore.checkpoints());
+        this.inheritedCheckpoints = 
StreamSupport.stream(nodeStore.checkpoints().spliterator(), 
false).collect(Collectors.toList());
         this.checkpointMapping = newConcurrentMap();
 
         String cp = nodeStore.checkpoint(CHECKPOINT_LIFETIME, 
singletonMap("type", "copy-on-write"));
@@ -132,7 +128,7 @@ public class BranchNodeStore implements NodeStore, 
Observable {
     @Override
     public Iterable<String> checkpoints() {
         List<String> result = new ArrayList<>(inheritedCheckpoints);
-        result.retainAll(new ArrayList<>(nodeStore.checkpoints()));
+        
result.retainAll(StreamSupport.stream(nodeStore.checkpoints().spliterator(), 
false).collect(Collectors.toList()));
 
         checkpointMapping.entrySet().stream()
                 .filter(e -> 
memoryNodeStore.listCheckpoints().contains(e.getValue()))
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexUpdate.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexUpdate.java
index ff16aadd0e..00f0b4f36e 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexUpdate.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexUpdate.java
@@ -29,6 +29,7 @@ import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.REINDEX_PRO
 import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.MISSING_NODE;
 
 import java.io.Closeable;
+import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Collections;
 import java.util.HashSet;
@@ -50,7 +51,6 @@ import javax.management.openmbean.SimpleType;
 import javax.management.openmbean.TabularData;
 
 import com.codahale.metrics.MetricRegistry;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.api.stats.TimeSeries;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexerService.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexerService.java
index f59ed5fdf3..3b651469d2 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexerService.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexerService.java
@@ -21,12 +21,12 @@ package org.apache.jackrabbit.oak.plugins.index;
 
 import java.io.Closeable;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.guava.common.io.Closer;
 import org.apache.jackrabbit.oak.api.jmx.IndexStatsMBean;
 import org.apache.jackrabbit.oak.osgi.OsgiWhiteboard;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java
index 213d012ff1..1956798c40 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/CompositeIndexEditorProvider.java
@@ -16,6 +16,7 @@
  */
 package org.apache.jackrabbit.oak.plugins.index;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
@@ -28,7 +29,6 @@ import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.jetbrains.annotations.NotNull;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableList;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 
 /**
  * Aggregation of a list of editor providers into a single provider.
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexMBeanRegistration.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexMBeanRegistration.java
index 9c24e0c83b..a7d3d23beb 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexMBeanRegistration.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexMBeanRegistration.java
@@ -20,6 +20,7 @@ import static 
org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.ScheduleE
 import static 
org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean;
 import static 
org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.scheduleWithFixedDelay;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -29,9 +30,6 @@ import 
org.apache.jackrabbit.oak.spi.whiteboard.CompositeRegistration;
 import org.apache.jackrabbit.oak.spi.whiteboard.Registration;
 import org.apache.jackrabbit.oak.spi.whiteboard.Whiteboard;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
-import org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils;
-
 public class IndexMBeanRegistration implements Registration {
 
     private final Whiteboard whiteboard;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java
index 45417a6118..3d67bcf69d 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java
@@ -39,6 +39,7 @@ import static 
org.apache.jackrabbit.oak.spi.commit.CompositeEditor.compose;
 import static org.apache.jackrabbit.oak.spi.commit.EditorDiff.process;
 import static org.apache.jackrabbit.oak.spi.commit.VisibleEditor.wrap;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregator.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregator.java
index fd73673cec..e2c992abfa 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregator.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregator.java
@@ -18,7 +18,6 @@
  */
 package org.apache.jackrabbit.oak.plugins.index.aggregate;
 
-
 import static org.apache.jackrabbit.JcrConstants.JCR_PRIMARYTYPE;
 import static org.apache.jackrabbit.oak.api.Type.STRING;
 import static org.apache.jackrabbit.oak.commons.PathUtils.elements;
@@ -32,6 +31,8 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.spi.query.QueryIndex;
@@ -86,8 +87,9 @@ public class SimpleNodeAggregator implements 
QueryIndex.NodeAggregator {
                 parentPath = getParentPath(parentPath);
                 if (isNodeType(root, parentPath, primaryType)) {
                     parents.add(parentPath);
-                    parents.addAll(new ArrayList<>(getParents(root, parentPath,
-                            false)));
+                    final String pp = parentPath;
+                    Iterable<String> it = () -> getParents(root, pp, false);
+                    parents.addAll(StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList()));
                     return parents.iterator();
                 }
             }
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexProvider.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexProvider.java
index 31a912406d..d761f754e5 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexProvider.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexProvider.java
@@ -14,11 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index.property;
 
-
-
+import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.jackrabbit.oak.spi.query.QueryIndex;
@@ -36,19 +34,19 @@ public class OrderedPropertyIndexProvider implements 
QueryIndexProvider {
     private static final Logger LOG = 
LoggerFactory.getLogger(OrderedPropertyIndexProvider.class);
     private static int hits;
     private static int threshold = OrderedIndex.TRACK_DEPRECATION_EVERY;
-    
+
     @Override
     public List<? extends QueryIndex> getQueryIndexes(NodeState nodeState) {
         if (getHits() % threshold == 0) {
-            LOG.warn(OrderedIndex.DEPRECATION_MESSAGE);            
+            LOG.warn(OrderedIndex.DEPRECATION_MESSAGE);
         }
         return new ArrayList<>();
     }
-    
+
     private synchronized int getHits() {
         return hits++;
     }
-    
+
     /**
      * used only for testing purposes. Not thread safe.
      * 
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookup.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookup.java
index d22d6e05f3..4cc8e64e95 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookup.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookup.java
@@ -25,6 +25,7 @@ import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.INDEX_CONTE
 import static 
org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider.TYPE;
 import static 
org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexUtil.encode;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Set;
@@ -44,7 +45,6 @@ import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
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 7e1b396893..49a030527d 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
@@ -24,6 +24,7 @@ import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.DECLARING_N
 import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.INDEX_CONTENT_NODE_NAME;
 import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.PROPERTY_NAMES;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
 
@@ -45,13 +46,12 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 
 /**
  * Plan for querying a given property index using a given filter.
  */
 public class PropertyIndexPlan {
-    
+
     static final Logger LOG = LoggerFactory.getLogger(PropertyIndexPlan.class);
 
     /**
@@ -87,9 +87,9 @@ public class PropertyIndexPlan {
     private final PathFilter pathFilter;
 
     private final boolean unique;
-    
+
     private final boolean deprecated;
-    
+
     PropertyIndexPlan(String name, NodeState root, NodeState definition,
                       Filter filter){
         this(name, root, definition, filter, 
Mounts.defaultMountInfoProvider());
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/itemsave/ItemSaveValidator.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/itemsave/ItemSaveValidator.java
index 871350d5bc..30b3a3bf71 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/itemsave/ItemSaveValidator.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/itemsave/ItemSaveValidator.java
@@ -18,10 +18,11 @@
  */
 package org.apache.jackrabbit.oak.plugins.itemsave;
 
-
 import static org.apache.jackrabbit.oak.commons.PathUtils.elements;
 
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
@@ -50,7 +51,7 @@ class ItemSaveValidator extends SubtreeExcludingValidator {
         this(new FailingValidator(CommitFailedException.UNSUPPORTED, 0,
                 "Failed to save subtree at " + path + ". There are " +
                         "transient modifications outside that subtree."),
-                new ArrayList<>(elements(path)));
+                StreamSupport.stream(elements(path).spliterator(), 
false).collect(Collectors.toList()));
     }
 
     private ItemSaveValidator(Validator validator, List<String> path) {
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/metric/StatisticsProviderFactory.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/metric/StatisticsProviderFactory.java
index d24c792d67..b64d1c15c9 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/metric/StatisticsProviderFactory.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/metric/StatisticsProviderFactory.java
@@ -21,6 +21,7 @@ package org.apache.jackrabbit.oak.plugins.metric;
 
 import java.io.Closeable;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Dictionary;
 import java.util.Hashtable;
 import java.util.List;
@@ -29,7 +30,6 @@ import java.util.concurrent.ScheduledExecutorService;
 
 import javax.management.MBeanServer;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
 import org.apache.jackrabbit.oak.stats.DefaultStatisticsProvider;
 import org.apache.jackrabbit.oak.stats.StatisticsProvider;
@@ -92,7 +92,7 @@ public class StatisticsProviderFactory {
      */
     @Reference(cardinality = ReferenceCardinality.OPTIONAL)
     private MBeanServer server;
-    
+
     private StatisticsProvider statisticsProvider;
     private List<ServiceRegistration> regs = new ArrayList<>();;
     private ScheduledExecutorService executor;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/ReadOnlyNodeTypeManager.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/ReadOnlyNodeTypeManager.java
index 99d59db716..a3587a5eae 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/ReadOnlyNodeTypeManager.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/ReadOnlyNodeTypeManager.java
@@ -25,6 +25,7 @@ import static 
org.apache.jackrabbit.oak.commons.PathUtils.dropIndexFromName;
 import static 
org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants.NODE_TYPES_PATH;
 import static 
org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants.REP_SUPERTYPES;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.function.Supplier;
 
@@ -43,7 +44,6 @@ import javax.jcr.nodetype.NodeTypeTemplate;
 import javax.jcr.nodetype.PropertyDefinition;
 import javax.jcr.nodetype.PropertyDefinitionTemplate;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.commons.iterator.NodeTypeIteratorAdapter;
 import org.apache.jackrabbit.oak.api.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 4cf324e820..77682fdfd7 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
@@ -36,17 +36,19 @@ import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.MISSING_NO
 import static 
org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants.JCR_IS_ABSTRACT;
 import static 
org.apache.jackrabbit.oak.plugins.nodetype.constraint.Constraints.asPredicate;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
 import java.util.Set;
 import java.util.function.Predicate;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import javax.jcr.PropertyType;
 import javax.jcr.Value;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
@@ -73,7 +75,7 @@ import org.slf4j.LoggerFactory;
  *       is unique.
  */
 public class TypeEditor extends DefaultEditor {
-    
+
     /**
      * Extension point that allows pluggable handling of constraint violations
      */
@@ -100,28 +102,28 @@ public class TypeEditor extends DefaultEditor {
     }
 
     public static final ConstraintViolationCallback 
THROW_ON_CONSTRAINT_VIOLATION = new ConstraintViolationCallback() {
-        
+
         @Override
         public void onConstraintViolation(String path, List<String> 
nodeTypeNames, int code, String message) throws CommitFailedException {
-            
+
             String fullPath =  path + '[' + nodeTypeNames.toString() + ']';
 
             throw new CommitFailedException(CONSTRAINT, code, fullPath + ": " 
+ message);
         }
     };
-    
+
     public static final ConstraintViolationCallback 
WARN_ON_CONSTRAINT_VIOLATION = new ConstraintViolationCallback() {
-        
+
         @Override
         public void onConstraintViolation(String path, List<String> 
nodeTypeNames, int code, String message ) {
-            
+
             String fullPath =  path + '[' + nodeTypeNames.toString() + ']';
 
             log.warn(new CommitFailedException(CONSTRAINT, code, fullPath + ": 
" + message).getMessage());
 
         }
     };
-    
+
     /**
      * Creates a new {@linkplain TypeEditor} instance
      * 
@@ -230,7 +232,7 @@ public class TypeEditor extends DefaultEditor {
      */
     private void constraintViolation(int code, String message) throws 
CommitFailedException {
         List<String> nodeTypeNames = effective != null ? 
effective.getDirectTypeNames() : Collections.emptyList();
-        
+
         callback.onConstraintViolation(getPath(), nodeTypeNames, code, 
message);
     }
 
@@ -441,10 +443,9 @@ public class TypeEditor extends DefaultEditor {
     }
 
     private static boolean mixinsChanged(NodeState before, Iterable<String> 
after) {
-        List<String> pre = Lists.new 
ArrayList<>(before.getNames(JCR_MIXINTYPES));
-        Collections.sort(pre);
-        List<String> post = Lists.new ArrayList<>(after);
-        Collections.sort(post);
+        List<String> pre = 
StreamSupport.stream(before.getNames(JCR_MIXINTYPES).spliterator(), 
false).sorted()
+                .collect(Collectors.toList());
+        List<String> post = StreamSupport.stream(after.spliterator(), 
false).sorted().collect(Collectors.toList());
         if (pre.isEmpty() && post.isEmpty()) {
             return false;
         } else if (pre.isEmpty() || post.isEmpty()) {
@@ -467,7 +468,7 @@ public class TypeEditor extends DefaultEditor {
             constraintViolation(21, "Mandatory property '" + 
properties.iterator().next() + "' not found in a new node");
         }
 
-        List<String> names = Lists.new ArrayList<>(after.getChildNodeNames());
+        List<String> names = 
StreamSupport.stream(after.getChildNodeNames().spliterator(), 
false).collect(Collectors.toList());
         for (String child : effective.getMandatoryChildNodes()) {
             if (!names.remove(child)) {
                 constraintViolation(25, "Mandatory child node '" + child + "' 
not found in a new node");
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeRegistration.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeRegistration.java
index 2709def87d..0ff89f77d3 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeRegistration.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeRegistration.java
@@ -69,6 +69,8 @@ import java.util.Collections;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
@@ -388,8 +390,7 @@ class TypeRegistration extends DefaultNodeStateDiff {
     }
 
     private void addNameToList(NodeBuilder type, String name, String value) {
-        List<String> values;
-        values = new ArrayList<>(getNames(type, name));
+        List<String> values = StreamSupport.stream(getNames(type, 
name).spliterator(), false).collect(Collectors.toList());
         if (!values.contains(value)) {
             values.add(value);
         }
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/NodeTypeTemplateImpl.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/NodeTypeTemplateImpl.java
index 03c07e569b..a183a159f2 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/NodeTypeTemplateImpl.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/NodeTypeTemplateImpl.java
@@ -32,6 +32,7 @@ import static org.apache.jackrabbit.oak.api.Type.NAME;
 import static 
org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants.JCR_IS_ABSTRACT;
 import static 
org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants.JCR_IS_QUERYABLE;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.function.Predicate;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/EventGenerator.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/EventGenerator.java
index fde1f75ed8..1eb37d83ce 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/EventGenerator.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/EventGenerator.java
@@ -18,7 +18,6 @@
  */
 package org.apache.jackrabbit.oak.plugins.observation;
 
-
 import static org.apache.jackrabbit.guava.common.collect.Lists.newLinkedList;
 import static org.apache.jackrabbit.guava.common.collect.Sets.newHashSet;
 import static org.apache.jackrabbit.oak.api.Type.NAMES;
@@ -30,6 +29,8 @@ import static 
org.apache.jackrabbit.oak.spi.state.MoveDetector.SOURCE_PATH;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
@@ -194,10 +195,10 @@ public class EventGenerator {
                 // check for reordering of child nodes
                 if (OAK_CHILD_ORDER.equals(before.getName())) {
                     // list the child node names before and after the change
-                    List<String> beforeNames =
-                            new ArrayList<>(before.getValue(NAMES));
-                    List<String> afterNames =
-                            new ArrayList<>(after.getValue(NAMES));
+                    List<String> beforeNames = 
StreamSupport.stream(before.getValue(NAMES).spliterator(), false)
+                            .collect(Collectors.toList());
+                    List<String> afterNames = 
StreamSupport.stream(after.getValue(NAMES).spliterator(), false)
+                            .collect(Collectors.toList());
 
                     // check only those names that weren't added or removed
                     beforeNames.retainAll(newHashSet(afterNames));
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 d664b76165..36cc60fa9a 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
@@ -30,6 +30,8 @@ import static javax.jcr.observation.Event.PROPERTY_CHANGED;
 import static javax.jcr.observation.Event.PROPERTY_REMOVED;
 import static org.apache.jackrabbit.oak.commons.PathUtils.isAncestor;
 
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -63,8 +65,8 @@ public final class FilterBuilder {
     private final List<String> subTrees = new ArrayList<>();
     private final Set<String> pathsForMBean = newHashSet();
     private Condition condition = includeAll();
+
     private ChangeSetFilter changeSetFilter = new ChangeSetFilter() {
-        
         @Override
         public boolean excludes(ChangeSet changeSet) {
             return false;
@@ -77,7 +79,7 @@ public final class FilterBuilder {
         @NotNull
         EventFilter createFilter(@NotNull NodeState before, @NotNull NodeState 
after);
     }
-    
+
     @NotNull
     public FilterBuilder setChangeSetFilter(@NotNull ChangeSetFilter 
changeSetFilter) {
         this.changeSetFilter = changeSetFilter;
@@ -341,7 +343,7 @@ public final class FilterBuilder {
      */
     @NotNull
     public Condition any(@NotNull Condition... conditions) {
-        return new AnyCondition(new ArrayList<>(requireNonNull(conditions)));
+        return new AnyCondition(Arrays.asList(requireNonNull(conditions)));
     }
 
     /**
@@ -351,7 +353,7 @@ public final class FilterBuilder {
      */
     @NotNull
     public Condition all(@NotNull Condition... conditions) {
-        return new AllCondition(new ArrayList<>(requireNonNull(conditions)));
+        return new AllCondition(Arrays.asList(requireNonNull(conditions)));
     }
 
     /**
@@ -601,10 +603,6 @@ public final class FilterBuilder {
             this.conditions = conditions;
         }
 
-        public AnyCondition(Condition... conditions) {
-            this(new ArrayList<>(conditions));
-        }
-
         @Override
         public EventFilter createFilter(NodeState before, NodeState after) {
             List<EventFilter> filters = new ArrayList<>();
@@ -628,10 +626,6 @@ public final class FilterBuilder {
             this.conditions = conditions;
         }
 
-        public AllCondition(Condition... conditions) {
-            this(new ArrayList<>(conditions));
-        }
-
         @Override
         public EventFilter createFilter(NodeState before, NodeState after) {
             List<EventFilter> filters = new ArrayList<>();
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/Filters.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/Filters.java
index 1b89c2335e..c7d23fb6c7 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/Filters.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/Filters.java
@@ -22,10 +22,10 @@ import static java.util.Objects.requireNonNull;
 import static 
org.apache.jackrabbit.oak.plugins.observation.filter.ConstantFilter.EXCLUDE_ALL;
 import static 
org.apache.jackrabbit.oak.plugins.observation.filter.ConstantFilter.INCLUDE_ALL;
 
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
-
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.jetbrains.annotations.NotNull;
@@ -100,7 +100,7 @@ public final class Filters {
      */
     @NotNull
     public static EventFilter any(@NotNull final EventFilter... filters) {
-        return any(Lists.new ArrayList<>(requireNonNull(filters)));
+        return any(Arrays.asList(requireNonNull(filters)));
     }
 
     /**
@@ -111,7 +111,7 @@ public final class Filters {
      */
     @NotNull
     public static EventFilter all(@NotNull final EventFilter... filters) {
-        return all(Lists.new ArrayList<>(requireNonNull(filters)));
+        return all(Arrays.asList(requireNonNull(filters)));
     }
 
     /**
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionHook.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionHook.java
index 53c4792282..56323d4f4f 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionHook.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionHook.java
@@ -27,6 +27,7 @@ import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.jetbrains.annotations.NotNull;
 import org.osgi.service.component.annotations.Component;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
 
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionableState.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionableState.java
index 8cbc5380e5..069a5c0096 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionableState.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionableState.java
@@ -49,13 +49,14 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import javax.jcr.RepositoryException;
 import javax.jcr.Value;
 import javax.jcr.nodetype.PropertyDefinition;
 import javax.jcr.version.OnParentVersionAction;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Tree;
@@ -187,7 +188,7 @@ class VersionableState {
         frozen.setProperty(JCR_PRIMARYTYPE, NT_FROZENNODE, Type.NAME);
         List<String> mixinTypes;
         if (node.hasProperty(JCR_MIXINTYPES)) {
-            mixinTypes = Lists.new ArrayList<>(node.getNames(JCR_MIXINTYPES));
+            mixinTypes = 
StreamSupport.stream(node.getNames(JCR_MIXINTYPES).spliterator(), 
false).collect(Collectors.toList());
         } else {
             mixinTypes = Collections.emptyList();
         }
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/OrImpl.java 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/OrImpl.java
index cfa087d69a..aa77e893c4 100644
--- a/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/OrImpl.java
+++ b/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/OrImpl.java
@@ -26,6 +26,7 @@ import static 
org.apache.jackrabbit.guava.common.collect.Sets.newLinkedHashSet;
 import static 
org.apache.jackrabbit.oak.query.ast.AstElementFactory.copyElementAndCheckReference;
 import static org.apache.jackrabbit.oak.query.ast.Operator.EQUAL;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACL.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACL.java
index 3ce1d5d766..963c7eb3b9 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACL.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACL.java
@@ -23,6 +23,8 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.stream.Collectors;
+
 import javax.jcr.RepositoryException;
 import javax.jcr.Value;
 import javax.jcr.security.AccessControlEntry;
@@ -30,7 +32,6 @@ import javax.jcr.security.AccessControlException;
 import javax.jcr.security.Privilege;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.api.security.authorization.PrivilegeManager;
 import org.apache.jackrabbit.oak.namepath.NamePathMapper;
 import org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.ACE;
@@ -164,8 +165,8 @@ abstract class ACL extends AbstractAccessControlList {
     private boolean internalAddEntry(@NotNull ACE entry) throws 
RepositoryException {
         final String principalName = entry.getPrincipal().getName();
         final Set<Restriction> restrictions = entry.getRestrictions();
-        List<ACE> subList = Lists.new ArrayList<>(Iterables.filter(entries, 
ace ->
-                
principalName.equals(requireNonNull(ace).getPrincipal().getName()) && 
restrictions.equals(ace.getRestrictions())));
+        List<ACE> subList = entries.stream().filter(ace -> 
principalName.equals(requireNonNull(ace).getPrincipal().getName())
+                && 
restrictions.equals(ace.getRestrictions())).collect(Collectors.toList());
 
         boolean addEntry = true;
         for (ACE existing : subList) {
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImpl.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImpl.java
index 62c97b9631..29d5d66970 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImpl.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlManagerImpl.java
@@ -43,7 +43,6 @@ import javax.jcr.security.Privilege;
 import org.apache.jackrabbit.guava.common.base.Strings;
 import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
 import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.guava.common.collect.Sets;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.api.security.JackrabbitAccessControlList;
@@ -220,7 +219,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
         AccessControlPolicy[] plcs = getPolicies(principalAcl.principal);
         PrincipalACL existing = (plcs.length == 0) ? null : (PrincipalACL) 
plcs[0];
 
-        List<ACE> toAdd = Lists.new ArrayList<>(principalAcl.getEntries());
+        List<ACE> toAdd = new ArrayList<>(principalAcl.getEntries());
         List<ACE> toRemove = Collections.emptyList();
         if (existing != null) {
             toAdd.removeAll(existing.getEntries());
@@ -256,7 +255,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
             }
         }
     }
-    
+
     @NotNull
     private ACL populateNodeBasedAcl(@NotNull ACE ace, @Nullable String path, 
@NotNull Tree tree) throws RepositoryException {
         ACL acl = (ACL) createACL(path, tree, false);
@@ -335,7 +334,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
         if (!Util.checkValidPrincipal(principal, principalManager, 
Util.getImportBehavior(getConfig()))) {
             return new JackrabbitAccessControlPolicy[0];
         }
-        
+
         String oakPath = (principal instanceof ItemBasedPrincipal) ? 
((ItemBasedPrincipal) principal).getPath() : null;
         JackrabbitAccessControlPolicy policy = createPrincipalACL(oakPath, 
principal);
 
@@ -442,7 +441,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
         String aclName = Util.getAclName(oakPath);
         return TreeUtil.addChild(tree, aclName, NT_REP_ACL);
     }
-    
+
     @Nullable
     private JackrabbitAccessControlList createACL(@Nullable String oakPath,
                                                   @NotNull Tree 
accessControlledTree,
@@ -592,7 +591,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
             return getOakPath(Strings.emptyToNull(v.getString()));
         }
     }
-    
+
     @NotNull
     private Set<AccessControlPolicy> internalGetEffectivePolicies(@NotNull 
Set<Principal> principals, Collection<String> oakPaths) throws 
RepositoryException {
         Root r = getLatestRoot();
@@ -623,7 +622,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
         }
         return effective;
     }
-    
+
     private static boolean matchingPath(@Nullable String accessControlledPath, 
@NotNull Collection<String> oakPaths) {
         if (oakPaths.isEmpty()) {
             return true;
@@ -790,7 +789,7 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
         public int hashCode() {
             return 0;
         }
-        
+
         private void remove(Map<String, Principal> principalMap) throws 
RepositoryException {
             for (ACE ace : getEntries()) {
                 String path = getNodePath(ace);
@@ -854,11 +853,11 @@ public class AccessControlManagerImpl extends 
AbstractAccessControlManager imple
         public boolean test(@NotNull Tree aceTree) {
             return matchingPrincipal(aceTree) && matchingRestrictions(aceTree);
         }
-        
+
         private boolean matchingPrincipal(@NotNull Tree aceTree) {
             return Iterables.contains(principalNames, 
TreeUtil.getString(aceTree, REP_PRINCIPAL_NAME));
         }
-        
+
         private boolean matchingRestrictions(@NotNull Tree aceTree) {
             if (oakPaths.isEmpty()) {
                 return true;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java
index 459bfd86cc..0f3e691dcd 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java
@@ -17,6 +17,7 @@
 package org.apache.jackrabbit.oak.security.authorization.composite;
 
 import java.security.Principal;
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
@@ -32,7 +33,6 @@ import javax.jcr.security.Privilege;
 import org.apache.jackrabbit.guava.common.collect.ImmutableList;
 import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
 import org.apache.jackrabbit.guava.common.collect.Iterators;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.api.security.JackrabbitAccessControlManager;
 import org.apache.jackrabbit.api.security.JackrabbitAccessControlPolicy;
 import 
org.apache.jackrabbit.commons.iterator.AccessControlPolicyIteratorAdapter;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java
index e792920f60..226c0755ce 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java
@@ -17,6 +17,7 @@
 package org.apache.jackrabbit.oak.security.authorization.permission;
 
 import java.security.Principal;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Set;
@@ -31,8 +32,6 @@ import 
org.apache.jackrabbit.oak.spi.security.authorization.restriction.Restrict
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
-
-
 public class MountPermissionProvider extends PermissionProviderImpl {
 
     @NotNull
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistration.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistration.java
index ed2922c397..00e91753e0 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistration.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistration.java
@@ -76,6 +76,7 @@ import org.slf4j.LoggerFactory;
 
 import javax.jcr.security.AccessControlManager;
 import java.security.Principal;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Dictionary;
@@ -86,7 +87,6 @@ import java.util.Set;
 import java.util.SortedMap;
 import java.util.TreeMap;
 
-
 import static org.apache.jackrabbit.oak.commons.IOUtils.closeQuietly;
 import static 
org.apache.jackrabbit.oak.spi.security.ConfigurationParameters.EMPTY;
 import static 
org.apache.jackrabbit.oak.spi.security.RegistrationConstants.OAK_SECURITY_NAME;
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/PasswordHistory.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/PasswordHistory.java
index 88bb0b14da..b41a528036 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/PasswordHistory.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/PasswordHistory.java
@@ -18,11 +18,13 @@ package org.apache.jackrabbit.oak.security.user;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
+
 import javax.jcr.AccessDeniedException;
 import javax.jcr.nodetype.ConstraintViolationException;
 
 import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.api.Type;
@@ -86,7 +88,8 @@ final class PasswordHistory implements UserConstants {
             PropertyState historyProp = 
passwordTree.getProperty(UserConstants.REP_PWD_HISTORY);
 
             // insert the current (old) password at the beginning of the 
password history
-            List<String> historyEntries = (historyProp == null) ? new 
ArrayList<>() : Lists.new ArrayList<>(historyProp.getValue(Type.STRINGS));
+            List<String> historyEntries = (historyProp == null) ? new 
ArrayList<>()
+                    : 
StreamSupport.stream(historyProp.getValue(Type.STRINGS).spliterator(), 
false).collect(Collectors.toList());
             historyEntries.add(0, currentPasswordHash);
 
             /* remove oldest history entries exceeding configured history max 
size (e.g. after
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/AbstractSecurityTest.java 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/AbstractSecurityTest.java
index aafda8a348..0e1e93dcda 100644
--- a/oak-core/src/test/java/org/apache/jackrabbit/oak/AbstractSecurityTest.java
+++ b/oak-core/src/test/java/org/apache/jackrabbit/oak/AbstractSecurityTest.java
@@ -17,6 +17,7 @@
 package org.apache.jackrabbit.oak;
 
 import java.security.Principal;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Set;
@@ -72,8 +73,6 @@ import org.junit.After;
 import org.junit.Before;
 import org.mockito.Mockito;
 
-
-
 /**
  * AbstractOakTest is the base class for oak test execution.
  */
diff --git a/oak-core/src/test/java/org/apache/jackrabbit/oak/OakTest.java 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/OakTest.java
index 8628f0b969..8a44d0a19a 100644
--- a/oak-core/src/test/java/org/apache/jackrabbit/oak/OakTest.java
+++ b/oak-core/src/test/java/org/apache/jackrabbit/oak/OakTest.java
@@ -17,6 +17,7 @@
 package org.apache.jackrabbit.oak;
 
 import java.io.Closeable;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.Executors;
@@ -26,7 +27,6 @@ import java.util.concurrent.atomic.AtomicReference;
 
 import javax.jcr.NoSuchWorkspaceException;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.ContentRepository;
 import org.apache.jackrabbit.oak.api.ContentSession;
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexInfoServiceImplTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexInfoServiceImplTest.java
index 58444e46c5..90fd2ba7b3 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexInfoServiceImplTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexInfoServiceImplTest.java
@@ -16,13 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index;
 
 import java.util.Collections;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
 import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
 import org.apache.jackrabbit.oak.spi.commit.EmptyHook;
@@ -89,7 +89,7 @@ public class IndexInfoServiceImplTest {
 
     @Test
     public void allIndexInfo() throws Exception{
-        pathService.paths = Lists.new ArrayList<>("/oak:index/a", 
"/oak:index/b", "/oak:index/c", "/oak:index/d");
+        pathService.paths = List.of("/oak:index/a", "/oak:index/b", 
"/oak:index/c", "/oak:index/d");
 
         NodeBuilder builder = store.getRoot().builder();
         builder.child("oak:index").child("a"); //Index with no type
@@ -113,7 +113,7 @@ public class IndexInfoServiceImplTest {
         service.bindInfoProviders(type_c);
         service.bindInfoProviders(type_d);
 
-        List<IndexInfo> infos = Lists.new 
ArrayList<>(service.getAllIndexInfo());
+        List<IndexInfo> infos = 
StreamSupport.stream(service.getAllIndexInfo().spliterator(), 
false).collect(Collectors.toList());
 
         //Result would only have 2 entries. One throwing exception would be 
ignored
         assertEquals(2, infos.size());
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexPathServiceImplTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexPathServiceImplTest.java
index 70655d2949..7319f51443 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexPathServiceImplTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexPathServiceImplTest.java
@@ -16,13 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.guava.common.collect.Sets;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.oak.InitialContent;
@@ -99,9 +100,10 @@ public class IndexPathServiceImplTest extends 
AbstractQueryTest {
         Tree nodetype = root.getTree("/oak:index/nodetype");
         assertTrue(nodetype.exists());
 
-        List<String> nodetypes = new ArrayList<>();;
+        List<String> nodetypes = new ArrayList<>();
         if (nodetype.hasProperty(DECLARING_NODE_TYPES)){
-            nodetypes = Lists.new 
ArrayList<>(nodetype.getProperty(DECLARING_NODE_TYPES).getValue(Type.STRINGS));
+            nodetypes = 
StreamSupport.stream(nodetype.getProperty(DECLARING_NODE_TYPES).getValue(Type.STRINGS).spliterator(),
 false)
+                    .collect(Collectors.toList());
         }
 
         nodetypes.add(INDEX_DEFINITIONS_NODE_TYPE);
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexUtilsTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexUtilsTest.java
index 58e3d7d10f..0bafbff8d3 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexUtilsTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexUtilsTest.java
@@ -16,8 +16,8 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index;
+
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
@@ -27,24 +27,23 @@ import org.junit.Test;
 
 import java.util.Iterator;
 import java.util.LinkedHashSet;
+import java.util.List;
 import java.util.Set;
 import java.util.Map;
 import java.util.LinkedHashMap;
 import java.util.Calendar;
 
-
 import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
-
 public class IndexUtilsTest {
-    
+
     // all relevant package TLDs
     private static final String[] ALL_CLASSES_IGNORED = new String[] {"org", 
"com", "sun", "jdk", "java"};
-    
+
     // all packages used with Oak
     private static final String[] OAK_CLASSES_IGNORED = new String[] 
{"org.apache.jackrabbit", "java.lang", "sun.reflect", "jdk"};
 
@@ -57,10 +56,10 @@ public class IndexUtilsTest {
         assertNull(IndexUtils.getAsyncLaneName(EMPTY_NODE, "/fooIndex"));
 
         NodeBuilder builder = EMPTY_NODE.builder();
-        builder.setProperty("async", new ArrayList<>("async2", "sync"), 
Type.STRINGS);
+        builder.setProperty("async", List.of("async2", "sync"), Type.STRINGS);
         assertEquals("async2", 
IndexUtils.getAsyncLaneName(builder.getNodeState(), "/fooIndex"));
 
-        builder.setProperty("async", new ArrayList<>("async3"), Type.STRINGS);
+        builder.setProperty("async", List.of("async3"), Type.STRINGS);
         assertEquals("async3", 
IndexUtils.getAsyncLaneName(builder.getNodeState(), "/fooIndex"));
     }
 
@@ -68,9 +67,9 @@ public class IndexUtilsTest {
     public void getCaller() {
         assertNotNull(IndexUtils.getCaller(null));
         assertNotNull(IndexUtils.getCaller(new String[0]));
-        
+
         assertEquals("(internal)",IndexUtils.getCaller(ALL_CLASSES_IGNORED));
-        
+
         String caller = IndexUtils.getCaller(OAK_CLASSES_IGNORED);
         assertTrue(caller.startsWith("org.junit.runners"));
     }
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregatorTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregatorTest.java
index ac7c60e25f..761589478c 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregatorTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/aggregate/SimpleNodeAggregatorTest.java
@@ -28,6 +28,8 @@ import static org.junit.Assert.assertTrue;
 import static 
org.apache.jackrabbit.oak.plugins.index.aggregate.SimpleNodeAggregator.INCLUDE_ALL;
 
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
@@ -47,13 +49,13 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FILE, new ArrayList<>(JCR_CONTENT));
+                NT_FILE, List.of(JCR_CONTENT));
 
         String path = "/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
-        assertEquals(new ArrayList<>("/file"), actual);
+        assertEquals(List.of("/file"), actual);
 
     }
 
@@ -68,11 +70,11 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FILE, new ArrayList<>(JCR_CONTENT));
+                NT_FILE, List.of(JCR_CONTENT));
 
         String path = "/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
         assertTrue(actual.isEmpty());
 
@@ -89,13 +91,13 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FILE, new ArrayList<>(INCLUDE_ALL));
+                NT_FILE, List.of(INCLUDE_ALL));
 
         String path = "/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
-        assertEquals(new ArrayList<>("/file"), actual);
+        assertEquals(List.of("/file"), actual);
 
     }
 
@@ -110,13 +112,13 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FILE, new ArrayList<>("*", "*/*", "*/*/*", "*/*/*/*"));
+                NT_FILE, List.of("*", "*/*", "*/*/*", "*/*/*/*"));
 
         String path = "/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
-        assertEquals(new ArrayList<>("/file"), actual);
+        assertEquals(List.of("/file"), actual);
 
     }
 
@@ -131,11 +133,11 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FILE, new ArrayList<>(INCLUDE_ALL));
+                NT_FILE, List.of(INCLUDE_ALL));
 
         String path = "/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
         assertTrue(actual.isEmpty());
 
@@ -155,14 +157,14 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FOLDER, new ArrayList<>("file")).newRuleWithName(NT_FILE,
-                new ArrayList<>(INCLUDE_ALL));
+                NT_FOLDER, List.of("file")).newRuleWithName(NT_FILE,
+                        List.of(INCLUDE_ALL));
 
         String path = "/folder/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
-        assertEquals(new ArrayList<>("/folder/file", "/folder"), actual);
+        assertEquals(List.of("/folder/file", "/folder"), actual);
 
     }
 
@@ -180,14 +182,14 @@ public class SimpleNodeAggregatorTest {
         file.child(JCR_CONTENT);
 
         SimpleNodeAggregator agg = new SimpleNodeAggregator().newRuleWithName(
-                NT_FOLDER, new ArrayList<>("file")).newRuleWithName(NT_FILE,
-                new ArrayList<>(JCR_CONTENT));
+                NT_FOLDER, List.of("file")).newRuleWithName(NT_FILE,
+                        List.of(JCR_CONTENT));
 
         String path = "/folder/file/jcr:content";
-        List<String> actual = new ArrayList<>(agg.getParents(
-                builder.getNodeState(), path));
+        Iterable<String> it = () -> agg.getParents(builder.getNodeState(), 
path);
+        List<String> actual = StreamSupport.stream(it.spliterator(), 
false).collect(Collectors.toList());
 
-        assertEquals(new ArrayList<>("/folder/file", "/folder"), actual);
+        assertEquals(List.of("/folder/file", "/folder"), actual);
 
     }
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/inventory/IndexDefinitionPrinterTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/inventory/IndexDefinitionPrinterTest.java
index e1401bcda6..453c891bb0 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/inventory/IndexDefinitionPrinterTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/inventory/IndexDefinitionPrinterTest.java
@@ -16,13 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index.inventory;
 
 import java.io.PrintWriter;
 import java.io.StringWriter;
+import java.util.List;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.felix.inventory.Format;
 import org.apache.jackrabbit.oak.plugins.index.IndexPathService;
 import org.apache.jackrabbit.oak.plugins.index.importer.IndexDefinitionUpdater;
@@ -59,7 +58,7 @@ public class IndexDefinitionPrinterTest {
 
         store.merge(builder, EmptyHook.INSTANCE, CommitInfo.EMPTY);
 
-        when(pathService.getIndexPaths()).thenReturn(Lists.new 
ArrayList<>("/a", "/b"));
+        when(pathService.getIndexPaths()).thenReturn(List.of("/a", "/b"));
 
         String json = getJSON();
 
@@ -81,7 +80,7 @@ public class IndexDefinitionPrinterTest {
         builder.child("a").setProperty("foo", new 
ArrayBasedBlob("hello".getBytes()));
         store.merge(builder, EmptyHook.INSTANCE, CommitInfo.EMPTY);
 
-        when(pathService.getIndexPaths()).thenReturn(Lists.new 
ArrayList<>("/a"));
+        when(pathService.getIndexPaths()).thenReturn(List.of("/a"));
 
         String json = getJSON();
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/MultiPropertyOrTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/MultiPropertyOrTest.java
index 53c858295e..7ce94d1c13 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/MultiPropertyOrTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/MultiPropertyOrTest.java
@@ -24,13 +24,15 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
 import java.text.ParseException;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Random;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import javax.jcr.query.Query;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableList;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.guava.common.collect.Maps;
 import org.apache.jackrabbit.oak.Oak;
 import org.apache.jackrabbit.oak.api.ContentRepository;
@@ -185,9 +187,10 @@ public class MultiPropertyOrTest extends AbstractQueryTest 
{
     }
 
     private String measureWithLimit(String query, String lang, int limit) 
throws ParseException {
-        List<? extends ResultRow> result = Lists.new ArrayList<>(
-            qe.executeQuery(query, lang, limit, 0, Maps.<String, 
PropertyValue>newHashMap(),
-                NO_MAPPINGS).getRows());
+        List<? extends ResultRow> result = StreamSupport
+                .stream(qe.executeQuery(query, lang, limit, 0, Maps.<String, 
PropertyValue> newHashMap(), NO_MAPPINGS).getRows()
+                        .spliterator(), false)
+                .collect(Collectors.toList());
 
         String measure = "";
         if (result.size() > 0) {
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookupTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookupTest.java
index bd3270501c..f6dfc533d0 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookupTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookupTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.jackrabbit.oak.plugins.index.property;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.plugins.index.IndexUpdateProvider;
 import org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState;
 import org.apache.jackrabbit.oak.plugins.memory.PropertyStates;
@@ -47,8 +46,8 @@ import static org.junit.Assert.assertNotNull;
 
 public class PropertyIndexLookupTest {
 
-    private static final List<String> PROP_NAMES = Lists.new 
ArrayList<>("jcr:primaryType", "jcr:mixinTypes");
-    private static final List<String> DECL_NODE_TYPES = Lists.new 
ArrayList<>("nt:unstructured", "mix:versionable");
+    private static final List<String> PROP_NAMES = List.of("jcr:primaryType", 
"jcr:mixinTypes");
+    private static final List<String> DECL_NODE_TYPES = 
List.of("nt:unstructured", "mix:versionable");
 
     private NodeState root;
     private NodeBuilder rootBuilder;
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/SinglePropertyIndexQueryTests.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/SinglePropertyIndexQueryTests.java
index fdf6f4a050..f909541c2c 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/SinglePropertyIndexQueryTests.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/SinglePropertyIndexQueryTests.java
@@ -24,6 +24,7 @@ import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.PROPERTY_NA
 import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.REINDEX_PROPERTY_NAME;
 import static 
org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider.TYPE;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.jackrabbit.oak.Oak;
@@ -36,7 +37,7 @@ import org.junit.Test;
 
 public class SinglePropertyIndexQueryTests extends AbstractQueryTest {
     private static final String INDEXED_PROPERTY = "indexedProperty";
-    
+
     @Override
     protected ContentRepository createRepository() {
         return new Oak().with(new InitialContent())
@@ -61,27 +62,27 @@ public class SinglePropertyIndexQueryTests extends 
AbstractQueryTest {
             "and " +
             "(@" + INDEXED_PROPERTY + " = 'b' or @" + INDEXED_PROPERTY + " = 
'd')]";
         List<String> expected = new ArrayList<>();
-        
+
         Tree content = root.getTree("/").addChild("content");
-        
+
         // adding /content/node1 { a, b } 
         Tree node = content.addChild("node1");
         node.setProperty(INDEXED_PROPERTY, of("a", "b"), STRINGS);
         expected.add(node.getPath());
-        
+
         // adding /content/node2 { c, d }
         node = content.addChild("node2");
         node.setProperty(INDEXED_PROPERTY, of("c", "d"), STRINGS);
         expected.add(node.getPath());
-        
+
         // adding nodes with {a, x} and {c, x} these should not be returned
         node = content.addChild("node3");
         node.setProperty(INDEXED_PROPERTY, of("a", "x"), STRINGS);
         node = content.addChild("node4");
         node.setProperty(INDEXED_PROPERTY, of("c", "x"), STRINGS);
-        
+
         root.commit();
-        
+
         assertQuery(statement, "xpath", expected);
     }
 }
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/ValuePatternTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/ValuePatternTest.java
index 3270b66e5f..e0e13705cf 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/ValuePatternTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/ValuePatternTest.java
@@ -25,6 +25,7 @@ import static org.junit.Assert.assertTrue;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
+import java.util.List;
 
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
@@ -37,28 +38,26 @@ import org.apache.jackrabbit.oak.query.index.FilterImpl;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.junit.Test;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
-
 public class ValuePatternTest {
-    
+
     @Test
     public void getStringsBuilder() {
         NodeBuilder b = new MemoryNodeBuilder(EmptyNodeState.EMPTY_NODE);
         assertNull(ValuePattern.getStrings(b, "x"));
-        
+
         b.setProperty("x", "");
         assertEquals("[]", ValuePattern.getStrings(b, "x").toString());
-        
+
         b.setProperty("x", "test");
         assertEquals("[test]", ValuePattern.getStrings(b, "x").toString());
-        
+
         PropertyState ps = PropertyStates.createProperty(
                 "x",
                 Arrays.asList("hello"),
                 Type.STRINGS);
         b.setProperty(ps);
         assertEquals("[hello]", ValuePattern.getStrings(b, "x").toString());
-        
+
         ps = PropertyStates.createProperty(
                 "x",
                 Arrays.asList(),
@@ -73,25 +72,25 @@ public class ValuePatternTest {
         b.setProperty(ps);
         assertEquals("[a, b]", ValuePattern.getStrings(b, "x").toString());
     }
-    
+
     @Test
     public void getStringsState() {
         NodeBuilder b = new MemoryNodeBuilder(EmptyNodeState.EMPTY_NODE);
         assertNull(ValuePattern.getStrings(b.getNodeState(), "x"));
-        
+
         b.setProperty("x", "");
         assertEquals("[]", ValuePattern.getStrings(b.getNodeState(), 
"x").toString());
-        
+
         b.setProperty("x", "test");
         assertEquals("[test]", ValuePattern.getStrings(b.getNodeState(), 
"x").toString());
-        
+
         PropertyState ps = PropertyStates.createProperty(
                 "x",
                 Arrays.asList("hello"),
                 Type.STRINGS);
         b.setProperty(ps);
         assertEquals("[hello]", ValuePattern.getStrings(b.getNodeState(), 
"x").toString());
-        
+
         ps = PropertyStates.createProperty(
                 "x",
                 Arrays.asList(),
@@ -140,10 +139,10 @@ public class ValuePatternTest {
         // unkown, as we don't do regular expression analysis
         assertFalse(vp.matchesPrefix("x"));
     }
-    
+
     @Test
     public void included() {
-        ValuePattern vp = new ValuePattern(null, Lists.new ArrayList<>("abc", 
"bcd"), null);
+        ValuePattern vp = new ValuePattern(null, List.of("abc", "bcd"), null);
         assertTrue(vp.matches(null));
         assertTrue(vp.matches("abc1"));
         assertTrue(vp.matches("bcd"));
@@ -161,10 +160,10 @@ public class ValuePatternTest {
         assertTrue(vp.matchesPrefix("abcdef"));
         assertFalse(vp.matchesPrefix("a"));
     }
-    
+
     @Test
     public void excluded() {
-        ValuePattern vp = new ValuePattern(null, null, Lists.new 
ArrayList<>("abc", "bcd"));
+        ValuePattern vp = new ValuePattern(null, null, List.of("abc", "bcd"));
         assertTrue(vp.matches(null));
         assertFalse(vp.matches("abc1"));
         assertFalse(vp.matches("bcd"));
@@ -182,11 +181,11 @@ public class ValuePatternTest {
         assertFalse(vp.matchesPrefix("abcdef"));
         assertFalse(vp.matchesPrefix("a"));
     }
-    
+
     @Test
     public void longestPrefix() {
         FilterImpl filter;
-        
+
         filter = new FilterImpl(null, null, null);
         filter.restrictProperty("x", Operator.EQUAL, 
                 PropertyValues.newString("hello"));
@@ -300,8 +299,6 @@ public class ValuePatternTest {
         filter.restrictProperty("x", Operator.LESS_THAN,
                 PropertyValues.newString(Arrays.asList("a3", "a4")));
         assertNull(getLongestPrefix(filter, "x"));
-        
+
     }
-    
-    
 }
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStatsTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStatsTest.java
index 482db68d1d..30be3d97c6 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStatsTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/property/jmx/PropertyIndexStatsTest.java
@@ -16,16 +16,15 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index.property.jmx;
 
+import java.util.Arrays;
 import java.util.HashSet;
 import java.util.List;
 
 import javax.management.openmbean.CompositeData;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.commons.PathUtils;
 import org.apache.jackrabbit.oak.plugins.index.IndexUpdateProvider;
@@ -116,7 +115,7 @@ public class PropertyIndexStatsTest {
 
     private static void assertArray(CompositeData cd, String prop, 
List<String> values){
         String[] a = (String[])cd.get(prop);
-        assertEquals(new HashSet<String>(values), new 
HashSet<String>(Lists.new ArrayList<>(a)));
+        assertEquals(new HashSet<String>(values), new 
HashSet<String>(Arrays.asList(a)));
     }
 
     private static void setProperty(NodeBuilder builder, String path, String 
name, String value){
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceIndexTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceIndexTest.java
index 3004d48e8c..ac3a699d4a 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceIndexTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceIndexTest.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.jackrabbit.oak.plugins.index.reference;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/metric/MetricStatisticsProviderTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/metric/MetricStatisticsProviderTest.java
index 944f34e7f7..4ec16cac70 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/metric/MetricStatisticsProviderTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/metric/MetricStatisticsProviderTest.java
@@ -20,6 +20,7 @@
 package org.apache.jackrabbit.oak.plugins.metric;
 
 import java.lang.management.ManagementFactory;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Queue;
 import java.util.Set;
@@ -36,7 +37,6 @@ import javax.management.Query;
 import javax.management.QueryExp;
 
 import com.codahale.metrics.JmxReporter;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.guava.common.collect.Sets;
 import org.apache.jackrabbit.guava.common.util.concurrent.Uninterruptibles;
 import org.apache.jackrabbit.api.stats.RepositoryStatistics.Type;
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/migration/FilteringNodeStateTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/migration/FilteringNodeStateTest.java
index 4913e0a901..353c7ef269 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/migration/FilteringNodeStateTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/migration/FilteringNodeStateTest.java
@@ -30,9 +30,12 @@ import org.junit.Test;
 
 import javax.jcr.RepositoryException;
 import java.io.IOException;
+import java.util.List;
 import java.util.Set;
 import java.util.UUID;
 import java.util.function.Predicate;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 import static org.apache.jackrabbit.guava.common.collect.ImmutableSet.of;
 
@@ -147,7 +150,7 @@ public class FilteringNodeStateTest {
         { // access via getProperty()
             final PropertyState childOrder = 
decorated.getProperty(OAK_CHILD_ORDER);
             final Iterable<String> values = childOrder.getValue(Type.STRINGS);
-            assertEquals(new ArrayList<>("football"), new ArrayList<>(values));
+            assertEquals(List.of("football"), 
StreamSupport.stream(values.spliterator(), false).collect(Collectors.toList()));
         }
 
         { // access via getProperties()
@@ -159,7 +162,7 @@ public class FilteringNodeStateTest {
             };
             final PropertyState childOrder = 
Iterables.find(decorated.getProperties(), isChildOrderProperty::test);
             final Iterable<String> values = childOrder.getValue(Type.STRINGS);
-            assertEquals(new ArrayList<>("football"), new ArrayList<>(values));
+            assertEquals(List.of("football"), 
StreamSupport.stream(values.spliterator(), false).collect(Collectors.toList()));
         }
     }
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java
index 611b8cb049..545a5f26fe 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java
@@ -18,10 +18,12 @@
  */
 package org.apache.jackrabbit.oak.plugins.tree.impl;
 
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
-import org.apache.jackrabbit.guava.common.collect.Iterables;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.oak.AbstractSecurityTest;
 import org.apache.jackrabbit.oak.api.PropertyState;
@@ -215,7 +217,7 @@ public class ImmutableTreeTest extends AbstractSecurityTest 
{
     @Test
     public void testGetProperties() {
         ImmutableTree orderable = immutable.getChild("orderable");
-        List<String> propNames = Lists.new 
ArrayList<>(TreeConstants.OAK_CHILD_ORDER, JcrConstants.JCR_PRIMARYTYPE);
+        List<String> propNames = new 
ArrayList<>(List.of(TreeConstants.OAK_CHILD_ORDER, 
JcrConstants.JCR_PRIMARYTYPE));
 
         for (PropertyState ps : orderable.getProperties()) {
             assertTrue(propNames.remove(ps.getName()));
@@ -263,8 +265,9 @@ public class ImmutableTreeTest extends AbstractSecurityTest 
{
     }
 
     private static void assertSequence(Iterable<Tree> trees, String... names) {
-        List<String> actual = Lists.new ArrayList<>(Iterables.transform(trees, 
input -> input.getName()));
-        assertEquals(Lists.new ArrayList<>(names), actual);
+        List<String> actual = StreamSupport.stream(trees.spliterator(), 
false).map(input -> input.getName())
+                .collect(Collectors.toList());
+        assertEquals(Arrays.asList(names), actual);
     }
 
     @Test
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/query/IteratorsTest.java 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/query/IteratorsTest.java
index 22364e4f39..22b7089027 100644
--- a/oak-core/src/test/java/org/apache/jackrabbit/oak/query/IteratorsTest.java
+++ b/oak-core/src/test/java/org/apache/jackrabbit/oak/query/IteratorsTest.java
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.Iterator;
@@ -30,22 +31,20 @@ import java.util.concurrent.atomic.AtomicInteger;
 
 import org.junit.Test;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
-
 /**
  * Tests the filtering iterators.
  */
 public class IteratorsTest {
-    
+
     private QueryEngineSettings settings = new QueryEngineSettings();
-    
+
     private static final Comparator<Integer> INT_COMP = new 
Comparator<Integer>() {
 
         @Override
         public int compare(Integer o1, Integer o2) {
             return o1.compareTo(o2);
         }
-        
+
     };
 
     @Test
@@ -55,7 +54,7 @@ public class IteratorsTest {
         assertEquals("1, 2", toString(FilterIterators.newDistinct(it(1, 2), 
settings)));
         assertEquals("1, 2, 3", toString(FilterIterators.newDistinct(it(1, 2, 
1, 3, 3, 1), settings)));
     }
-    
+
     @Test
     public void limit() {
         assertEquals("", toString(FilterIterators.newLimit(it(), 0)));
@@ -72,7 +71,7 @@ public class IteratorsTest {
         assertEquals("1, 2, 3", toString(FilterIterators.newLimit(it(1, 2, 3), 
3)));
         assertEquals("1, 2, 3", toString(FilterIterators.newLimit(it(1, 2, 3), 
4)));
     }
-    
+
     @Test
     public void offset() {
         assertEquals("", toString(FilterIterators.newOffset(it(), 0)));
@@ -85,7 +84,7 @@ public class IteratorsTest {
         assertEquals("", toString(FilterIterators.newOffset(it(1, 2), 3)));
         assertEquals("2, 3", toString(FilterIterators.newOffset(it(1, 2, 3), 
1)));
     }
-    
+
     @Test
     public void sort() {
         assertEquals("", toString(FilterIterators.newSort(it(new Integer[]{}), 
INT_COMP, 0, settings)));
@@ -111,9 +110,9 @@ public class IteratorsTest {
         sortCompareCalls(10000, 1000000);
         sortCompareCalls(10000, Integer.MAX_VALUE);
     }
-    
+
     private void sortCompareCalls(int count, int keep) {
-        
+
         int len = 1000;
         Random r = new Random(1);
         Integer[] list = new Integer[len];
@@ -128,7 +127,7 @@ public class IteratorsTest {
                 compareCalls.incrementAndGet();
                 return o1.compareTo(o2);
             }
-            
+
         };
         Iterator<Integer> it = FilterIterators.newSort(it(list), comp, keep, 
settings);
         int old = Integer.MIN_VALUE;
@@ -151,7 +150,7 @@ public class IteratorsTest {
         assertEquals("3, 3, 2, 1", 
                 toString(FilterIterators.newCombinedFilter(
                 it(3, 3, 2, 1), false, Long.MAX_VALUE, 0, null, settings)));
-        
+
         // distinct
         assertEquals("3, 2, 1", 
                 toString(FilterIterators.newCombinedFilter(
@@ -166,7 +165,7 @@ public class IteratorsTest {
         assertEquals("1, 2, 3", 
                 toString(FilterIterators.newCombinedFilter(
                 it(3, 3, 2, 1), true, Long.MAX_VALUE, 0, INT_COMP, settings)));
-        
+
         // limit
         assertEquals("3, 3", 
                 toString(FilterIterators.newCombinedFilter(
@@ -195,9 +194,9 @@ public class IteratorsTest {
 }
 
     private static <K> Iterator<K> it(K... x) {
-        return Collections.unmodifiableCollection(Lists.new 
ArrayList<>(x)).iterator();
+        return Collections.unmodifiableCollection(Arrays.asList(x)).iterator();
     }
-    
+
     private static <K> String toString(Iterator<K> it) {
         StringBuilder buff = new StringBuilder();
         while (it.hasNext()) {
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/query/OrQueryOrderLimitWithoutIndexTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/query/OrQueryOrderLimitWithoutIndexTest.java
index 724b3215d3..8f524ab7ea 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/query/OrQueryOrderLimitWithoutIndexTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/query/OrQueryOrderLimitWithoutIndexTest.java
@@ -14,10 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.jackrabbit.oak.query;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.InitialContent;
 import org.apache.jackrabbit.oak.Oak;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
@@ -33,6 +31,8 @@ import org.junit.Before;
 import org.junit.Test;
 
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
 public class OrQueryOrderLimitWithoutIndexTest extends AbstractQueryTest {
 
@@ -84,7 +84,7 @@ public class OrQueryOrderLimitWithoutIndexTest extends 
AbstractQueryTest {
         Result result = qe.executeQuery(query, QueryEngineImpl.SQL2, limit, 
offset,
                 QueryEngine.NO_BINDINGS, QueryEngine.NO_MAPPINGS);
 
-        List<ResultRow> rows = Lists.new ArrayList<>(result.getRows());
+        List<ResultRow> rows = 
StreamSupport.stream(result.getRows().spliterator(), 
false).collect(Collectors.toList());
         Assert.assertEquals(expected.length, rows.size());
 
         int i = 0;
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/query/UnionQueryTest.java 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/query/UnionQueryTest.java
index da88cf2444..115ddde6b2 100644
--- a/oak-core/src/test/java/org/apache/jackrabbit/oak/query/UnionQueryTest.java
+++ b/oak-core/src/test/java/org/apache/jackrabbit/oak/query/UnionQueryTest.java
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.jackrabbit.oak.query;
 
 import static org.junit.Assert.assertEquals;
@@ -24,8 +23,9 @@ import static org.junit.Assert.assertTrue;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Optional;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
 
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.oak.InitialContent;
 import org.apache.jackrabbit.oak.Oak;
 import org.apache.jackrabbit.oak.api.ContentRepository;
@@ -222,7 +222,7 @@ public class UnionQueryTest extends AbstractQueryTest {
         Result result = qe.executeQuery(union, QueryEngineImpl.SQL2, limit, 
offset,
                 QueryEngine.NO_BINDINGS, QueryEngine.NO_MAPPINGS);
 
-        List<ResultRow> rows = Lists.new ArrayList<>(result.getRows());
+        List<ResultRow> rows = 
StreamSupport.stream(result.getRows().spliterator(), 
false).collect(Collectors.toList());
         assertEquals(expected.length, rows.size());
 
         int i = 0;
@@ -247,7 +247,7 @@ public class UnionQueryTest extends AbstractQueryTest {
         Result result = qe.executeQuery(union, QueryEngineImpl.SQL2, 
Optional.empty(), Optional.empty(),
                 QueryEngine.NO_BINDINGS, QueryEngine.NO_MAPPINGS);
 
-        List<ResultRow> rows = Lists.new ArrayList<>(result.getRows());
+        List<ResultRow> rows = 
StreamSupport.stream(result.getRows().spliterator(), 
false).collect(Collectors.toList());
         assertEquals(expected.length, rows.size());
 
         int i = 0;
@@ -302,8 +302,7 @@ public class UnionQueryTest extends AbstractQueryTest {
         Result result = qe.executeQuery(explainedStatement, 
QueryEngineImpl.SQL2, limit, offset,
                 QueryEngine.NO_BINDINGS, QueryEngine.NO_MAPPINGS);
 
-        List<ResultRow> rows = Lists.new ArrayList<>(result.getRows());
-        assertEquals(expected.length, rows.size());
+        List<ResultRow> rows = 
StreamSupport.stream(result.getRows().spliterator(), 
false).collect(Collectors.toList());        assertEquals(expected.length, 
rows.size());
 
         int i = 0;
         for (ResultRow rr: result.getRows()) {
@@ -353,7 +352,7 @@ public class UnionQueryTest extends AbstractQueryTest {
         Result result = qe.executeQuery(explainedStatement, 
QueryEngineImpl.SQL2, limit, offset,
                 QueryEngine.NO_BINDINGS, QueryEngine.NO_MAPPINGS);
 
-        List<ResultRow> rows = Lists.new ArrayList<>(result.getRows());
+        List<ResultRow> rows = 
StreamSupport.stream(result.getRows().spliterator(), 
false).collect(Collectors.toList());
         assertEquals(expected.length, rows.size());
 
         int i = 0;
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContextTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContextTest.java
index 5afa0526a8..0b59bbfc07 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContextTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/AuthorizationContextTest.java
@@ -23,7 +23,6 @@ import javax.jcr.security.AccessControlList;
 import javax.jcr.security.AccessControlManager;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableList;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.JcrConstants;
 import 
org.apache.jackrabbit.commons.jackrabbit.authorization.AccessControlUtils;
 import org.apache.jackrabbit.oak.AbstractSecurityTest;
@@ -76,7 +75,7 @@ public class AuthorizationContextTest extends 
AbstractSecurityTest {
      */
     @Test
     public void testItemDefinitionsDefinesContextRoot() {
-        List<String> paths = Lists.new ArrayList<>(
+        List<String> paths = List.of(
                 
"/jcr:system/jcr:nodeTypes/rep:AccessControllable/rep:namedChildNodeDefinitions/rep:policy",
                 
"/jcr:system/jcr:nodeTypes/rep:RepoAccessControllable/rep:namedChildNodeDefinitions/rep:repoPolicy");
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACLTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACLTest.java
index 0abb5fcd27..3a36b9594f 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACLTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/ACLTest.java
@@ -36,7 +36,6 @@ import javax.jcr.security.Privilege;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableList;
 import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.guava.common.collect.Sets;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry;
@@ -83,9 +82,9 @@ import static org.mockito.Mockito.when;
  * Test {@code ACL} implementation.
  */
 public class ACLTest extends AbstractAccessControlTest implements 
PrivilegeConstants, AccessControlConstants {
-    
+
     private ACL acl;
-    
+
     @Override
     public void before() throws Exception {
         super.before();
@@ -103,7 +102,7 @@ public class ACLTest extends AbstractAccessControlTest 
implements PrivilegeConst
                   @NotNull NamePathMapper namePathMapper) {
         return createACL(jcrPath, entries, namePathMapper, 
getRestrictionProvider());
     }
-    
+
     @NotNull
     private List<ACE> createTestEntries() throws RepositoryException {
         List<ACE> entries = new ArrayList<>(3);
@@ -203,7 +202,7 @@ public class ACLTest extends AbstractAccessControlTest 
implements PrivilegeConst
     public void testGetRestrictionNames() {
         String[] restrNames = acl.getRestrictionNames();
         assertNotNull(restrNames);
-        List<String> names = Lists.new ArrayList<>(restrNames);
+        List<String> names = new ArrayList<>(Arrays.asList(restrNames));
         for (RestrictionDefinition def : 
getRestrictionProvider().getSupportedRestrictions(TEST_PATH)) {
             
assertTrue(names.remove(getNamePathMapper().getJcrName(def.getName())));
         }
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlImporterBaseTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlImporterBaseTest.java
index 25a749a38d..8e4d67f0f3 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlImporterBaseTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/AccessControlImporterBaseTest.java
@@ -18,7 +18,6 @@ package 
org.apache.jackrabbit.oak.security.authorization.accesscontrol;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableList;
 import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.jackrabbit.api.JackrabbitSession;
 import org.apache.jackrabbit.api.security.JackrabbitAccessControlList;
@@ -43,8 +42,6 @@ import 
org.apache.jackrabbit.oak.spi.xml.ReferenceChangeTracker;
 import org.apache.jackrabbit.oak.spi.xml.TextValue;
 import org.jetbrains.annotations.NotNull;
 import org.junit.Test;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.stubbing.Answer;
 
 import javax.jcr.ImportUUIDBehavior;
 import javax.jcr.PropertyType;
@@ -511,7 +508,7 @@ public abstract class AccessControlImporterBaseTest  
extends AbstractSecurityTes
 
         Tree restrTree = aceTree.getChild(REP_RESTRICTIONS);
         assertEquals("/*", TreeUtil.getString(restrTree, REP_GLOB));
-        assertEquals(Lists.new ArrayList<>(NodeTypeConstants.NT_OAK_RESOURCE, 
NodeTypeConstants.NT_OAK_RESOURCE), 
restrTree.getProperty(REP_NT_NAMES).getValue(Type.NAMES));
-        assertEquals(Lists.new ArrayList<>("itemName"), 
restrTree.getProperty(REP_ITEM_NAMES).getValue(Type.NAMES));
+        assertEquals(List.of(NodeTypeConstants.NT_OAK_RESOURCE, 
NodeTypeConstants.NT_OAK_RESOURCE), 
restrTree.getProperty(REP_NT_NAMES).getValue(Type.NAMES));
+        assertEquals(List.of("itemName"), 
restrTree.getProperty(REP_ITEM_NAMES).getValue(Type.NAMES));
     }
 }
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/EntryTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/EntryTest.java
index 5836249844..24bef76466 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/EntryTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/EntryTest.java
@@ -17,7 +17,6 @@
 package org.apache.jackrabbit.oak.security.authorization.accesscontrol;
 
 import org.apache.jackrabbit.guava.common.collect.ImmutableSet;
-import org.apache.jackrabbit.guava.common.collect.Lists;
 import org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry;
 import org.apache.jackrabbit.api.security.authorization.PrivilegeCollection;
 import 
org.apache.jackrabbit.commons.jackrabbit.authorization.AccessControlUtils;
@@ -386,21 +385,21 @@ public class EntryTest extends AbstractAccessControlTest {
 
         assertTrue(ace.getRestrictions().isEmpty());
     }
-    
+
     @Test
     public void testGetPrivilegeCollection() throws Exception {
         PrivilegeCollection pc = createEntry(Privilege.JCR_READ, 
Privilege.JCR_WRITE).getPrivilegeCollection();
         Set<Privilege> expected = 
ImmutableSet.copyOf(AccessControlUtils.privilegesFromNames(acMgr, 
Privilege.JCR_READ, Privilege.JCR_WRITE));
         assertEquals(expected, ImmutableSet.copyOf(pc.getPrivileges()));
-        
+
         assertEquals(pc, createEntry(JCR_READ, 
JCR_WRITE).getPrivilegeCollection());
         assertEquals(pc, createEntry(JCR_READ, 
PrivilegeConstants.JCR_ADD_CHILD_NODES, 
PrivilegeConstants.JCR_MODIFY_PROPERTIES, 
                 PrivilegeConstants.JCR_WRITE).getPrivilegeCollection());
-        
+
         assertTrue(pc.includes(JCR_READ));
         assertTrue(pc.includes(JCR_READ, JCR_WRITE));
         assertTrue(pc.includes(JCR_READ, REP_READ_PROPERTIES, REP_READ_NODES, 
REP_ALTER_PROPERTIES));
-        
+
         assertFalse(pc.includes(Privilege.JCR_ALL));
     }
 
@@ -483,7 +482,7 @@ public class EntryTest extends AbstractAccessControlTest {
         JackrabbitAccessControlEntry ace = 
createEntry(PrivilegeConstants.JCR_ALL);
         Privilege[] declaredAllPrivs = 
acMgr.privilegeFromName(PrivilegeConstants.JCR_ALL).getDeclaredAggregatePrivileges();
         Privilege[] aggregateAllPrivs = 
acMgr.privilegeFromName(PrivilegeConstants.JCR_ALL).getAggregatePrivileges();
-        List<Privilege> l = Lists.new ArrayList<>(aggregateAllPrivs);
+        List<Privilege> l = new ArrayList<>(Arrays.asList(aggregateAllPrivs));
         l.add(l.remove(0));
         Privilege[] reordered = l.toArray(new Privilege[0]);
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/AuthorizableIteratorTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/AuthorizableIteratorTest.java
index da08d7aec9..87c00998ab 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/AuthorizableIteratorTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/AuthorizableIteratorTest.java
@@ -29,6 +29,9 @@ import org.junit.Before;
 import org.junit.Test;
 
 import javax.jcr.RepositoryException;
+
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
@@ -109,7 +112,7 @@ public class AuthorizableIteratorTest extends 
AbstractSecurityTest {
 
     @Test
     public void testFilterDuplicatesHandlesNull() throws Exception {
-        List<User> l = List.of(getTestUser(), null, getTestUser());
+        List<User> l = Arrays.asList(new User[] { getTestUser(), null, 
getTestUser() });
         assertEquals(1, Iterators.size(AuthorizableIterator.create(true, 
l.iterator(), l.iterator())));
     }
 
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserConfigurationImplTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserConfigurationImplTest.java
index 7a139859e5..6a517c8432 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserConfigurationImplTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/UserConfigurationImplTest.java
@@ -29,6 +29,7 @@ import 
org.apache.jackrabbit.oak.spi.xml.ProtectedItemImporter;
 import org.junit.Test;
 
 import java.security.Principal;
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
@@ -66,9 +67,9 @@ public class UserConfigurationImplTest extends 
AbstractSecurityTest {
         List<? extends ValidatorProvider> validators = 
configuration.getValidators(adminSession.getWorkspaceName(), 
Collections.<Principal>emptySet(), new MoveTracker());
         assertEquals(2, validators.size());
 
-        List<String> clNames = List.of(
+        List<String> clNames = new ArrayList<>(List.of(
                 UserValidatorProvider.class.getName(),
-                CacheValidatorProvider.class.getName());
+                CacheValidatorProvider.class.getName()));
 
         for (ValidatorProvider vp : validators) {
             clNames.remove(vp.getClass().getName());
diff --git 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/autosave/AuthorizableWrapperTest.java
 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/autosave/AuthorizableWrapperTest.java
index 67ca999a52..169ab2fc8b 100644
--- 
a/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/autosave/AuthorizableWrapperTest.java
+++ 
b/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/autosave/AuthorizableWrapperTest.java
@@ -19,8 +19,8 @@ package org.apache.jackrabbit.oak.security.user.autosave;
 import org.apache.jackrabbit.api.security.user.Authorizable;
 import org.junit.Test;
 
+import java.util.Arrays;
 import java.util.Iterator;
-import java.util.List;
 
 import static org.junit.Assert.assertNull;
 import static org.mockito.ArgumentMatchers.any;
@@ -32,8 +32,9 @@ public class AuthorizableWrapperTest extends 
AbstractAutoSaveTest {
 
     @Test
     public void testApplyNull() {
-        Iterator<Authorizable> it = 
AuthorizableWrapper.createIterator(List.of(null, (Authorizable) 
null).iterator(), autosaveMgr);
-        while(it.hasNext()) {
+        Iterator<Authorizable> it = 
AuthorizableWrapper.createIterator(Arrays.asList(new Authorizable[] { null, 
null }).iterator(),
+                autosaveMgr);
+        while (it.hasNext()) {
             assertNull(it.next());
         }
         verify(autosaveMgr, never()).wrap(any(Authorizable.class));
@@ -41,8 +42,9 @@ public class AuthorizableWrapperTest extends 
AbstractAutoSaveTest {
 
     @Test
     public void testApply() throws Exception {
-        Iterator<Authorizable> it = 
AuthorizableWrapper.createIterator(List.of(getTestUser(), (Authorizable) 
null).iterator(), autosaveMgr);
-        while(it.hasNext()) {
+        Iterator<Authorizable> it = AuthorizableWrapper
+                .createIterator(Arrays.asList(new Authorizable[] { 
getTestUser(), null }).iterator(), autosaveMgr);
+        while (it.hasNext()) {
             it.next();
         }
         verify(autosaveMgr, times(1)).wrap(any(Authorizable.class));

Reply via email to