Stop using com.intellij.openapi.components.service functions:

they are getting obfuscated in the ultimate SDK, which prevents us
from using ultimate sdk for all modules.
Could probably be rolled back after fixing KT-18563
This commit is contained in:
Ilya Chernikov
2017-12-20 12:33:46 +01:00
committed by Vyacheslav Gerasimov
parent d38b1c361a
commit 5f7c783bb2
8 changed files with 21 additions and 21 deletions
@@ -17,7 +17,7 @@
package org.jetbrains.kotlin.idea.caches package org.jetbrains.kotlin.idea.caches
import com.intellij.openapi.Disposable import com.intellij.openapi.Disposable
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.fileTypes.FileTypeRegistry import com.intellij.openapi.fileTypes.FileTypeRegistry
import com.intellij.openapi.module.Module import com.intellij.openapi.module.Module
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
@@ -61,7 +61,7 @@ class KotlinPackageContentModificationListener(
fun onEvents(events: List<VFileEvent>) { fun onEvents(events: List<VFileEvent>) {
val service = project.service<PerModulePackageCacheService>() val service = ServiceManager.getService(project, PerModulePackageCacheService::class.java)
if (events.size >= FULL_DROP_THRESHOLD) { if (events.size >= FULL_DROP_THRESHOLD) {
service.onTooComplexChange() service.onTooComplexChange()
} }
@@ -90,12 +90,12 @@ class KotlinPackageStatementPsiTreeChangePreprocessor(private val project: Proje
PsiTreeChangeEventImpl.PsiEventType.CHILD_REMOVED -> { PsiTreeChangeEventImpl.PsiEventType.CHILD_REMOVED -> {
val child = event.child ?: return val child = event.child ?: return
if (child.getParentOfType<KtPackageDirective>(false) != null) if (child.getParentOfType<KtPackageDirective>(false) != null)
project.service<PerModulePackageCacheService>().notifyPackageChange(file) ServiceManager.getService(project, PerModulePackageCacheService::class.java).notifyPackageChange(file)
} }
PsiTreeChangeEventImpl.PsiEventType.CHILDREN_CHANGED -> { PsiTreeChangeEventImpl.PsiEventType.CHILDREN_CHANGED -> {
val parent = event.parent ?: return val parent = event.parent ?: return
if (parent.getChildrenOfType<KtPackageDirective>().any()) if (parent.getChildrenOfType<KtPackageDirective>().any())
project.service<PerModulePackageCacheService>().notifyPackageChange(file) ServiceManager.getService(project, PerModulePackageCacheService::class.java).notifyPackageChange(file)
} }
else -> { else -> {
} }
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.caches.resolve package org.jetbrains.kotlin.idea.caches.resolve
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.module.Module import com.intellij.openapi.module.Module
import com.intellij.openapi.module.ModuleManager import com.intellij.openapi.module.ModuleManager
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
@@ -84,7 +84,7 @@ fun createModuleResolverProvider(
delegateResolver, { _, c -> IDEPackagePartProvider(c.moduleContentScope) }, delegateResolver, { _, c -> IDEPackagePartProvider(c.moduleContentScope) },
analysisSettings.sdk?.let { SdkInfo(project, it) }, analysisSettings.sdk?.let { SdkInfo(project, it) },
modulePlatforms = { module -> module.platform?.multiTargetPlatform }, modulePlatforms = { module -> module.platform?.multiTargetPlatform },
packageOracleFactory = project.service<IdePackageOracleFactory>(), packageOracleFactory = ServiceManager.getService(project, IdePackageOracleFactory::class.java),
languageSettingsProvider = IDELanguageSettingsProvider, languageSettingsProvider = IDELanguageSettingsProvider,
invalidateOnOOCB = invalidateOnOOCB invalidateOnOOCB = invalidateOnOOCB
) )
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.caches.resolve package org.jetbrains.kotlin.idea.caches.resolve
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import com.intellij.openapi.projectRoots.Sdk import com.intellij.openapi.projectRoots.Sdk
import com.intellij.openapi.roots.ProjectRootManager import com.intellij.openapi.roots.ProjectRootManager
@@ -87,7 +87,7 @@ class ScriptDependenciesModuleInfo(
ScriptDependenciesManager.getInstance(project).getAllScriptsClasspathScope(), project ScriptDependenciesManager.getInstance(project).getAllScriptsClasspathScope(), project
) )
} }
return project.service<ScriptBinariesScopeCache>().get(scriptModuleInfo.externalDependencies) return ServiceManager.getService(project, ScriptBinariesScopeCache::class.java).get(scriptModuleInfo.externalDependencies)
} }
// NOTE: intentionally not taking corresponding script info into account // NOTE: intentionally not taking corresponding script info into account
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.caches.resolve package org.jetbrains.kotlin.idea.caches.resolve
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import org.jetbrains.kotlin.analyzer.ModuleInfo import org.jetbrains.kotlin.analyzer.ModuleInfo
import org.jetbrains.kotlin.analyzer.PackageOracle import org.jetbrains.kotlin.analyzer.PackageOracle
@@ -46,13 +46,13 @@ class IdePackageOracleFactory(val project: Project) : PackageOracleFactory {
private class JavaPackagesOracle(moduleInfo: IdeaModuleInfo, project: Project) : PackageOracle { private class JavaPackagesOracle(moduleInfo: IdeaModuleInfo, project: Project) : PackageOracle {
private val scope = moduleInfo.contentScope() private val scope = moduleInfo.contentScope()
private val facade = project.service<KotlinJavaPsiFacade>() private val facade = ServiceManager.getService(project, KotlinJavaPsiFacade::class.java)
override fun packageExists(fqName: FqName) = facade.findPackage(fqName.asString(), scope) != null override fun packageExists(fqName: FqName) = facade.findPackage(fqName.asString(), scope) != null
} }
private class KotlinSourceFilesOracle(private val moduleInfo: ModuleSourceInfo) : PackageOracle { private class KotlinSourceFilesOracle(private val moduleInfo: ModuleSourceInfo) : PackageOracle {
private val cacheService = moduleInfo.module.project.service<PerModulePackageCacheService>() private val cacheService = ServiceManager.getService(moduleInfo.module.project, PerModulePackageCacheService::class.java)
override fun packageExists(fqName: FqName): Boolean { override fun packageExists(fqName: FqName): Boolean {
return cacheService.packageExists(fqName, moduleInfo) return cacheService.packageExists(fqName, moduleInfo)
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.stubindex.resolve package org.jetbrains.kotlin.idea.stubindex.resolve
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import com.intellij.psi.PsiManager import com.intellij.psi.PsiManager
import com.intellij.psi.search.GlobalSearchScope import com.intellij.psi.search.GlobalSearchScope
@@ -63,7 +63,7 @@ class PluginDeclarationProviderFactory(
private fun stubBasedPackageExists(name: FqName): Boolean { private fun stubBasedPackageExists(name: FqName): Boolean {
// We're only looking for source-based declarations // We're only looking for source-based declarations
val moduleSourceInfo = moduleInfo as? ModuleSourceInfo ?: return false val moduleSourceInfo = moduleInfo as? ModuleSourceInfo ?: return false
return project.service<PerModulePackageCacheService>().packageExists(name, moduleSourceInfo) return ServiceManager.getService(project, PerModulePackageCacheService::class.java).packageExists(name, moduleInfo)
} }
private fun getStubBasedPackageMemberDeclarationProvider(name: FqName): PackageMemberDeclarationProvider? { private fun getStubBasedPackageMemberDeclarationProvider(name: FqName): PackageMemberDeclarationProvider? {
@@ -97,7 +97,7 @@ class PluginDeclarationProviderFactory(
val packageExists = PackageIndexUtil.packageExists(fqName, indexedFilesScope, project) val packageExists = PackageIndexUtil.packageExists(fqName, indexedFilesScope, project)
val spiPackageExists = subpackagesIndex.packageExists(fqName) val spiPackageExists = subpackagesIndex.packageExists(fqName)
val oldPackageExists = oldPackageExists(fqName) val oldPackageExists = oldPackageExists(fqName)
val cachedPackageExists = moduleSourceInfo?.let { project.service<PerModulePackageCacheService>().packageExists(fqName, it) } val cachedPackageExists = moduleSourceInfo?.let { ServiceManager.getService(project, PerModulePackageCacheService::class.java).packageExists(fqName, it) }
val moduleModificationCount = moduleSourceInfo?.createModificationTracker()?.modificationCount val moduleModificationCount = moduleSourceInfo?.createModificationTracker()?.modificationCount
val common = """ val common = """
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.core.script package org.jetbrains.kotlin.idea.core.script
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.diagnostic.Logger import com.intellij.openapi.diagnostic.Logger
import com.intellij.openapi.extensions.ExtensionPointName import com.intellij.openapi.extensions.ExtensionPointName
import com.intellij.openapi.extensions.Extensions import com.intellij.openapi.extensions.Extensions
@@ -91,7 +91,7 @@ class ScriptDefinitionsManager(private val project: Project): ScriptDefinitionPr
private fun updateDefinitions() { private fun updateDefinitions() {
definitions = definitionsByContributor.values.flattenTo(mutableListOf()) definitions = definitionsByContributor.values.flattenTo(mutableListOf())
// TODO: clear by script type/definition // TODO: clear by script type/definition
project.service<ScriptDependenciesUpdater>().clear() ServiceManager.getService(project, ScriptDependenciesUpdater::class.java).clear()
} }
private fun ScriptDefinitionContributor.safeGetDefinitions(): List<KotlinScriptDefinition> { private fun ScriptDefinitionContributor.safeGetDefinitions(): List<KotlinScriptDefinition> {
@@ -106,7 +106,7 @@ class ScriptDefinitionsManager(private val project: Project): ScriptDefinitionPr
} }
companion object { companion object {
fun getInstance(project: Project): ScriptDefinitionsManager = project.service<ScriptDefinitionProvider>() as ScriptDefinitionsManager fun getInstance(project: Project): ScriptDefinitionsManager = ServiceManager.getService(project, ScriptDefinitionProvider::class.java) as ScriptDefinitionsManager
} }
} }
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.core.script package org.jetbrains.kotlin.idea.core.script
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.vfs.VirtualFile import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.vfs.VirtualFileWithId import com.intellij.openapi.vfs.VirtualFileWithId
import com.intellij.util.io.DataInputOutputUtil.readSeq import com.intellij.util.io.DataInputOutputUtil.readSeq
@@ -33,7 +33,7 @@ object ScriptDependenciesFileAttribute {
private val VERSION = 1 private val VERSION = 1
private val ID = "kotlin-script-dependencies" private val ID = "kotlin-script-dependencies"
private val fileAttributeService = service<FileAttributeService>() private val fileAttributeService = ServiceManager.getService(FileAttributeService::class.java)
init { init {
fileAttributeService.register(ID, VERSION, false) fileAttributeService.register(ID, VERSION, false)
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.idea.core.util
import com.intellij.openapi.Disposable import com.intellij.openapi.Disposable
import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.application.ModalityState import com.intellij.openapi.application.ModalityState
import com.intellij.openapi.components.service import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import com.intellij.openapi.util.Disposer import com.intellij.openapi.util.Disposer
import kotlinx.coroutines.experimental.CoroutineDispatcher import kotlinx.coroutines.experimental.CoroutineDispatcher
@@ -47,7 +47,7 @@ public object EDT : CoroutineDispatcher() {
// job that is cancelled when the project is disposed // job that is cancelled when the project is disposed
val Project.cancelOnDisposal: Job val Project.cancelOnDisposal: Job
get() = service<ProjectJob>().sharedJob get() = ServiceManager.getService(this, ProjectJob::class.java).sharedJob
internal class ProjectJob(project: Project) { internal class ProjectJob(project: Project) {
internal val sharedJob: Job = Job() internal val sharedJob: Job = Job()