aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-css-plugin/src/main
diff options
context:
space:
mode:
authorAmaury Levé2018-06-27 15:28:45 +0200
committerGitHub2018-06-27 15:28:45 +0200
commit55825cb9babbbbbd685a2b7efbca0efc248de383 (patch)
tree9e8cd834eda28d2c73c38766626d68560127670d /sonar-css-plugin/src/main
parentcea9681a811f5bced88e443d5fda14ba15396343 (diff)
downloadsonar-css-55825cb9babbbbbd685a2b7efbca0efc248de383.tar.bz2
Update S4662: Rule should be parameterized (#92)
Diffstat (limited to 'sonar-css-plugin/src/main')
-rw-r--r--sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/AtRuleNoUnknown.java19
1 files changed, 16 insertions, 3 deletions
diff --git a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/AtRuleNoUnknown.java b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/AtRuleNoUnknown.java
index 0683f35..756d822 100644
--- a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/AtRuleNoUnknown.java
+++ b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/AtRuleNoUnknown.java
@@ -20,12 +20,20 @@
package org.sonar.css.plugin.rules;
import java.util.Arrays;
-import java.util.List;
import org.sonar.check.Rule;
+import org.sonar.check.RuleProperty;
@Rule(key = "S4662")
public class AtRuleNoUnknown implements CssRule {
+ private static final String DEFAULT_IGNORED_AT_RULES = "content,debug,each,else,for,function,if,include,mixin,return,while";
+
+ @RuleProperty(
+ key = "ignoreAtRules",
+ description = "Comma-separated list of \"at-rules\" to consider as valid.",
+ defaultValue = "" + DEFAULT_IGNORED_AT_RULES)
+ String ignoredAtRules = DEFAULT_IGNORED_AT_RULES;
+
@Override
public String stylelintKey() {
return "at-rule-no-unknown";
@@ -33,10 +41,15 @@ public class AtRuleNoUnknown implements CssRule {
@Override
public Object stylelintOptions() {
- return Arrays.asList(true, new StylelintIgnoreOption());
+ return Arrays.asList(true, new StylelintIgnoreOption(ignoredAtRules.split(",")));
}
private static class StylelintIgnoreOption {
- private final List<String> ignoreAtRules = Arrays.asList("debug", "each", "else", "for", "function", "if", "include", "mixin", "return", "while");
+ // Used by GSON serialization
+ private final String[] ignoreAtRules;
+
+ StylelintIgnoreOption(String[] ignoreAtRules) {
+ this.ignoreAtRules = ignoreAtRules;
+ }
}
}