From: Duarte Meneses Date: Tue, 10 Apr 2018 13:41:07 +0000 (+0200) Subject: SONAR-10543 Fix mandatory fields X-Git-Tag: 7.5~1325 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=29c541dc4886e8f5b1023401caf4144847b20a7b;p=sonarqube.git SONAR-10543 Fix mandatory fields --- diff --git a/plugins/sonar-xoo-plugin/src/main/java/org/sonar/xoo/rule/OneExternalIssuePerLineSensor.java b/plugins/sonar-xoo-plugin/src/main/java/org/sonar/xoo/rule/OneExternalIssuePerLineSensor.java index 4dbf744243b..e47ddd4ef60 100644 --- a/plugins/sonar-xoo-plugin/src/main/java/org/sonar/xoo/rule/OneExternalIssuePerLineSensor.java +++ b/plugins/sonar-xoo-plugin/src/main/java/org/sonar/xoo/rule/OneExternalIssuePerLineSensor.java @@ -40,11 +40,12 @@ public class OneExternalIssuePerLineSensor implements Sensor { public static final Long EFFORT = 10l; public static final RuleType type = RuleType.BUG; public static final String ACTIVATE_EXTERNAL_ISSUES = "sonar.oneExternalIssuePerLine.activate"; + private static final String NAME = "One External Issue Per Line"; @Override public void describe(SensorDescriptor descriptor) { descriptor - .name("One External Issue Per Line") + .name(NAME) .onlyOnLanguages(Xoo.KEY, Xoo2.KEY) .onlyWhenConfiguration(c -> c.getBoolean(ACTIVATE_EXTERNAL_ISSUES).orElse(false)); } @@ -73,6 +74,8 @@ public class OneExternalIssuePerLineSensor implements Sensor { .on(file) .at(file.selectLine(line)) .message("This issue is generated on each line")) + .ruleTitle(NAME) + .descriptionUrl("http://oneexternalissueperline.xoo.net") .severity(Severity.valueOf(SEVERITY)) .remediationEffort(EFFORT) .type(type) diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/TrackerRawInputFactory.java b/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/TrackerRawInputFactory.java index 0bc49a026d6..0154e69b055 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/TrackerRawInputFactory.java +++ b/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/TrackerRawInputFactory.java @@ -219,7 +219,7 @@ public class TrackerRawInputFactory { .setType(toRuleType(reportIssue.getType())) .setKey(RuleKey.of(RuleKey.EXTERNAL_RULE_REPO_PREFIX + reportIssue.getRuleRepository(), reportIssue.getRuleKey())) .setPluginKey(reportIssue.getRuleRepository()) - .setName(reportIssue.getRuleName()); + .setName(reportIssue.getRuleTitle()); if (reportIssue.getSeverity() != Severity.UNSET_SEVERITY) { builder.setSeverity(reportIssue.getSeverity().name()); diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/ExternalIssue.java b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/ExternalIssue.java index cdc7d6df2f2..ec72c49de1a 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/ExternalIssue.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/ExternalIssue.java @@ -48,4 +48,9 @@ public interface ExternalIssue extends IIssue { * Type of the issue. */ RuleType type(); + + /** + * Short description of the rule. Should not depend on the issue being raised. + */ + String ruleTitle(); } diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/NewExternalIssue.java b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/NewExternalIssue.java index 2a3f41b4f60..8049c44e1dc 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/NewExternalIssue.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/NewExternalIssue.java @@ -79,6 +79,11 @@ public interface NewExternalIssue { */ NewIssueLocation newLocation(); + /** + * Add the description of the rule. Should not depend on the issue being raised. + */ + NewExternalIssue ruleTitle(String title); + /** * Save the issue. If rule key is unknown or rule not enabled in the current quality profile then a warning is logged but no exception * is thrown. diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/internal/DefaultExternalIssue.java b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/internal/DefaultExternalIssue.java index de3eed8b4e4..6bbf40078e7 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/internal/DefaultExternalIssue.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/internal/DefaultExternalIssue.java @@ -36,6 +36,7 @@ public class DefaultExternalIssue extends AbstractDefaultIssue