From 1b331cf2473b40dc1bc6796c55b854c9477e119f Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Wed, 24 Aug 2016 15:58:23 +0300 Subject: [PATCH] [platform] unified stream processing for CanonicalPathMap, finally --- .../vfs/impl/local/CanonicalPathMap.java | 23 ++++++------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/CanonicalPathMap.java b/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/CanonicalPathMap.java index bd8487ff8b18..83bf0ff6efd5 100644 --- a/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/CanonicalPathMap.java +++ b/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/CanonicalPathMap.java @@ -15,8 +15,6 @@ */ package com.intellij.openapi.vfs.impl.local; -import com.intellij.concurrency.JobLauncher; -import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.io.FileSystemUtil; @@ -27,7 +25,10 @@ import com.intellij.util.containers.MultiMap; import org.jetbrains.annotations.NotNull; import java.io.File; -import java.util.*; +import java.util.Collection; +import java.util.Collections; +import java.util.List; +import java.util.Map; import java.util.stream.Stream; import static com.intellij.openapi.util.Pair.pair; @@ -61,19 +62,9 @@ class CanonicalPathMap { private static Map resolvePaths(Collection recursiveRoots, Collection flatRoots) { Map result = ContainerUtil.newConcurrentMap(); - - if (ApplicationManager.getApplication() != null) { - List roots = ContainerUtil.concat(Arrays.asList(recursiveRoots, flatRoots)); - JobLauncher.getInstance().invokeConcurrentlyUnderProgress(roots, null, false, false, root -> { - ContainerUtil.putIfNotNull(root, FileSystemUtil.resolveSymLink(root), result); - return true; - }); - } - else { - Stream.concat(recursiveRoots.stream(), flatRoots.stream()) - .forEach(root -> ContainerUtil.putIfNotNull(root, FileSystemUtil.resolveSymLink(root), result)); - } - + Stream.concat(recursiveRoots.stream(), flatRoots.stream()) + .parallel() + .forEach(root -> ContainerUtil.putIfNotNull(root, FileSystemUtil.resolveSymLink(root), result)); return result; }