[imltogradle] Speedup files traversing by ignoring directories

This commit is contained in:
Nikolay Krasko
2021-06-17 15:46:50 +03:00
committed by TeamCityServer
parent 7e8168a7e6
commit c8ae9a7090
@@ -18,6 +18,7 @@ import org.jetbrains.jps.model.module.*
import org.jetbrains.kotlin.generators.imltogradle.GradleDependencyNotation.IntellijDepGradleDependencyNotation
import java.io.File
import java.util.*
import kotlin.system.measureNanoTime
private lateinit var intellijModuleNameToGradleDependencyNotationsMapping: Map<String, List<GradleDependencyNotation>>
private val KOTLIN_REPO_ROOT = File(".").canonicalFile
@@ -50,11 +51,14 @@ val jsonUrlPrefixes = mapOf(
fun main() {
val ijCommunityModuleNameToJpsModuleMapping = INTELLIJ_REPO_ROOT.loadJpsProject().modules.associateBy { it.name }
val imlFiles = INTELLIJ_REPO_ROOT.walk()
.onEnter { it != INTELLIJ_REPO_ROOT.resolve("out") }
val skipDirNames = setOf("src", "out", "org", "com", "testData")
val imlFiles = INTELLIJ_REPO_ROOT
.walk()
.onEnter { dir -> dir.name !in skipDirNames }
.filter {
it.isFile && it.extension == "iml" &&
(it.name.startsWith("kotlin.") || it.nameWithoutExtension in intellijModulesForWhichGenerateBuildGradle)
(it.name.startsWith("kotlin.") ||
it.nameWithoutExtension in intellijModulesForWhichGenerateBuildGradle)
}
.toList()