Do not retain proxy-based components for compiler plugin settings in project model (again) (KT-24444)

The previous approach didn't work because Gradle wraps the copy() result, and the leakage didn't go away.
This commit is contained in:
Yan Zhulanow
2018-08-30 22:58:22 +05:00
parent f55a52b86e
commit a434cb00c6
4 changed files with 37 additions and 17 deletions
@@ -17,13 +17,11 @@
package org.jetbrains.kotlin.allopen.ide
import com.intellij.openapi.util.Key
import org.jetbrains.kotlin.annotation.plugin.ide.AnnotationBasedPluginModel
import org.jetbrains.kotlin.annotation.plugin.ide.AnnotationBasedPluginModelBuilderService
import org.jetbrains.kotlin.annotation.plugin.ide.AnnotationBasedPluginProjectResolverExtension
import org.jetbrains.kotlin.annotation.plugin.ide.*
interface AllOpenModel : AnnotationBasedPluginModel {
override fun copy(): AllOpenModel {
return AllOpenModelImpl(annotations.toList(), presets.toList())
override fun dump(): DumpedPluginModel {
return DumpedPluginModelImpl(AllOpenModelImpl::class.java, annotations.toList(), presets.toList())
}
}