diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/GradleImportHelper.kt.201 b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/GradleImportHelper.kt.201 new file mode 100644 index 00000000000..f3392a3cb21 --- /dev/null +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/GradleImportHelper.kt.201 @@ -0,0 +1,33 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +@file:Suppress("UnstableApiUsage") + +package org.jetbrains.kotlin.idea.scripting.gradle + +import com.intellij.openapi.externalSystem.importing.ImportSpecBuilder +import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil +import com.intellij.openapi.externalSystem.util.ExternalSystemUtil +import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.idea.scripting.gradle.importing.KotlinDslScriptModelResolver +import org.jetbrains.plugins.gradle.service.project.GradleIncrementalResolverPolicy +import org.jetbrains.plugins.gradle.util.GradleConstants + +fun runPartialGradleImport(project: Project) { + val gradleSettings = ExternalSystemApiUtil.getSettings(project, GradleConstants.SYSTEM_ID) + val projectSettings = gradleSettings.getLinkedProjectsSettings() + .filterIsInstance() + .firstOrNull() ?: return + + ExternalSystemUtil.refreshProject( + projectSettings.externalProjectPath, + ImportSpecBuilder(project, GradleConstants.SYSTEM_ID) + .projectResolverPolicy( + GradleIncrementalResolverPolicy { + it is KotlinDslScriptModelResolver + } + ) + ) +} \ No newline at end of file