mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-20 13:31:28 +07:00
[java, compilation-charts] Support for a feature flag in JPS IDEA-359089
GitOrigin-RevId: 85b795a9f36ceb2358fe7d23a110c733d2d58081
This commit is contained in:
committed by
intellij-monorepo-bot
parent
e80d1ba2da
commit
25cb51da31
@@ -21,12 +21,19 @@ import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
public class ChartsBuilderService extends BuilderService {
|
||||
private static final Logger LOG = Logger.getInstance(ChartsBuilderService.class);
|
||||
|
||||
public static final String COMPILATION_STATISTIC_BUILDER_ID = "jps.compile.statistic";
|
||||
public static final String COMPILATION_STATUS_BUILDER_ID = "jps.compile.status";
|
||||
|
||||
@Override
|
||||
public @NotNull List<? extends ModuleLevelBuilder> createModuleLevelBuilders() {
|
||||
return List.of(new ChartsModuleLevelBuilder());
|
||||
if (Boolean.getBoolean("compilation.charts")) {
|
||||
LOG.info("Compilation charts enabled.");
|
||||
return List.of(new ChartsModuleLevelBuilder());
|
||||
} else {
|
||||
return List.of();
|
||||
}
|
||||
}
|
||||
|
||||
private static class ChartsModuleLevelBuilder extends ModuleLevelBuilder {
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
<extensions defaultExtensionNs="com.intellij">
|
||||
<postStartupActivity implementation="com.intellij.java.compiler.charts.CompilationChartsProjectActivity"/>
|
||||
<compileServer.plugin classpath="jps/java-compiler-charts-jps.jar"/>
|
||||
<buildProcess.parametersProvider implementation="com.intellij.java.compiler.charts.CompilationChartsBuildParametersProvider"/>
|
||||
|
||||
<registryKey key="compilation.charts" defaultValue="false"
|
||||
description="Show compilation charts" restartRequired="false"/>
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.java.compiler.charts
|
||||
|
||||
import com.intellij.compiler.server.BuildProcessParametersProvider
|
||||
import com.intellij.java.compiler.charts.CompilationChartsProjectActivity.Companion.COMPILATION_CHARTS_KEY
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
|
||||
class CompilationChartsBuildParametersProvider: BuildProcessParametersProvider() {
|
||||
override fun getVMArguments() = listOf("-D${COMPILATION_CHARTS_KEY}=${Registry.`is`(COMPILATION_CHARTS_KEY)}")
|
||||
}
|
||||
Reference in New Issue
Block a user