diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/KotlinCompilerRunner.java b/jps/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/KotlinCompilerRunner.java index 3a6d6c023e2..36f347dfb71 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/KotlinCompilerRunner.java +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/compilerRunner/KotlinCompilerRunner.java @@ -31,7 +31,7 @@ import org.jetbrains.kotlin.cli.common.messages.MessageCollector; import org.jetbrains.kotlin.cli.common.messages.MessageCollectorUtil; import org.jetbrains.kotlin.config.CompilerSettings; import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCache; -import org.jetbrains.kotlin.modules.Module; +import org.jetbrains.kotlin.modules.TargetId; import org.jetbrains.kotlin.rmi.*; import org.jetbrains.kotlin.rmi.kotlinr.KotlinCompilerClient; import org.jetbrains.kotlin.utils.UtilsPackage; @@ -59,7 +59,7 @@ public class KotlinCompilerRunner { CompilerSettings compilerSettings, MessageCollector messageCollector, CompilerEnvironment environment, - Map incrementalCaches, + Map incrementalCaches, File moduleFile, OutputItemsCollector collector ) { @@ -76,7 +76,7 @@ public class KotlinCompilerRunner { @NotNull CompilerSettings compilerSettings, @NotNull MessageCollector messageCollector, @NotNull CompilerEnvironment environment, - Map incrementalCaches, + Map incrementalCaches, @NotNull OutputItemsCollector collector, @NotNull Collection sourceFiles, @NotNull List libraryFiles, @@ -96,7 +96,7 @@ public class KotlinCompilerRunner { MessageCollector messageCollector, OutputItemsCollector collector, CompilerEnvironment environment, - Map incrementalCaches + Map incrementalCaches ) { ByteArrayOutputStream stream = new ByteArrayOutputStream(); PrintStream out = new PrintStream(stream); @@ -117,7 +117,7 @@ public class KotlinCompilerRunner { CommonCompilerArguments arguments, String additionalArguments, CompilerEnvironment environment, - Map incrementalCaches, + Map incrementalCaches, PrintStream out, MessageCollector messageCollector ) { 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 81ba0203fd5..defd46693df 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 @@ -62,7 +62,7 @@ import org.jetbrains.kotlin.load.kotlin.PackageClassUtils import org.jetbrains.kotlin.load.kotlin.header.isCompatiblePackageFacadeKind import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCache import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCompilationComponents -import org.jetbrains.kotlin.modules.Module +import org.jetbrains.kotlin.modules.TargetId import org.jetbrains.kotlin.progress.CompilationCanceledException import org.jetbrains.kotlin.progress.CompilationCanceledStatus import org.jetbrains.kotlin.resolve.jvm.JvmClassName @@ -320,8 +320,8 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR } return compileToJvm(allCompiledFiles, chunk, commonArguments, context, dirtyFilesHolder, environment, - incrementalCaches.mapKeysTo(HashMap(incrementalCaches.size()), - { ModuleToModuleBuildTargetAdapter(it.getKey()) }), + incrementalCaches.mapKeysTo(HashMap(incrementalCaches.size()), + { TargetId(it.getKey()) }), filesToCompile, messageCollector) } @@ -346,7 +346,7 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR || className.startsWith("org.apache.log4j.") // For logging from compiler || className == "org.jetbrains.kotlin.progress.CompilationCanceledStatus" || className == "org.jetbrains.kotlin.progress.CompilationCanceledException" - || className == "org.jetbrains.kotlin.modules.Module" + || className == "org.jetbrains.kotlin.modules.TargetId" }, compilerServices ) @@ -488,7 +488,7 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR private fun compileToJs(chunk: ModuleChunk, commonArguments: CommonCompilerArguments, environment: CompilerEnvironment, - incrementalCaches: MutableMap?, + incrementalCaches: MutableMap?, messageCollector: MessageCollectorAdapter, project: JpsProject ): OutputItemsCollectorImpl? { val outputItemCollector = OutputItemsCollectorImpl() @@ -543,7 +543,7 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR context: CompileContext, dirtyFilesHolder: DirtyFilesHolder, environment: CompilerEnvironment, - incrementalCaches: MutableMap?, + incrementalCaches: MutableMap?, filesToCompile: MultiMap, messageCollector: MessageCollectorAdapter ): OutputItemsCollectorImpl? { val outputItemCollector = OutputItemsCollectorImpl() diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCompilationComponentsImpl.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCompilationComponentsImpl.kt index 850d9646f41..940313a74c1 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCompilationComponentsImpl.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCompilationComponentsImpl.kt @@ -20,42 +20,16 @@ import org.jetbrains.jps.incremental.ModuleBuildTarget import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCache import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCompilationComponents -import org.jetbrains.kotlin.modules.Module +import org.jetbrains.kotlin.modules.TargetId public class IncrementalCompilationComponentsImpl( caches: Map, private val lookupTracker: LookupTracker ): IncrementalCompilationComponents { - private val caches = caches.mapKeys { ModuleToModuleBuildTargetAdapter(it.key) } + private val caches = caches.mapKeys { TargetId(it.key) } - override fun getIncrementalCache(target: Module): IncrementalCache = + override fun getIncrementalCache(target: TargetId): IncrementalCache = caches[target]!! override fun getLookupTracker(): LookupTracker = lookupTracker } - -public class ModuleToModuleBuildTargetAdapter( - private val moduleBuildTarget: ModuleBuildTarget -) : Module { - - override fun getModuleName(): String = - moduleBuildTarget.id - - override fun getModuleType(): String = - moduleBuildTarget.targetType.typeId - - override fun getAnnotationsRoots(): List = - throw UnsupportedOperationException() - - override fun getClasspathRoots(): List = - throw UnsupportedOperationException() - - override fun getJavaSourceRoots(): List = - throw UnsupportedOperationException() - - override fun getOutputDirectory(): String = - throw UnsupportedOperationException() - - override fun getSourceFiles(): List = - throw UnsupportedOperationException() -} diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/modules/modulesUtil.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/modules/modulesUtil.kt new file mode 100644 index 00000000000..a972911e445 --- /dev/null +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/modules/modulesUtil.kt @@ -0,0 +1,22 @@ +/* + * Copyright 2010-2015 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.jetbrains.kotlin.modules + +import org.jetbrains.jps.incremental.ModuleBuildTarget + +public fun TargetId(moduleBuildTarget: ModuleBuildTarget): TargetId = + TargetId(moduleBuildTarget.id, moduleBuildTarget.targetType.typeId)