Revert "KotlinDslModels: project can be null in ExternalSystemTaskNotificationListener.onStart"

This reverts commit 98d3855f
This commit is contained in:
Sergey Rostov
2020-05-19 18:13:47 +03:00
parent ba5fe6cda9
commit 7ec82ba279
2 changed files with 3 additions and 12 deletions
@@ -42,7 +42,7 @@ fun processScriptModel(
val project = task.findProject() ?: return
val models = model.toListOfScriptModels(project)
project.kotlinGradleDslSync.getOrPut(task) { KotlinDslGradleBuildSync(task) }.models.addAll(models)
project.kotlinGradleDslSync[task]?.models?.addAll(models)
if (models.containsErrors()) {
throw IllegalStateException(KotlinIdeaGradleBundle.message("title.kotlin.build.script"))
@@ -102,9 +102,7 @@ private fun KotlinDslScriptsModel.toListOfScriptModels(project: Project): List<K
)
}
class KotlinDslGradleBuildSync(val taskId: ExternalSystemTaskId) {
lateinit var workingDir: String
val projectRoots = mutableSetOf<String>()
class KotlinDslGradleBuildSync(val workingDir: String, val taskId: ExternalSystemTaskId) {
val models = mutableListOf<KotlinDslScriptModel>()
}
@@ -13,18 +13,15 @@ import org.jetbrains.kotlin.idea.framework.GRADLE_SYSTEM_ID
import org.jetbrains.kotlin.idea.scripting.gradle.GradleScriptDefinitionsContributor
class KotlinDslSyncListener : ExternalSystemTaskNotificationListenerAdapter() {
private val workingDirs = hashMapOf<ExternalSystemTaskId, String>()
override fun onStart(id: ExternalSystemTaskId, workingDir: String?) {
if (!isGradleProjectImport(id)) return
if (workingDir == null) return
gradleState.isSyncInProgress = true
workingDirs[id] = workingDir
val project = id.findProject() ?: return
project.kotlinGradleDslSync[id] = KotlinDslGradleBuildSync(id)
project.kotlinGradleDslSync[id] = KotlinDslGradleBuildSync(workingDir, id)
}
override fun onEnd(id: ExternalSystemTaskId) {
@@ -32,7 +29,6 @@ class KotlinDslSyncListener : ExternalSystemTaskNotificationListenerAdapter() {
gradleState.isSyncInProgress = false
val workingDir = workingDirs.remove(id) ?: return
val project = id.findProject() ?: return
@Suppress("DEPRECATION")
@@ -41,7 +37,6 @@ class KotlinDslSyncListener : ExternalSystemTaskNotificationListenerAdapter() {
val sync = project.kotlinGradleDslSync.remove(id)
if (sync != null) {
// For Gradle 6.0 or higher
sync.workingDir = workingDir
saveScriptModels(project, sync)
}
}
@@ -51,8 +46,6 @@ class KotlinDslSyncListener : ExternalSystemTaskNotificationListenerAdapter() {
gradleState.isSyncInProgress = false
workingDirs.remove(id)
val project = id.findProject() ?: return
project.kotlinGradleDslSync.remove(id)