void (@NotNull GradleProjectSettings old, @NotNull GradleProjectSettings current) { if (!Objects.equals(old.getGradleHome(), current.getGradleHome())) { getPublisher().onGradleHomeChange(old.getGradleHome(), current.getGradleHome(), current.getExternalProjectPath()); } if (!Objects.equals(old.getGradleJvm(), current.getGradleJvm())) { getPublisher().onGradleJvmChange(old.getGradleJvm(), current.getGradleJvm(), current.getExternalProjectPath()); } if (old.getDistributionType() != current.getDistributionType()) { getPublisher().onGradleDistributionTypeChange(current.getDistributionType(), current.getExternalProjectPath()); } if (old.isResolveModulePerSourceSet() != current.isResolveModulePerSourceSet()) { ExternalProjectsManager.getInstance(getProject()).getExternalProjectsWatcher().markDirty(current.getExternalProjectPath()); } if (!Comparing.equal(old.getDelegatedBuild(), current.getDelegatedBuild())) { boolean delegatedBuild = GradleProjectSettings.isDelegatedBuildEnabled(getProject(), current.getExternalProjectPath()); getPublisher().onBuildDelegationChange(delegatedBuild, current.getExternalProjectPath()); } if (!Comparing.equal(old.getTestRunner(), current.getTestRunner())) { TestRunner testRunner = GradleProjectSettings.getTestRunner(getProject(), current.getExternalProjectPath()); getPublisher().onTestRunnerChange(testRunner, current.getExternalProjectPath()); } }