Convert java to kotlin
This commit is contained in:
committed by
Space Team
parent
bccfc2ad18
commit
61e9aaf113
+38
-46
@@ -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 fun registerExtensionPoints() {
|
||||||
|
registerApplicationExtensionPoint(DynamicBundle.LanguageBundleEP.EP_NAME, DynamicBundle.LanguageBundleEP::class.java)
|
||||||
|
registerApplicationExtensionPoint(FileContextProvider.EP_NAME, FileContextProvider::class.java)
|
||||||
|
registerApplicationExtensionPoint(MetaDataContributor.EP_NAME, MetaDataContributor::class.java)
|
||||||
|
registerApplicationExtensionPoint(PsiAugmentProvider.EP_NAME, PsiAugmentProvider::class.java)
|
||||||
|
registerApplicationExtensionPoint(JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider::class.java)
|
||||||
|
registerApplicationExtensionPoint(ContainerProvider.EP_NAME, ContainerProvider::class.java)
|
||||||
|
registerApplicationExtensionPoint(MetaLanguage.EP_NAME, MetaLanguage::class.java)
|
||||||
|
registerApplicationExtensionPoint(SmartPointerAnchorProvider.EP_NAME, SmartPointerAnchorProvider::class.java)
|
||||||
|
registerVersionSpecificAppExtensionPoints(ApplicationManager.getApplication().extensionArea)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
private static void registerExtensionPoints() {
|
|
||||||
registerApplicationExtensionPoint(DynamicBundle.LanguageBundleEP.EP_NAME, DynamicBundle.LanguageBundleEP.class);
|
|
||||||
registerApplicationExtensionPoint(FileContextProvider.EP_NAME, FileContextProvider.class);
|
|
||||||
|
|
||||||
registerApplicationExtensionPoint(MetaDataContributor.EP_NAME, MetaDataContributor.class);
|
|
||||||
registerApplicationExtensionPoint(PsiAugmentProvider.EP_NAME, PsiAugmentProvider.class);
|
|
||||||
registerApplicationExtensionPoint(JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider.class);
|
|
||||||
|
|
||||||
registerApplicationExtensionPoint(ContainerProvider.EP_NAME, ContainerProvider.class);
|
|
||||||
|
|
||||||
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();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user