Reworked deprecated fileTypeFactory EP usage
Relates to #KT-38571
This commit is contained in:
committed by
Vladimir Dolzhenko
parent
639cc69920
commit
f4b6e1bff6
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
* Copyright 2010-2020 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.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.idea
|
||||
|
||||
import com.intellij.ide.highlighter.ArchiveFileType
|
||||
|
||||
object KLibFileType : ArchiveFileType() {
|
||||
|
||||
override fun getName(): String = "KLib"
|
||||
|
||||
override fun getDefaultExtension(): String = "klib"
|
||||
}
|
||||
@@ -30,7 +30,7 @@ import java.util.Set;
|
||||
|
||||
import static org.jetbrains.kotlin.library.KotlinLibraryUtilsKt.KLIB_FILE_EXTENSION;
|
||||
|
||||
|
||||
// BUNCH: 192
|
||||
public class KotlinFileTypeFactory extends FileTypeFactory {
|
||||
public final static String[] KOTLIN_EXTENSIONS = new String[] { "kt", "kts" };
|
||||
private final static FileType[] KOTLIN_FILE_TYPES = new FileType[] { KotlinFileType.INSTANCE };
|
||||
|
||||
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.ide.konan
|
||||
import com.intellij.openapi.fileTypes.FileTypeConsumer
|
||||
import com.intellij.openapi.fileTypes.FileTypeFactory
|
||||
|
||||
// BUNCH: 192
|
||||
class KotlinNativeFileTypeFactory : FileTypeFactory() {
|
||||
override fun createFileTypes(consumer: FileTypeConsumer) {
|
||||
consumer.consume(NativeDefinitionsFileType, KOTLIN_NATIVE_DEFINITIONS_FILE_EXTENSION)
|
||||
|
||||
@@ -4,5 +4,10 @@
|
||||
|
||||
<applicationService serviceImplementation="org.jetbrains.kotlin.idea.klib.KlibLoadingMetadataCache" />
|
||||
<projectService serviceImplementation="org.jetbrains.kotlin.ide.konan.KotlinNativeABICompatibilityCheckerService" />
|
||||
|
||||
<fileType name="Kotlin/Native Def"
|
||||
implementationClass="org.jetbrains.kotlin.ide.konan.NativeDefinitionsFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="def"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -10,4 +10,9 @@
|
||||
<implementation-class>org.jetbrains.kotlin.ide.konan.KotlinNativeABICompatibilityChecker</implementation-class>
|
||||
</component>
|
||||
</project-components>
|
||||
|
||||
<extensions defaultExtensionNs="com.intellij">
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.ide.konan.KotlinNativeFileTypeFactory"/>
|
||||
</extensions>
|
||||
|
||||
</idea-plugin>
|
||||
|
||||
@@ -322,11 +322,6 @@
|
||||
<lang.importOptimizer language="kotlin" implementationClass="org.jetbrains.kotlin.idea.imports.KotlinImportOptimizer"/>
|
||||
<lang.namesValidator language="kotlin" implementationClass="org.jetbrains.kotlin.idea.refactoring.KotlinNamesValidator"/>
|
||||
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.core.KotlinFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinJavaScriptMetaFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinBuiltInFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinModuleFileFactory"/>
|
||||
|
||||
<compileServer.plugin classpath="jps/kotlin-jps-plugin.jar;kotlin-stdlib.jar;kotlin-reflect.jar;kotlin-plugin.jar"/>
|
||||
<compiler.task execute="BEFORE" implementation="org.jetbrains.kotlin.idea.internal.makeBackup.MakeBackupCompileTask"/>
|
||||
<jps.plugin />
|
||||
|
||||
@@ -120,5 +120,33 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
<completion.ml.contextFeatures language="kotlin" implementationClass="org.jetbrains.kotlin.idea.completion.ml.KotlinContextFeatureProvider"/>
|
||||
|
||||
<defaultLiveTemplatesProvider implementation="org.jetbrains.kotlin.idea.liveTemplates.KotlinLiveTemplatesProvider"/>
|
||||
|
||||
<fileType name="Kotlin"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KotlinFileType"
|
||||
fieldName="INSTANCE"
|
||||
language="kotlin"
|
||||
extensions="kt;kts"/>
|
||||
<fileType name="KLib"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KLibFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="klib"/>
|
||||
<fileType name="KNM"
|
||||
implementationClass="org.jetbrains.kotlin.idea.klib.KlibMetaFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="knm"/>
|
||||
<fileType name="KJSM"
|
||||
implementationClass="org.jetbrains.kotlin.idea.decompiler.js.KotlinJavaScriptMetaFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kjsm"/>
|
||||
|
||||
<fileType name="kotlin_builtins"
|
||||
implementationClass="org.jetbrains.kotlin.idea.decompiler.builtIns.KotlinBuiltInFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kotlin_builtins;kotlin_metadata"/>
|
||||
|
||||
<fileType name="kotlin_module"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KotlinModuleFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kotlin_module"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -131,5 +131,10 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
<statistics.projectUsagesCollector implementation="org.jetbrains.kotlin.idea.statistics.ProjectConfigurationCollector"/>
|
||||
|
||||
<defaultLiveTemplatesProvider implementation="org.jetbrains.kotlin.idea.liveTemplates.KotlinLiveTemplatesProvider"/>
|
||||
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.core.KotlinFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinJavaScriptMetaFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinBuiltInFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinModuleFileFactory"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -131,8 +131,12 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
<statistics.projectUsagesCollector implementation="org.jetbrains.kotlin.idea.statistics.ProjectConfigurationCollector"/>
|
||||
|
||||
<fileTypeUsageSchemaDescriptor schema="Gradle Script" implementationClass="org.jetbrains.kotlin.idea.core.script.KotlinGradleScriptFileTypeSchemaDetector"/>
|
||||
|
||||
<defaultLiveTemplatesProvider implementation="org.jetbrains.kotlin.idea.liveTemplates.KotlinLiveTemplatesProvider"/>
|
||||
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.core.KotlinFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinJavaScriptMetaFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinBuiltInFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinModuleFileFactory"/>
|
||||
</extensions>
|
||||
|
||||
<extensions defaultExtensionNs="com.intellij">
|
||||
|
||||
@@ -120,5 +120,33 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
implementationClass="org.jetbrains.kotlin.idea.refactoring.move.MoveKotlinInnerHandler"/>
|
||||
|
||||
<defaultLiveTemplates file="liveTemplates/Kotlin.xml"/>
|
||||
|
||||
<fileType name="Kotlin"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KotlinFileType"
|
||||
fieldName="INSTANCE"
|
||||
language="kotlin"
|
||||
extensions="kt;kts"/>
|
||||
<fileType name="KLib"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KLibFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="klib"/>
|
||||
<fileType name="KNM"
|
||||
implementationClass="org.jetbrains.kotlin.idea.klib.KlibMetaFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="knm"/>
|
||||
<fileType name="KJSM"
|
||||
implementationClass="org.jetbrains.kotlin.idea.decompiler.js.KotlinJavaScriptMetaFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kjsm"/>
|
||||
|
||||
<fileType name="kotlin_builtins"
|
||||
implementationClass="org.jetbrains.kotlin.idea.decompiler.builtIns.KotlinBuiltInFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kotlin_builtins;kotlin_metadata"/>
|
||||
|
||||
<fileType name="kotlin_module"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KotlinModuleFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kotlin_module"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -121,5 +121,10 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
<fileTypeUsageSchemaDescriptor schema="Gradle Script" implementationClass="org.jetbrains.kotlin.idea.core.script.KotlinGradleScriptFileTypeSchemaDetector"/>
|
||||
|
||||
<defaultLiveTemplatesProvider implementation="org.jetbrains.kotlin.idea.liveTemplates.KotlinLiveTemplatesProvider"/>
|
||||
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.core.KotlinFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinJavaScriptMetaFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinBuiltInFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinModuleFileFactory"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -121,5 +121,10 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
<fileTypeUsageSchemaDescriptor schema="Gradle Script" implementationClass="org.jetbrains.kotlin.idea.core.script.KotlinGradleScriptFileTypeSchemaDetector"/>
|
||||
|
||||
<defaultLiveTemplatesProvider implementation="org.jetbrains.kotlin.idea.liveTemplates.KotlinLiveTemplatesProvider"/>
|
||||
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.core.KotlinFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinJavaScriptMetaFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinBuiltInFileTypeFactory"/>
|
||||
<fileTypeFactory implementation="org.jetbrains.kotlin.idea.KotlinModuleFileFactory"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -100,6 +100,34 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
|
||||
<completion.ml.model implementation="org.jetbrains.kotlin.idea.completion.ml.KotlinMLRankingProvider"/>
|
||||
|
||||
<defaultLiveTemplatesProvider implementation="org.jetbrains.kotlin.idea.liveTemplates.KotlinLiveTemplatesProvider"/>
|
||||
|
||||
<fileType name="Kotlin"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KotlinFileType"
|
||||
fieldName="INSTANCE"
|
||||
language="kotlin"
|
||||
extensions="kt;kts"/>
|
||||
<fileType name="KLib"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KLibFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="klib"/>
|
||||
<fileType name="KNM"
|
||||
implementationClass="org.jetbrains.kotlin.idea.klib.KlibMetaFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="knm"/>
|
||||
<fileType name="KJSM"
|
||||
implementationClass="org.jetbrains.kotlin.idea.decompiler.js.KotlinJavaScriptMetaFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kjsm"/>
|
||||
|
||||
<fileType name="kotlin_builtins"
|
||||
implementationClass="org.jetbrains.kotlin.idea.decompiler.builtIns.KotlinBuiltInFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kotlin_builtins;kotlin_metadata"/>
|
||||
|
||||
<fileType name="kotlin_module"
|
||||
implementationClass="org.jetbrains.kotlin.idea.KotlinModuleFileType"
|
||||
fieldName="INSTANCE"
|
||||
extensions="kotlin_module"/>
|
||||
</extensions>
|
||||
|
||||
<extensions defaultExtensionNs="org.jetbrains.kotlin">
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.openapi.fileTypes.FileTypeFactory
|
||||
import org.jetbrains.kotlin.idea.decompiler.builtIns.KotlinBuiltInFileType
|
||||
import org.jetbrains.kotlin.serialization.deserialization.MetadataPackageFragment
|
||||
|
||||
// BUNCH: 192
|
||||
class KotlinBuiltInFileTypeFactory : FileTypeFactory() {
|
||||
override fun createFileTypes(consumer: FileTypeConsumer) {
|
||||
consumer.consume(KotlinBuiltInFileType, KotlinBuiltInFileType.defaultExtension)
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.intellij.openapi.fileTypes.FileTypeConsumer
|
||||
import com.intellij.openapi.fileTypes.FileTypeFactory
|
||||
import org.jetbrains.kotlin.idea.decompiler.js.KotlinJavaScriptMetaFileType
|
||||
|
||||
// BUNCH: 192
|
||||
class KotlinJavaScriptMetaFileTypeFactory : FileTypeFactory() {
|
||||
override fun createFileTypes(consumer: FileTypeConsumer) {
|
||||
consumer.consume(KotlinJavaScriptMetaFileType, KotlinJavaScriptMetaFileType.defaultExtension)
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.openapi.fileTypes.FileTypeFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
|
||||
// BUNCH: 192
|
||||
public class KotlinModuleFileFactory extends FileTypeFactory {
|
||||
@Override
|
||||
public void createFileTypes(@NotNull FileTypeConsumer consumer) {
|
||||
|
||||
Reference in New Issue
Block a user