[Platform API] Remove IdePlatform, use TargetPlatform instead

This commit is contained in:
Dmitry Savvinov
2019-03-25 18:38:10 +03:00
parent 2ebdd7d2b9
commit 2d528c6396
53 changed files with 384 additions and 342 deletions
@@ -113,7 +113,7 @@ open class KotlinJavaModuleConfigurator protected constructor() : KotlinWithLibr
try {
val facet = module.getOrCreateFacet(modelsProvider, useProjectSettings = false, commitModel = true)
val facetSettings = facet.configuration.settings
facetSettings.initializeIfNeeded(module, null, JvmIdePlatformKind.Platform(JvmTarget.JVM_1_8))
facetSettings.initializeIfNeeded(module, null, JvmPlatforms.jvm18)
(facetSettings.compilerArguments as? K2JVMCompilerArguments)?.jvmTarget = "1.8"
} finally {
modelsProvider.dispose()
@@ -26,8 +26,9 @@ import com.intellij.openapi.roots.ui.configuration.libraries.AddCustomLibraryDia
import com.intellij.openapi.roots.ui.configuration.libraries.CustomLibraryDescription
import com.intellij.openapi.roots.ui.configuration.libraries.LibraryPresentationManager
import org.jetbrains.kotlin.idea.platform.tooling
import org.jetbrains.kotlin.platform.IdePlatform
import org.jetbrains.kotlin.platform.IdePlatformKind
import org.jetbrains.kotlin.platform.TargetPlatform
import org.jetbrains.kotlin.platform.idePlatformKind
import org.jetbrains.kotlin.platform.impl.isCommon
import javax.swing.JComponent
@@ -36,7 +37,7 @@ class FrameworkLibraryValidatorWithDynamicDescription(
private val context: LibrariesValidatorContext,
private val validatorsManager: FacetValidatorsManager,
private val libraryCategoryName: String,
private val getPlatform: () -> IdePlatform<*, *>
private val getPlatform: () -> TargetPlatform
) : FrameworkLibraryValidator() {
private val IdePlatformKind<*>.libraryDescription: CustomLibraryDescription?
get() = this.tooling.getLibraryDescription(context.module.project)
@@ -70,10 +71,10 @@ class FrameworkLibraryValidatorWithDynamicDescription(
override fun check(): ValidationResult {
val targetPlatform = getPlatform()
if (checkLibraryIsConfigured(targetPlatform.kind)) {
if (checkLibraryIsConfigured(targetPlatform.idePlatformKind)) {
val conflictingPlatforms = IdePlatformKind.ALL_KINDS
.filter {
!it.isCommon && it.name != targetPlatform.kind.name
!it.isCommon && it.name != targetPlatform.idePlatformKind.name
&& it.libraryDescription != null && checkLibraryIsConfigured(it)
}
@@ -87,7 +88,7 @@ class FrameworkLibraryValidatorWithDynamicDescription(
return ValidationResult(
IdeBundle.message("label.missed.libraries.text", libraryCategoryName),
LibrariesQuickFix(targetPlatform.kind.libraryDescription!!)
LibrariesQuickFix(targetPlatform.idePlatformKind.libraryDescription!!)
)
}
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.idea.platform.IdePlatformKindTooling
import org.jetbrains.kotlin.idea.platform.tooling
import org.jetbrains.kotlin.idea.project.platform
import org.jetbrains.kotlin.idea.util.module
import org.jetbrains.kotlin.platform.idePlatformKind
import org.jetbrains.kotlin.platform.impl.CommonIdePlatformKind
import org.jetbrains.kotlin.platform.impl.isCommon
import org.jetbrains.kotlin.psi.KtFunction
@@ -62,7 +63,7 @@ object CommonIdePlatformKindTooling : IdePlatformKindTooling() {
override fun acceptsAsEntryPoint(function: KtFunction): Boolean {
val module = function.containingKtFile.module ?: return false
return module.implementingModules.any { implementingModule ->
implementingModule.platform?.kind?.takeIf { !it.isCommon }?.tooling?.acceptsAsEntryPoint(function) ?: false
implementingModule.platform?.idePlatformKind?.takeIf { !it.isCommon }?.tooling?.acceptsAsEntryPoint(function) ?: false
}
}
}
@@ -27,7 +27,7 @@ import org.jetbrains.kotlin.idea.caches.resolve.findModuleDescriptor
import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny
import org.jetbrains.kotlin.idea.project.platform
import org.jetbrains.kotlin.idea.util.module
import org.jetbrains.kotlin.platform.impl.isCommon
import org.jetbrains.kotlin.platform.isCommon
import org.jetbrains.kotlin.resolve.descriptorUtil.annotationClass
import org.jetbrains.kotlin.resolve.descriptorUtil.classId
import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
@@ -38,7 +38,7 @@ class KotlinMultiplatformJUnitRecognizer : JUnitRecognizer() {
override fun isTestAnnotated(method: PsiMethod): Boolean {
if (method !is KtLightMethod) return false
val origin = method.kotlinOrigin ?: return false
if (!origin.module?.platform.isCommon) return false
if (!origin.module?.platform.isCommon()) return false
val moduleDescriptor = origin.containingKtFile.findModuleDescriptor()
val implModules = moduleDescriptor.implementingDescriptors
@@ -7,10 +7,10 @@ package org.jetbrains.kotlin.idea.run
import com.intellij.openapi.module.Module
import org.jetbrains.kotlin.idea.project.platform
import org.jetbrains.kotlin.platform.impl.isJvm
import org.jetbrains.kotlin.platform.jvm.isJvm
fun Module.asJvmModule(): Module? {
if (platform.isJvm) return this
if (platform.isJvm()) return this
return null
}