diff --git a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt index df88aaef1f6..da10a80bcb3 100644 --- a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt +++ b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt @@ -65,9 +65,9 @@ enum class CoroutineSupport( override val description: String, val compilerArgument: String ) : DescriptionAware { - ENABLED("Enabled", "enabled"), - ENABLED_WITH_WARNING("Enabled with warning", "warning"), - DISABLED("Disabled", "disabled"); + ENABLED("Enabled", "enable"), + ENABLED_WITH_WARNING("Enabled with warning", "warn"), + DISABLED("Disabled", "error"); companion object { val DEFAULT = ENABLED_WITH_WARNING @@ -79,6 +79,10 @@ enum class CoroutineSupport( arguments.coroutinesError -> DISABLED else -> DEFAULT } + + fun byCompilerArgument(argument: String): CoroutineSupport { + return CoroutineSupport.values().find { it.compilerArgument == argument } ?: DEFAULT + } } } diff --git a/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/KotlinMavenImporter.kt b/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/KotlinMavenImporter.kt index 6fdc2cb05c9..6ac653832f8 100644 --- a/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/KotlinMavenImporter.kt +++ b/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/KotlinMavenImporter.kt @@ -33,6 +33,7 @@ import org.jetbrains.idea.maven.model.MavenPlugin import org.jetbrains.idea.maven.project.* import org.jetbrains.jps.model.java.JavaSourceRootType import org.jetbrains.jps.model.module.JpsModuleSourceRootType +import org.jetbrains.kotlin.config.CoroutineSupport import org.jetbrains.kotlin.extensions.ProjectExtensionDescriptor import org.jetbrains.kotlin.idea.facet.KotlinFacet import org.jetbrains.kotlin.idea.facet.configureFacet @@ -104,7 +105,7 @@ class KotlinMavenImporter : MavenImporter(KOTLIN_PLUGIN_GROUP_ID, KOTLIN_PLUGIN_ val compilerVersion = mavenProject.findPlugin(KotlinMavenConfigurator.GROUP_ID, KotlinMavenConfigurator.MAVEN_PLUGIN_ID)?.version ?: return val kotlinFacet = module.getOrCreateFacet(modifiableModelsProvider) - kotlinFacet.configureFacet(compilerVersion, modifiableModelsProvider) + kotlinFacet.configureFacet(compilerVersion, CoroutineSupport.DEFAULT, modifiableModelsProvider) MavenProjectImportHandler.getInstances(module.project).forEach { it(kotlinFacet, mavenProject) } } diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectDataService.kt b/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectDataService.kt index 66fa8116ed4..1f34cb51137 100644 --- a/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectDataService.kt +++ b/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectDataService.kt @@ -23,6 +23,7 @@ import com.intellij.openapi.externalSystem.service.project.IdeModifiableModelsPr import com.intellij.openapi.externalSystem.service.project.manage.AbstractProjectDataService import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.config.CoroutineSupport import org.jetbrains.kotlin.extensions.ProjectExtensionDescriptor import org.jetbrains.kotlin.idea.facet.KotlinFacet import org.jetbrains.kotlin.idea.facet.configureFacet @@ -31,6 +32,7 @@ import org.jetbrains.kotlin.idea.inspections.gradle.findAll import org.jetbrains.kotlin.idea.inspections.gradle.findKotlinPluginVersion import org.jetbrains.plugins.gradle.model.data.BuildScriptClasspathData import org.jetbrains.plugins.gradle.model.data.GradleSourceSetData +import java.util.* interface GradleProjectImportHandler { companion object : ProjectExtensionDescriptor( @@ -58,9 +60,21 @@ class KotlinGradleProjectDataService : AbstractProjectDataService