From 55825cb9babbbbbd685a2b7efbca0efc248de383 Mon Sep 17 00:00:00 2001 From: Amaury Levé Date: Wed, 27 Jun 2018 15:28:45 +0200 Subject: Update S4662: Rule should be parameterized (#92) --- .../org/sonar/css/plugin/rules/AtRuleNoUnknown.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'sonar-css-plugin/src/main/java/org/sonar/css') 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 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; + } } } -- cgit v1.2.3