diff options
Diffstat (limited to 'sonar-plugin-api')
-rw-r--r-- | sonar-plugin-api/src/main/java/org/sonar/api/resources/Language.java | 7 | ||||
-rw-r--r-- | sonar-plugin-api/src/test/java/org/sonar/api/resources/AbstractLanguageTest.java | 7 |
2 files changed, 13 insertions, 1 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/resources/Language.java b/sonar-plugin-api/src/main/java/org/sonar/api/resources/Language.java index 18c4f94781e..1dc5e9145e5 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/resources/Language.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/resources/Language.java @@ -53,4 +53,11 @@ public interface Language { */ String[] getFileSuffixes(); + /** + * Whether all files identified with this language should be sent to SonarQube, even if no data is reported for them + * @since 9.3 + */ + default boolean publishAllFiles() { + return true; + } } diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/resources/AbstractLanguageTest.java b/sonar-plugin-api/src/test/java/org/sonar/api/resources/AbstractLanguageTest.java index d1fd1d782de..73256aace1c 100644 --- a/sonar-plugin-api/src/test/java/org/sonar/api/resources/AbstractLanguageTest.java +++ b/sonar-plugin-api/src/test/java/org/sonar/api/resources/AbstractLanguageTest.java @@ -52,6 +52,11 @@ public class AbstractLanguageTest { public String[] getFileSuffixes() { return lang1.getFileSuffixes(); } + + @Override + public boolean publishAllFiles() { + return true; + } })).isTrue(); assertThat(lang1) @@ -61,7 +66,7 @@ public class AbstractLanguageTest { @Test public void should_not_define_language_with_too_long_key() { - assertThatThrownBy(() -> new TooLongKeyLanguage()) + assertThatThrownBy(TooLongKeyLanguage::new) .isInstanceOf(IllegalArgumentException.class) .hasMessage("The following language key exceeds 20 characters: 'aKeyWhichIsVeryVeryVeryVeryVeryLong'"); } |