Use ServiceLoader instead of IntelliJ extensions for DefaultErrorMessages
#KT-10473 Fixed
This commit is contained in:
+7
-5
@@ -17,15 +17,17 @@
|
||||
package org.jetbrains.kotlin.android.parcel.quickfixes
|
||||
|
||||
import kotlinx.android.parcel.Parcelize
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticWithParameters1
|
||||
import org.jetbrains.kotlin.android.synthetic.diagnostic.ErrorsAndroid
|
||||
import org.jetbrains.kotlin.diagnostics.Errors
|
||||
import org.jetbrains.kotlin.idea.util.addAnnotation
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.KtClassOrObject
|
||||
import org.jetbrains.kotlin.psi.KtPsiFactory
|
||||
|
||||
class AnnotateWithParcelizeQuickFix(clazz: KtClassOrObject) : AbstractParcelableQuickFix<KtClassOrObject>(clazz) {
|
||||
object Factory : AbstractFactory({
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
val targetClass = (this as DiagnosticWithParameters1<*, KtClassOrObject>).a
|
||||
val diagnostic = Errors.PLUGIN_ERROR.cast(this).a
|
||||
val targetClass = ErrorsAndroid.CLASS_SHOULD_BE_PARCELIZE.cast(diagnostic.diagnostic).a
|
||||
AnnotateWithParcelizeQuickFix(targetClass)
|
||||
})
|
||||
|
||||
@@ -34,4 +36,4 @@ class AnnotateWithParcelizeQuickFix(clazz: KtClassOrObject) : AbstractParcelable
|
||||
override fun invoke(ktPsiFactory: KtPsiFactory, element: KtClassOrObject) {
|
||||
element.addAnnotation(FqName(Parcelize::class.java.name))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user