From cdf6e2de2be7bc4f0a6daef24df07f28d33e198e Mon Sep 17 00:00:00 2001 From: Dennis Ushakov Date: Sat, 22 Jun 2019 16:45:39 +0200 Subject: [PATCH] generate bundled extension list GitOrigin-RevId: 89b5a366c937375813240532d63000b9144aa24f --- .../com/intellij/ide/plugins/BundledPluginsLister.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/BundledPluginsLister.java b/platform/platform-impl/src/com/intellij/ide/plugins/BundledPluginsLister.java index c3072fa4faad..254bd6ccf25b 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/BundledPluginsLister.java +++ b/platform/platform-impl/src/com/intellij/ide/plugins/BundledPluginsLister.java @@ -3,6 +3,8 @@ package com.intellij.ide.plugins; import com.google.gson.stream.JsonWriter; import com.intellij.openapi.application.ApplicationStarter; +import com.intellij.openapi.fileTypes.FileTypeManager; +import com.intellij.openapi.fileTypes.PlainTextLikeFileType; import com.intellij.openapi.util.io.FileUtil; import java.io.*; @@ -49,9 +51,17 @@ public class BundledPluginsLister implements ApplicationStarter { .sorted() .collect(Collectors.toList()); + FileTypeManager fileTypeManager = FileTypeManager.getInstance(); + List extensions = Arrays.stream(fileTypeManager.getRegisteredFileTypes()). + filter(type -> !(type instanceof PlainTextLikeFileType)). + flatMap(type -> fileTypeManager.getAssociations(type).stream()). + map(matcher -> matcher.getPresentableString()). + collect(Collectors.toList()); + writer.beginObject(); writeList(writer, "modules", modules); writeList(writer, "plugins", pluginIds); + writeList(writer, "extensions", extensions); writer.endObject(); } }