Kotlin Facet: Switch off "Use project settings" on Maven/Gradle import

#KT-15682 Fixed
This commit is contained in:
Alexey Sedunov
2017-01-13 19:20:26 +03:00
parent 9f217de10b
commit aeb6af546f
4 changed files with 5 additions and 5 deletions
@@ -107,7 +107,7 @@ class KotlinMavenImporter : MavenImporter(KOTLIN_PLUGIN_GROUP_ID, KOTLIN_PLUGIN_
private fun configureFacet(mavenProject: MavenProject, modifiableModelsProvider: IdeModifiableModelsProvider, module: Module) {
val compilerVersion = mavenProject.findPlugin(KotlinMavenConfigurator.GROUP_ID, KotlinMavenConfigurator.MAVEN_PLUGIN_ID)?.version
?: return
val kotlinFacet = module.getOrCreateFacet(modifiableModelsProvider)
val kotlinFacet = module.getOrCreateFacet(modifiableModelsProvider, false)
val platform = detectPlatformByExecutions(mavenProject) ?: detectPlatformByLibraries(mavenProject)
kotlinFacet.configureFacet(compilerVersion, CoroutineSupport.DEFAULT, platform, modifiableModelsProvider)
@@ -86,7 +86,7 @@ class KotlinGradleProjectDataService : AbstractProjectDataService<GradleSourceSe
val coroutinesProperty = findKotlinCoroutinesProperty(project)
val kotlinFacet = ideModule.getOrCreateFacet(modelsProvider)
val kotlinFacet = ideModule.getOrCreateFacet(modelsProvider, false)
kotlinFacet.configureFacet(compilerVersion, coroutinesProperty, platformKind, modelsProvider)
GradleProjectImportHandler.getInstances(project).forEach { it(kotlinFacet, sourceSetNode) }
}
@@ -150,14 +150,14 @@ val TargetPlatformKind<*>.mavenLibraryId: String
is TargetPlatformKind.Common -> MAVEN_COMMON_STDLIB_ID
}
fun Module.getOrCreateFacet(modelsProvider: IdeModifiableModelsProvider): KotlinFacet {
fun Module.getOrCreateFacet(modelsProvider: IdeModifiableModelsProvider, useProjectSettings: Boolean): KotlinFacet {
val facetModel = modelsProvider.getModifiableFacetModel(this)
facetModel.findFacet(KotlinFacetType.TYPE_ID, KotlinFacetType.INSTANCE.defaultFacetName)?.let { return it }
val facet = with(KotlinFacetType.INSTANCE) { createFacet(this@getOrCreateFacet, defaultFacetName, createDefaultConfiguration(), null) }
facetModel.addFacet(facet)
facet.configuration.settings.useProjectSettings = true
facet.configuration.settings.useProjectSettings = useProjectSettings
return facet
}
@@ -78,7 +78,7 @@ abstract class AbstractMultiModuleTest : DaemonAnalyzerTestCase() {
val accessToken = WriteAction.start()
try {
val modelsProvider = IdeModifiableModelsProviderImpl(project)
getOrCreateFacet(modelsProvider)
getOrCreateFacet(modelsProvider, true)
modelsProvider.commit()
}
finally {