Minor: Get rid of deprecated (as of IDEA 2016.2) method calls
This commit is contained in:
+2
-1
@@ -33,6 +33,7 @@ import org.jetbrains.kotlin.asJava.classes.KtLightClass
|
||||
import org.jetbrains.kotlin.idea.core.KotlinNameSuggester
|
||||
import org.jetbrains.kotlin.idea.core.ShortenReferences
|
||||
import org.jetbrains.kotlin.idea.editor.BatchTemplateRunner
|
||||
import org.jetbrains.kotlin.idea.spring.effectiveBeanClasses
|
||||
import org.jetbrains.kotlin.psi.KtProperty
|
||||
import org.jetbrains.kotlin.psi.KtPsiFactory
|
||||
import org.jetbrains.kotlin.psi.psiUtil.containingClassOrObject
|
||||
@@ -102,7 +103,7 @@ private fun createAutowiredDependency(
|
||||
candidateBean: SpringBeanPointer<CommonSpringBean>,
|
||||
model: CommonSpringModel
|
||||
): BatchTemplateRunner? {
|
||||
val candidateBeanClasses = candidateBean.effectiveBeanType.ifEmpty { return null }
|
||||
val candidateBeanClasses = candidateBean.effectiveBeanClasses().ifEmpty { return null }
|
||||
if (!GenerateSpringBeanDependenciesUtil.ensureFileWritable(klass)) return null
|
||||
val property = createAutowiredProperty(klass, candidateBean, candidateBeanClasses, model) ?: return null
|
||||
return addCreatePropertyTemplate(property, candidateBean, candidateBeanClasses)
|
||||
|
||||
@@ -61,6 +61,8 @@ import org.jetbrains.kotlin.idea.core.NewDeclarationNameValidator
|
||||
import org.jetbrains.kotlin.idea.core.ShortenReferences
|
||||
import org.jetbrains.kotlin.idea.core.getOrCreateCompanionObject
|
||||
import org.jetbrains.kotlin.idea.editor.BatchTemplateRunner
|
||||
import org.jetbrains.kotlin.idea.spring.beanClass
|
||||
import org.jetbrains.kotlin.idea.spring.effectiveBeanClasses
|
||||
import org.jetbrains.kotlin.idea.util.CallType
|
||||
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
|
||||
import org.jetbrains.kotlin.load.java.propertyNameBySetMethodName
|
||||
@@ -132,7 +134,7 @@ private fun SpringBean.getFactoryFunctionName(factoryBeanClass: KtClass): String
|
||||
factoryMethod.stringValue?.let { if (!it.isBlank()) return it }
|
||||
|
||||
val existingNames = factoryBeanClass.declarations.mapNotNull { if (it is KtFunction || it is KtClassOrObject) it.name else null }
|
||||
return KotlinNameSuggester.suggestNameByName("create${beanClass!!.name}") { it !in existingNames }
|
||||
return KotlinNameSuggester.suggestNameByName("create${beanClass()!!.name}") { it !in existingNames }
|
||||
}
|
||||
|
||||
internal val PsiClass.defaultTypeText: String
|
||||
@@ -301,8 +303,8 @@ private fun createSetterDependency(
|
||||
injectionKind: SpringDependencyInjectionKind
|
||||
): BatchTemplateRunner? {
|
||||
val templatesHolder = BatchTemplateRunner(currentBean.manager.project)
|
||||
val currentBeanClass = currentBean.beanClass as? KtLightClass ?: return null
|
||||
val candidateBeanClasses = dependency.effectiveBeanType.ifEmpty { return null }
|
||||
val currentBeanClass = currentBean.beanClass() as? KtLightClass ?: return null
|
||||
val candidateBeanClasses = dependency.effectiveBeanClasses().ifEmpty { return null }
|
||||
val setter = getOrCreateSetter(dependency, currentBeanClass, candidateBeanClasses, templatesHolder, injectionKind) ?: return null
|
||||
currentBean.addProperty().apply {
|
||||
name.ensureXmlElementExists()
|
||||
@@ -355,7 +357,7 @@ private fun createConstructorWithTemplate(
|
||||
dependency: SpringBeanPointer<CommonSpringBean>,
|
||||
templatesHolder: BatchTemplateRunner
|
||||
) {
|
||||
val beanClass = currentBean.beanClass as? KtLightClass ?: return
|
||||
val beanClass = currentBean.beanClass() as? KtLightClass ?: return
|
||||
val ktBeanClass = beanClass.kotlinOrigin as? KtClass ?: return
|
||||
|
||||
try {
|
||||
@@ -415,8 +417,8 @@ private fun createConstructorDependency(
|
||||
dependency: SpringBeanPointer<CommonSpringBean>
|
||||
): BatchTemplateRunner? {
|
||||
val templatesHolder = BatchTemplateRunner(currentBean.manager.project)
|
||||
val currentBeanClass = currentBean.beanClass as? KtLightClass ?: return null
|
||||
val candidateBeanClasses = dependency.effectiveBeanType.ifEmpty { return null }
|
||||
val currentBeanClass = currentBean.beanClass() as? KtLightClass ?: return null
|
||||
val candidateBeanClasses = dependency.effectiveBeanClasses().ifEmpty { return null }
|
||||
var existedConstructor = findExistedConstructor(currentBean, currentBeanClass, candidateBeanClasses)
|
||||
if (existedConstructor == null) {
|
||||
if (!ensureFileWritable(currentBeanClass)) return null
|
||||
@@ -485,7 +487,7 @@ fun generateDependenciesFor(
|
||||
.firstOrNull { acceptBean(it, false) }
|
||||
?.let { springBean ->
|
||||
if (!springBean.ensureFileWritable()) return emptyList()
|
||||
if (springBean.beanClass == null) return emptyList()
|
||||
if (springBean.beanClass() == null) return emptyList()
|
||||
val dependencies = chooseDependentBeans(getCandidates(springBean, isSetter), project, isSetter)
|
||||
return dependencies.mapNotNull { generateDependency(springBean, it, injectionKind) }
|
||||
}
|
||||
|
||||
@@ -18,9 +18,12 @@ package org.jetbrains.kotlin.idea.spring
|
||||
|
||||
import com.intellij.codeInsight.AnnotationUtil
|
||||
import com.intellij.openapi.module.ModuleUtilCore
|
||||
import com.intellij.psi.PsiClassType
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.PsiModifierListOwner
|
||||
import com.intellij.spring.CommonSpringModel
|
||||
import com.intellij.spring.model.CommonSpringBean
|
||||
import com.intellij.spring.model.SpringBeanPointer
|
||||
import com.intellij.spring.model.jam.utils.JamAnnotationTypeUtil
|
||||
import com.intellij.spring.model.utils.SpringModelUtils
|
||||
|
||||
@@ -33,4 +36,8 @@ internal fun PsiModifierListOwner.isAnnotatedWith(annotationFqName: String): Boo
|
||||
}
|
||||
|
||||
internal val PsiElement.springModel: CommonSpringModel?
|
||||
get() = SpringModelUtils.getInstance().getSpringModel(this)
|
||||
get() = SpringModelUtils.getInstance().getSpringModel(this)
|
||||
|
||||
internal fun CommonSpringBean.beanClass() = (beanType as? PsiClassType)?.resolve()
|
||||
|
||||
internal fun SpringBeanPointer<*>.effectiveBeanClasses() = effectiveBeanTypes.mapNotNull { (it as? PsiClassType)?.resolve() }.toTypedArray()
|
||||
Reference in New Issue
Block a user