From f2af6434736611b358b35275d98cdcde0cefde87 Mon Sep 17 00:00:00 2001 From: Anton Makeev Date: Mon, 6 May 2019 23:14:49 +0200 Subject: [PATCH] IDEA-210281 Cleanup Gradle settings: removed unnecessary GradleSettingsService GitOrigin-RevId: f16d4a9a9304ab44f3930faf2ef570a2c12545ab --- .../build/GradleProjectTaskRunner.java | 6 +- .../GradleTestRunConfigurationProducer.java | 6 +- .../plugin-resources/META-INF/plugin.xml | 1 - .../plugins/gradle/GradleManager.java | 3 +- .../GradleOrderEnumeratorHandler.java | 3 +- .../settings/GradleSettingsService.java | 59 ------------------- .../settings/GradleProjectSettings.java | 31 +++++++++- .../gradle/settings/GradleSettings.java | 5 +- .../settings/GradleSystemRunningSettings.java | 5 +- .../statistics/GradleSettingsCollector.kt | 9 +-- .../importing/GradleFoldersImportingTest.java | 6 +- .../GradleSettingsImportingTest.java | 7 +-- .../gradle/settings/GradleSettingsTest.kt | 9 ++- 13 files changed, 55 insertions(+), 95 deletions(-) delete mode 100644 plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleSettingsService.java diff --git a/plugins/gradle/java/src/execution/build/GradleProjectTaskRunner.java b/plugins/gradle/java/src/execution/build/GradleProjectTaskRunner.java index 784173b0cd2d..84e5276b8aae 100644 --- a/plugins/gradle/java/src/execution/build/GradleProjectTaskRunner.java +++ b/plugins/gradle/java/src/execution/build/GradleProjectTaskRunner.java @@ -36,8 +36,8 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.plugins.gradle.service.project.GradleBuildSrcProjectsResolver; import org.jetbrains.plugins.gradle.service.project.GradleProjectResolverUtil; -import org.jetbrains.plugins.gradle.service.settings.GradleSettingsService; import org.jetbrains.plugins.gradle.service.task.GradleTaskManager; +import org.jetbrains.plugins.gradle.settings.GradleProjectSettings; import org.jetbrains.plugins.gradle.settings.GradleSettings; import org.jetbrains.plugins.gradle.util.GradleConstants; @@ -160,7 +160,7 @@ public class GradleProjectTaskRunner extends ProjectTaskRunner { public boolean canRun(@NotNull ProjectTask projectTask) { if (projectTask instanceof ModuleBuildTask) { Module module = ((ModuleBuildTask)projectTask).getModule(); - if (!GradleSettingsService.isDelegatedBuildEnabled(module)) return false; + if (!GradleProjectSettings.isDelegatedBuildEnabled(module)) return false; return isExternalSystemAwareModule(GradleConstants.SYSTEM_ID, module); } if (projectTask instanceof ProjectModelBuildTask) { @@ -177,7 +177,7 @@ public class GradleProjectTaskRunner extends ProjectTaskRunner { if (runProfile instanceof ModuleBasedConfiguration) { RunConfigurationModule module = ((ModuleBasedConfiguration)runProfile).getConfigurationModule(); if (!isExternalSystemAwareModule(GradleConstants.SYSTEM_ID, module.getModule()) || - !GradleSettingsService.isDelegatedBuildEnabled(module.getModule())) { + !GradleProjectSettings.isDelegatedBuildEnabled(module.getModule())) { return false; } } diff --git a/plugins/gradle/java/src/execution/test/runner/GradleTestRunConfigurationProducer.java b/plugins/gradle/java/src/execution/test/runner/GradleTestRunConfigurationProducer.java index a87ac2c16aa3..2624ea40200d 100644 --- a/plugins/gradle/java/src/execution/test/runner/GradleTestRunConfigurationProducer.java +++ b/plugins/gradle/java/src/execution/test/runner/GradleTestRunConfigurationProducer.java @@ -31,7 +31,7 @@ import org.jetbrains.annotations.TestOnly; import org.jetbrains.plugins.gradle.execution.GradleRunnerUtil; import org.jetbrains.plugins.gradle.service.execution.GradleRunConfiguration; import org.jetbrains.plugins.gradle.service.project.GradleProjectResolverUtil; -import org.jetbrains.plugins.gradle.service.settings.GradleSettingsService; +import org.jetbrains.plugins.gradle.settings.GradleProjectSettings; import org.jetbrains.plugins.gradle.settings.TestRunner; import org.jetbrains.plugins.gradle.util.GradleConstants; import org.jetbrains.plugins.gradle.util.TasksToRun; @@ -239,12 +239,12 @@ public abstract class GradleTestRunConfigurationProducer extends RunConfiguratio } private static TestRunner getTestRunner(@NotNull Project project, @NotNull String projectPath) { - return GradleSettingsService.getInstance(project).getTestRunner(projectPath); + return GradleProjectSettings.getTestRunner(project, projectPath); } private static TestRunner getTestRunner(@NotNull PsiElement sourceElement) { Module module = ModuleUtilCore.findModuleForPsiElement(sourceElement); if (module == null) return PLATFORM; - return GradleSettingsService.getTestRunner(module); + return GradleProjectSettings.getTestRunner(module); } } diff --git a/plugins/gradle/plugin-resources/META-INF/plugin.xml b/plugins/gradle/plugin-resources/META-INF/plugin.xml index 44a8a59ec2b0..e345dae87d01 100644 --- a/plugins/gradle/plugin-resources/META-INF/plugin.xml +++ b/plugins/gradle/plugin-resources/META-INF/plugin.xml @@ -91,7 +91,6 @@ - diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/GradleManager.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/GradleManager.java index 8353c4a6e3a0..c43f643cb149 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/GradleManager.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/GradleManager.java @@ -70,7 +70,6 @@ import org.jetbrains.plugins.gradle.service.project.GradleAutoImportAware; import org.jetbrains.plugins.gradle.service.project.GradleProjectResolver; import org.jetbrains.plugins.gradle.service.project.GradleProjectResolverExtension; import org.jetbrains.plugins.gradle.service.settings.GradleConfigurable; -import org.jetbrains.plugins.gradle.service.settings.GradleSettingsService; import org.jetbrains.plugins.gradle.service.task.GradleTaskManager; import org.jetbrains.plugins.gradle.settings.*; import org.jetbrains.plugins.gradle.util.GradleConstants; @@ -214,7 +213,7 @@ public final class GradleManager result.setResolveModulePerSourceSet(projectLevelSettings.isResolveModulePerSourceSet()); result.setUseQualifiedModuleNames(projectLevelSettings.isUseQualifiedModuleNames()); } - boolean delegatedBuildEnabled = GradleSettingsService.getInstance(project).isDelegatedBuildEnabled(projectPath); + boolean delegatedBuildEnabled = GradleProjectSettings.isDelegatedBuildEnabled(project, projectPath); result.setDelegatedBuild(delegatedBuildEnabled); configureExecutionWorkspace(projectLevelSettings, settings, result, project, projectPath); diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/GradleOrderEnumeratorHandler.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/GradleOrderEnumeratorHandler.java index 9abd54efa153..cf2add3ae95b 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/GradleOrderEnumeratorHandler.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/GradleOrderEnumeratorHandler.java @@ -33,7 +33,6 @@ import org.jetbrains.plugins.gradle.model.ExternalProject; import org.jetbrains.plugins.gradle.model.ExternalSourceDirectorySet; import org.jetbrains.plugins.gradle.model.ExternalSourceSet; import org.jetbrains.plugins.gradle.service.project.data.ExternalProjectDataCache; -import org.jetbrains.plugins.gradle.service.settings.GradleSettingsService; import org.jetbrains.plugins.gradle.settings.GradleLocalSettings; import org.jetbrains.plugins.gradle.settings.GradleProjectSettings; import org.jetbrains.plugins.gradle.settings.GradleSettings; @@ -127,7 +126,7 @@ public class GradleOrderEnumeratorHandler extends OrderEnumerationHandler { externalProjectDataCache.findExternalProject(externalRootProject, rootModel.getModule()); if (externalSourceSets.isEmpty()) return false; - boolean isDelegatedBuildEnabled = GradleSettingsService.isDelegatedBuildEnabled(rootModel.getModule()); + boolean isDelegatedBuildEnabled = GradleProjectSettings.isDelegatedBuildEnabled(rootModel.getModule()); for (ExternalSourceSet sourceSet : externalSourceSets.values()) { if (includeTests) { if (isDelegatedBuildEnabled) { diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleSettingsService.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleSettingsService.java deleted file mode 100644 index bf36e3ce70df..000000000000 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleSettingsService.java +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -package org.jetbrains.plugins.gradle.service.settings; - -import com.intellij.openapi.components.ServiceManager; -import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil; -import com.intellij.openapi.module.Module; -import com.intellij.openapi.project.Project; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.jetbrains.plugins.gradle.settings.GradleProjectSettings; -import org.jetbrains.plugins.gradle.settings.GradleSettings; -import org.jetbrains.plugins.gradle.settings.TestRunner; - -/** - * {@link GradleSettingsService} provides effective settings for linked gradle projects. - * - * @see GradleProjectSettings - * - * @author Vladislav.Soroka - */ -public class GradleSettingsService { - @NotNull - private final Project myProject; - - public GradleSettingsService(@NotNull Project project) { - myProject = project; - } - - public boolean isDelegatedBuildEnabled(@Nullable String gradleProjectPath) { - GradleProjectSettings projectSettings = gradleProjectPath == null - ? null : GradleSettings.getInstance(myProject).getLinkedProjectSettings(gradleProjectPath); - if (projectSettings == null) return false; - - return projectSettings.getDelegatedBuild(); - } - - @NotNull - public TestRunner getTestRunner(@Nullable String gradleProjectPath) { - GradleProjectSettings projectSettings = gradleProjectPath == null - ? null :GradleSettings.getInstance(myProject).getLinkedProjectSettings(gradleProjectPath); - if (projectSettings == null) return TestRunner.PLATFORM; - - return projectSettings.getTestRunner(); - } - - public static boolean isDelegatedBuildEnabled(@NotNull Module module) { - return getInstance(module.getProject()).isDelegatedBuildEnabled(ExternalSystemApiUtil.getExternalRootProjectPath(module)); - } - - @NotNull - public static TestRunner getTestRunner(@NotNull Module module) { - return getInstance(module.getProject()).getTestRunner(ExternalSystemApiUtil.getExternalRootProjectPath(module)); - } - - @NotNull - public static GradleSettingsService getInstance(@NotNull Project project) { - return ServiceManager.getService(project, GradleSettingsService.class); - } -} diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleProjectSettings.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleProjectSettings.java index 6dde304b174b..d07737b99759 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleProjectSettings.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleProjectSettings.java @@ -4,6 +4,8 @@ package org.jetbrains.plugins.gradle.settings; import com.intellij.openapi.externalSystem.service.execution.ExternalSystemJdkUtil; import com.intellij.openapi.externalSystem.settings.ExternalProjectSettings; import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil; +import com.intellij.openapi.module.Module; +import com.intellij.openapi.project.Project; import com.intellij.util.ObjectUtils; import com.intellij.util.SmartList; import com.intellij.util.ThreeState; @@ -13,7 +15,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.plugins.gradle.model.data.BuildParticipant; import org.jetbrains.plugins.gradle.service.GradleInstallationManager; -import org.jetbrains.plugins.gradle.service.settings.GradleSettingsService; import java.util.ArrayList; import java.util.List; @@ -22,8 +23,6 @@ import java.util.Optional; /** * {@link GradleProjectSettings} holds settings for the linked gradle project. * - * @see GradleSettingsService - * * @author Denis Zhdanov */ public class GradleProjectSettings extends ExternalProjectSettings { @@ -157,6 +156,18 @@ public class GradleProjectSettings extends ExternalProjectSettings { this.delegatedBuild = state; } + public static boolean isDelegatedBuildEnabled(@NotNull Project project, @Nullable String gradleProjectPath) { + GradleProjectSettings projectSettings = gradleProjectPath == null + ? null : GradleSettings.getInstance(project).getLinkedProjectSettings(gradleProjectPath); + if (projectSettings == null) return false; + + return projectSettings.getDelegatedBuild(); + } + + public static boolean isDelegatedBuildEnabled(@NotNull Module module) { + return isDelegatedBuildEnabled(module.getProject(), ExternalSystemApiUtil.getExternalRootProjectPath(module)); + } + /** * @return test runner option. */ @@ -182,6 +193,20 @@ public class GradleProjectSettings extends ExternalProjectSettings { this.testRunner = testRunner; } + @NotNull + public static TestRunner getTestRunner(@NotNull Project project, @Nullable String gradleProjectPath) { + GradleProjectSettings projectSettings = gradleProjectPath == null + ? null : GradleSettings.getInstance(project).getLinkedProjectSettings(gradleProjectPath); + if (projectSettings == null) return TestRunner.PLATFORM; + + return projectSettings.getTestRunner(); + } + + @NotNull + public static TestRunner getTestRunner(@NotNull Module module) { + return getTestRunner(module.getProject(), ExternalSystemApiUtil.getExternalRootProjectPath(module)); + } + @NotNull public GradleVersion resolveGradleVersion() { GradleVersion version = GradleInstallationManager.getGradleVersion(this); diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleSettings.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleSettings.java index 3724bba4cf47..95229350bdcc 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleSettings.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/settings/GradleSettings.java @@ -17,7 +17,6 @@ import com.intellij.util.xmlb.annotations.XCollection; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.plugins.gradle.config.DelegatingGradleSettingsListenerAdapter; -import org.jetbrains.plugins.gradle.service.settings.GradleSettingsService; import java.util.Collection; import java.util.Set; @@ -140,11 +139,11 @@ public class GradleSettings extends AbstractExternalSystemSettings