Convert java to kotlin

This commit is contained in:
Ilya Chernikov
2022-10-20 11:14:17 +02:00
committed by Space Team
parent bccfc2ad18
commit 61e9aaf113
@@ -2,54 +2,46 @@
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. * Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. * 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.cli.jvm.compiler; package org.jetbrains.kotlin.cli.jvm.compiler
import com.intellij.DynamicBundle; import com.intellij.DynamicBundle
import com.intellij.codeInsight.ContainerProvider; import com.intellij.codeInsight.ContainerProvider
import com.intellij.codeInsight.runner.JavaMainMethodProvider; import com.intellij.codeInsight.runner.JavaMainMethodProvider
import com.intellij.core.JavaCoreApplicationEnvironment; import com.intellij.core.JavaCoreApplicationEnvironment
import com.intellij.lang.MetaLanguage; import com.intellij.lang.MetaLanguage
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.vfs.VirtualFileSystem; import com.intellij.openapi.vfs.VirtualFileSystem
import com.intellij.psi.FileContextProvider; import com.intellij.psi.FileContextProvider
import com.intellij.psi.augment.PsiAugmentProvider; import com.intellij.psi.augment.PsiAugmentProvider
import com.intellij.psi.impl.smartPointers.SmartPointerAnchorProvider; import com.intellij.psi.impl.smartPointers.SmartPointerAnchorProvider
import com.intellij.psi.meta.MetaDataContributor; import com.intellij.psi.meta.MetaDataContributor
import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.cli.jvm.compiler.IdeaExtensionPoints.registerVersionSpecificAppExtensionPoints
import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.cli.jvm.modules.CoreJrtFileSystem
import org.jetbrains.kotlin.cli.jvm.modules.CoreJrtFileSystem;
public class KotlinCoreApplicationEnvironment extends JavaCoreApplicationEnvironment { class KotlinCoreApplicationEnvironment private constructor(parentDisposable: Disposable, unitTestMode: Boolean) :
public static KotlinCoreApplicationEnvironment create(@NotNull Disposable parentDisposable, boolean unitTestMode) { JavaCoreApplicationEnvironment(parentDisposable, unitTestMode) {
KotlinCoreApplicationEnvironment environment = new KotlinCoreApplicationEnvironment(parentDisposable, unitTestMode); override fun createJrtFileSystem(): VirtualFileSystem? {
registerExtensionPoints(); return CoreJrtFileSystem()
return environment;
} }
private KotlinCoreApplicationEnvironment(@NotNull Disposable parentDisposable, boolean unitTestMode) { companion object {
super(parentDisposable, unitTestMode); fun create(parentDisposable: Disposable, unitTestMode: Boolean): KotlinCoreApplicationEnvironment {
} val environment = KotlinCoreApplicationEnvironment(parentDisposable, unitTestMode)
registerExtensionPoints()
return environment
}
private static void registerExtensionPoints() { private fun registerExtensionPoints() {
registerApplicationExtensionPoint(DynamicBundle.LanguageBundleEP.EP_NAME, DynamicBundle.LanguageBundleEP.class); registerApplicationExtensionPoint(DynamicBundle.LanguageBundleEP.EP_NAME, DynamicBundle.LanguageBundleEP::class.java)
registerApplicationExtensionPoint(FileContextProvider.EP_NAME, FileContextProvider.class); registerApplicationExtensionPoint(FileContextProvider.EP_NAME, FileContextProvider::class.java)
registerApplicationExtensionPoint(MetaDataContributor.EP_NAME, MetaDataContributor::class.java)
registerApplicationExtensionPoint(MetaDataContributor.EP_NAME, MetaDataContributor.class); registerApplicationExtensionPoint(PsiAugmentProvider.EP_NAME, PsiAugmentProvider::class.java)
registerApplicationExtensionPoint(PsiAugmentProvider.EP_NAME, PsiAugmentProvider.class); registerApplicationExtensionPoint(JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider::class.java)
registerApplicationExtensionPoint(JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider.class); registerApplicationExtensionPoint(ContainerProvider.EP_NAME, ContainerProvider::class.java)
registerApplicationExtensionPoint(MetaLanguage.EP_NAME, MetaLanguage::class.java)
registerApplicationExtensionPoint(ContainerProvider.EP_NAME, ContainerProvider.class); registerApplicationExtensionPoint(SmartPointerAnchorProvider.EP_NAME, SmartPointerAnchorProvider::class.java)
registerVersionSpecificAppExtensionPoints(ApplicationManager.getApplication().extensionArea)
registerApplicationExtensionPoint(MetaLanguage.EP_NAME, MetaLanguage.class); }
registerApplicationExtensionPoint(SmartPointerAnchorProvider.EP_NAME, SmartPointerAnchorProvider.class);
IdeaExtensionPoints.INSTANCE.registerVersionSpecificAppExtensionPoints(ApplicationManager.getApplication().getExtensionArea());
}
@Nullable
@Override
protected VirtualFileSystem createJrtFileSystem() {
return new CoreJrtFileSystem();
} }
} }