diff options
author | Simon Brandhof <simon.brandhof@gmail.com> | 2014-02-18 11:41:58 +0100 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@gmail.com> | 2014-02-18 11:42:07 +0100 |
commit | cc0ddbfb90f0d5b44cb0fa3e087f1ef1a5f813ec (patch) | |
tree | 6b553f2a746362279fa7cec9b3d1e3b7d5584ed7 /sonar-deprecated/src/main/java | |
parent | 295cd390301a169063c78b6e3f39d8bf1844517b (diff) | |
download | sonarqube-cc0ddbfb90f0d5b44cb0fa3e087f1ef1a5f813ec.tar.gz sonarqube-cc0ddbfb90f0d5b44cb0fa3e087f1ef1a5f813ec.zip |
SONAR-4326 support tags in deprecated rule API
Diffstat (limited to 'sonar-deprecated/src/main/java')
-rw-r--r-- | sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java | 1 | ||||
-rw-r--r-- | sonar-deprecated/src/main/java/org/sonar/api/rules/XMLRuleParser.java | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java b/sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java index f800e45c045..a5ce13160d8 100644 --- a/sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java +++ b/sonar-deprecated/src/main/java/org/sonar/api/rules/AnnotationRuleParser.java @@ -72,6 +72,7 @@ public final class AnnotationRuleParser implements ServerComponent { rule.setSeverity(RulePriority.fromCheckPriority(ruleAnnotation.priority())); rule.setCardinality(ruleAnnotation.cardinality()); rule.setStatus(ruleAnnotation.status()); + rule.setTags(ruleAnnotation.tags()); List<Field> fields = FieldUtils2.getFields(clazz, true); for (Field field : fields) { diff --git a/sonar-deprecated/src/main/java/org/sonar/api/rules/XMLRuleParser.java b/sonar-deprecated/src/main/java/org/sonar/api/rules/XMLRuleParser.java index 17a60afeb74..fc2b7f7a0cb 100644 --- a/sonar-deprecated/src/main/java/org/sonar/api/rules/XMLRuleParser.java +++ b/sonar-deprecated/src/main/java/org/sonar/api/rules/XMLRuleParser.java @@ -21,6 +21,7 @@ package org.sonar.api.rules; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Strings; +import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.io.Closeables; import org.apache.commons.io.FileUtils; @@ -126,6 +127,7 @@ public final class XMLRuleParser implements ServerComponent { rule.setSeverity(RulePriority.valueOf(StringUtils.trim(priorityAttribute))); } + List<String> tags = Lists.newArrayList(); SMInputCursor cursor = ruleC.childElementCursor(); while (cursor.getNext() != null) { @@ -154,11 +156,15 @@ public final class XMLRuleParser implements ServerComponent { } else if (StringUtils.equalsIgnoreCase("param", nodeName)) { processParameter(rule, cursor); + + } else if (StringUtils.equalsIgnoreCase("tag", nodeName)) { + tags.add(StringUtils.trim(cursor.collectDescendantText(false))); } } if (Strings.isNullOrEmpty(rule.getKey())) { throw new SonarException("Node <key> is missing in <rule>"); } + rule.setTags(tags.toArray(new String[tags.size()])); } private static void processParameter(Rule rule, SMInputCursor ruleC) throws XMLStreamException { |