From 9a9220777f8ce73da1f02ad4c6ab4e1a8978b5d4 Mon Sep 17 00:00:00 2001 From: Dennis Ushakov Date: Tue, 30 Sep 2014 20:00:41 +0400 Subject: [PATCH] show notification instead of error when parsing failed --- plugins/editorconfig/src/org/editorconfig/Utils.java | 2 +- .../configmanagement/EditorConfigIndentOptionsProvider.java | 3 +-- .../configmanagement/EditorSettingsManager.java | 2 +- .../org/editorconfig/configmanagement/EncodingManager.java | 2 +- .../editorconfig/configmanagement/LineEndingsManager.java | 2 +- .../plugincomponents/SettingsProviderComponent.java | 6 ++++-- 6 files changed, 9 insertions(+), 8 deletions(-) diff --git a/plugins/editorconfig/src/org/editorconfig/Utils.java b/plugins/editorconfig/src/org/editorconfig/Utils.java index d299a2055fcd..79c96b1b0e2a 100644 --- a/plugins/editorconfig/src/org/editorconfig/Utils.java +++ b/plugins/editorconfig/src/org/editorconfig/Utils.java @@ -23,7 +23,7 @@ public class Utils { } public static void invalidConfigMessage(Project project, String configValue, String configKey, String filePath) { - EditorConfigNotifier.getInstance().error(project, configValue, "\"" + configValue + "\" is not a valid value for " + configKey + " for file " + filePath); + EditorConfigNotifier.getInstance().error(project, configValue, "\"" + configValue + "\" is not a valid value" + (!configKey.isEmpty() ? " for " + configKey : "") + " for file " + filePath); } public static void appliedConfigMessage(Project project, String configValue, String configKey, String filePath) { diff --git a/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorConfigIndentOptionsProvider.java b/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorConfigIndentOptionsProvider.java index 6884b4bb1c93..141666c3b4b8 100644 --- a/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorConfigIndentOptionsProvider.java +++ b/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorConfigIndentOptionsProvider.java @@ -4,7 +4,6 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiFile; import com.intellij.psi.codeStyle.CodeStyleSettings; -import com.intellij.psi.codeStyle.CodeStyleSettingsManager; import com.intellij.psi.codeStyle.CommonCodeStyleSettings; import com.intellij.psi.codeStyle.FileIndentOptionsProvider; import org.editorconfig.Utils; @@ -37,7 +36,7 @@ public class EditorConfigIndentOptionsProvider extends FileIndentOptionsProvider // Get editorconfig settings final String filePath = file.getCanonicalPath(); final SettingsProviderComponent settingsProvider = SettingsProviderComponent.getInstance(); - final List outPairs = settingsProvider.getOutPairs(filePath); + final List outPairs = settingsProvider.getOutPairs(project, filePath); // Apply editorconfig settings for the current editor return applyCodeStyleSettings(project, outPairs, file); } diff --git a/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorSettingsManager.java b/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorSettingsManager.java index 9d2d89314b53..0f64ba5d4ea9 100644 --- a/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorSettingsManager.java +++ b/plugins/editorconfig/src/org/editorconfig/configmanagement/EditorSettingsManager.java @@ -61,7 +61,7 @@ public class EditorSettingsManager extends FileDocumentManagerAdapter { // Get editorconfig settings final String filePath = file.getCanonicalPath(); final SettingsProviderComponent settingsProvider = SettingsProviderComponent.getInstance(); - final List outPairs = settingsProvider.getOutPairs(filePath); + final List outPairs = settingsProvider.getOutPairs(myProject, filePath); // Apply trailing spaces setting final String trimTrailingWhitespace = Utils.configValueForKey(outPairs, trimTrailingWhitespaceKey); applyConfigValueToUserData(file, TrailingSpacesStripper.OVERRIDE_STRIP_TRAILING_SPACES_KEY, diff --git a/plugins/editorconfig/src/org/editorconfig/configmanagement/EncodingManager.java b/plugins/editorconfig/src/org/editorconfig/configmanagement/EncodingManager.java index f848b94d4460..c5574cce570f 100644 --- a/plugins/editorconfig/src/org/editorconfig/configmanagement/EncodingManager.java +++ b/plugins/editorconfig/src/org/editorconfig/configmanagement/EncodingManager.java @@ -59,7 +59,7 @@ public class EncodingManager extends FileDocumentManagerAdapter { isApplyingSettings = true; try { final String filePath = file.getCanonicalPath(); - final List outPairs = SettingsProviderComponent.getInstance().getOutPairs(filePath); + final List outPairs = SettingsProviderComponent.getInstance().getOutPairs(myProject, filePath); final EncodingProjectManager encodingProjectManager = EncodingProjectManager.getInstance(myProject); final String charset = Utils.configValueForKey(outPairs, charsetKey); if (!charset.isEmpty()) { diff --git a/plugins/editorconfig/src/org/editorconfig/configmanagement/LineEndingsManager.java b/plugins/editorconfig/src/org/editorconfig/configmanagement/LineEndingsManager.java index 45592b54603b..0577c36f47b1 100644 --- a/plugins/editorconfig/src/org/editorconfig/configmanagement/LineEndingsManager.java +++ b/plugins/editorconfig/src/org/editorconfig/configmanagement/LineEndingsManager.java @@ -71,7 +71,7 @@ public class LineEndingsManager extends FileDocumentManagerAdapter { if (!Utils.isEnabled(CodeStyleSettingsManager.getInstance(myProject).getCurrentSettings())) return; final String filePath = file.getCanonicalPath(); - final List outPairs = SettingsProviderComponent.getInstance().getOutPairs(filePath); + final List outPairs = SettingsProviderComponent.getInstance().getOutPairs(myProject, filePath); final String lineEndings = Utils.configValueForKey(outPairs, lineEndingsKey); if (!lineEndings.isEmpty()) { try { diff --git a/plugins/editorconfig/src/org/editorconfig/plugincomponents/SettingsProviderComponent.java b/plugins/editorconfig/src/org/editorconfig/plugincomponents/SettingsProviderComponent.java index edd74ebdb22d..f04970b4a92f 100644 --- a/plugins/editorconfig/src/org/editorconfig/plugincomponents/SettingsProviderComponent.java +++ b/plugins/editorconfig/src/org/editorconfig/plugincomponents/SettingsProviderComponent.java @@ -3,6 +3,8 @@ package org.editorconfig.plugincomponents; import com.intellij.openapi.components.ApplicationComponent; import com.intellij.openapi.components.ServiceManager; import com.intellij.openapi.diagnostic.Logger; +import com.intellij.openapi.project.Project; +import org.editorconfig.Utils; import org.editorconfig.core.EditorConfig; import org.editorconfig.core.EditorConfig.OutPair; import org.editorconfig.core.EditorConfigException; @@ -24,14 +26,14 @@ public class SettingsProviderComponent implements ApplicationComponent { return ServiceManager.getService(SettingsProviderComponent.class); } - public List getOutPairs(String filePath) { + public List getOutPairs(Project project, String filePath) { final List outPairs; try { outPairs = editorConfig.getProperties(filePath); return outPairs; } catch (EditorConfigException error) { - LOG.error(error); + Utils.invalidConfigMessage(project, error.getMessage(), "", filePath); return new ArrayList(); } }