diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/JpsFileToPathConverter.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/JpsFileToPathConverter.kt index c8fe4555df7..4cdd0581928 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/JpsFileToPathConverter.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/JpsFileToPathConverter.kt @@ -7,30 +7,8 @@ package org.jetbrains.kotlin.jps.build import org.jetbrains.jps.model.JpsProject import org.jetbrains.jps.model.serialization.JpsModelSerializationDataService -import org.jetbrains.kotlin.incremental.storage.FileToPathConverter -import java.io.File +import org.jetbrains.kotlin.incremental.storage.RelativeFileToPathConverter -private const val PROJECT_DIR_PLACEHOLDER = "${'$'}PROJECT_DIR$" - -internal class JpsFileToPathConverter(jpsProject: JpsProject) : FileToPathConverter { - private val baseDirPath = JpsModelSerializationDataService - .getBaseDirectory(jpsProject)?.canonicalFile?.invariantSeparatorsPath - - override fun toPath(file: File): String { - val path = file.canonicalFile.invariantSeparatorsPath - return when { - baseDirPath != null && path.startsWith(baseDirPath) -> - PROJECT_DIR_PLACEHOLDER + path.substring(baseDirPath.length) - else -> path - } - } - - override fun toFile(path: String): File = - when { - path.startsWith(PROJECT_DIR_PLACEHOLDER) -> { - val basePath = baseDirPath ?: error("Could not get project root dir") - File(basePath + path.substring(PROJECT_DIR_PLACEHOLDER.length)) - } - else -> File(path) - } -} \ No newline at end of file +internal class JpsFileToPathConverter( + jpsProject: JpsProject +) : RelativeFileToPathConverter(JpsModelSerializationDataService.getBaseDirectory(jpsProject)) diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt index a549d760545..b32b63ec971 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt @@ -648,7 +648,7 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) { lookupStorageManager.withLookupStorage { lookupStorage -> lookupStorage.removeLookupsFrom(dirtyFilesHolder.allDirtyFiles.asSequence() + dirtyFilesHolder.allRemovedFilesFiles.asSequence()) - lookupStorage.addAll(lookupTracker.lookups.entrySet(), lookupTracker.pathInterner.values) + lookupStorage.addAll(lookupTracker.lookups, lookupTracker.pathInterner.values) } } }