Gradle: Retrieve AndroidModuleModel using IdeModifiableModelsProvider
Otherwise it may be null if module is just created by the import
This commit is contained in:
+1
-1
@@ -78,7 +78,7 @@ class KotlinAndroidGradleMPPModuleDataService : AbstractProjectDataService<Modul
|
||||
}
|
||||
}
|
||||
}
|
||||
val androidModel = AndroidModuleModel.get(module) ?: continue
|
||||
val androidModel = module.getAndroidModel(modelsProvider) ?: continue
|
||||
val variantName = androidModel.selectedVariant.name
|
||||
val activeSourceSetInfos = nodeToImport.kotlinAndroidSourceSets?.filter { it.kotlinModule.name.startsWith(variantName) } ?: emptyList()
|
||||
for (activeSourceSetInfo in activeSourceSetInfos) {
|
||||
|
||||
+1
-1
@@ -75,7 +75,7 @@ class KotlinAndroidGradleMPPModuleDataService : AbstractProjectDataService<Modul
|
||||
}
|
||||
}
|
||||
}
|
||||
val androidModel = AndroidModuleModel.get(module) ?: continue
|
||||
val androidModel = module.getAndroidModel(modelsProvider) ?: continue
|
||||
val variantName = androidModel.selectedVariant.name
|
||||
val activeSourceSetInfos = nodeToImport.kotlinAndroidSourceSets?.filter { it.kotlinModule.name.startsWith(variantName) } ?: emptyList()
|
||||
for (activeSourceSetInfo in activeSourceSetInfos) {
|
||||
|
||||
+1
-1
@@ -78,7 +78,7 @@ class KotlinAndroidGradleMPPModuleDataService : AbstractProjectDataService<Modul
|
||||
}
|
||||
}
|
||||
}
|
||||
val androidModel = AndroidModuleModel.get(module) ?: continue
|
||||
val androidModel = module.getAndroidModel(modelsProvider) ?: continue
|
||||
val variantName = androidModel.selectedVariant.name
|
||||
val activeSourceSetInfos = nodeToImport.kotlinAndroidSourceSets?.filter { it.kotlinModule.name.startsWith(variantName) } ?: emptyList()
|
||||
for (activeSourceSetInfo in activeSourceSetInfos) {
|
||||
|
||||
+1
-1
@@ -89,7 +89,7 @@ class KotlinAndroidGradleMPPModuleDataService : AbstractProjectDataService<Modul
|
||||
}
|
||||
}
|
||||
}
|
||||
val androidModel = AndroidModuleModel.get(module) ?: continue
|
||||
val androidModel = module.getAndroidModel(modelsProvider) ?: continue
|
||||
val variantName = androidModel.selectedVariant.name
|
||||
val activeSourceSetInfos = nodeToImport.kotlinAndroidSourceSets?.filter { it.kotlinModule.name.startsWith(variantName) } ?: emptyList()
|
||||
for (activeSourceSetInfo in activeSourceSetInfos) {
|
||||
|
||||
+1
-1
@@ -78,7 +78,7 @@ class KotlinAndroidGradleMPPModuleDataService : AbstractProjectDataService<Modul
|
||||
}
|
||||
}
|
||||
}
|
||||
val androidModel = AndroidModuleModel.get(module) ?: continue
|
||||
val androidModel = module.getAndroidModel(modelsProvider) ?: continue
|
||||
val variantName = androidModel.selectedVariant.name
|
||||
val activeSourceSetInfos = nodeToImport.kotlinAndroidSourceSets?.filter { it.kotlinModule.name.startsWith(variantName) } ?: emptyList()
|
||||
for (activeSourceSetInfo in activeSourceSetInfos) {
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
/*
|
||||
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
|
||||
* that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.android.configure
|
||||
|
||||
import com.android.tools.idea.gradle.project.model.AndroidModuleModel
|
||||
import com.intellij.openapi.externalSystem.service.project.IdeModifiableModelsProvider
|
||||
import com.intellij.openapi.module.Module
|
||||
import org.jetbrains.android.facet.AndroidFacet
|
||||
|
||||
fun Module.getAndroidModel(modelsProvider: IdeModifiableModelsProvider? = null): AndroidModuleModel? {
|
||||
if (modelsProvider == null) return AndroidModuleModel.get(this)
|
||||
val androidFacet = modelsProvider.getModifiableFacetModel(this).getFacetByType(AndroidFacet.getFacetType().id) ?: return null
|
||||
return AndroidModuleModel.get(androidFacet)
|
||||
}
|
||||
Reference in New Issue
Block a user