diff options
author | Matteo Mara <matteo.mara@sonarsource.com> | 2023-12-18 16:26:38 +0100 |
---|---|---|
committer | sonartech <sonartech@sonarsource.com> | 2024-01-04 20:02:48 +0000 |
commit | dab9f39a5046d1dfe31e685509085f4079487d52 (patch) | |
tree | 978d1bf9708c2031eb0261f4b8ca94940025efff /sonar-scanner-engine | |
parent | f8465c0d33ceb835c92f0b24e7842ba96c7604e0 (diff) | |
download | sonarqube-dab9f39a5046d1dfe31e685509085f4079487d52.tar.gz sonarqube-dab9f39a5046d1dfe31e685509085f4079487d52.zip |
SONAR-21195 Fix issues raised by SonarQube
Diffstat (limited to 'sonar-scanner-engine')
5 files changed, 28 insertions, 23 deletions
diff --git a/sonar-scanner-engine/src/it/java/org/sonar/scanner/mediumtest/fs/FileSystemMediumIT.java b/sonar-scanner-engine/src/it/java/org/sonar/scanner/mediumtest/fs/FileSystemMediumIT.java index 1b3ac84f4dc..0229752156f 100644 --- a/sonar-scanner-engine/src/it/java/org/sonar/scanner/mediumtest/fs/FileSystemMediumIT.java +++ b/sonar-scanner-engine/src/it/java/org/sonar/scanner/mediumtest/fs/FileSystemMediumIT.java @@ -133,7 +133,7 @@ public class FileSystemMediumIT { .put("sonar.sources", "src") .build()) .execute()) - .isInstanceOf(MessageException.class); + .isInstanceOf(MessageException.class); } @Test @@ -695,8 +695,8 @@ public class FileSystemMediumIT { .put("sonar.sources", "src,src/sample.xoo") .build()) .execute()) - .isInstanceOf(MessageException.class) - .hasMessage("File src/sample.xoo can't be indexed twice. Please check that inclusion/exclusion patterns produce disjoint sets for main and test files"); + .isInstanceOf(MessageException.class) + .hasMessage("File src/sample.xoo can't be indexed twice. Please check that inclusion/exclusion patterns produce disjoint sets for main and test files"); } // SONAR-9574 @@ -714,8 +714,8 @@ public class FileSystemMediumIT { .put("module1.sonar.sources", "src") .build()) .execute()) - .isInstanceOf(MessageException.class) - .hasMessage("File module1/src/sample.xoo can't be indexed twice. Please check that inclusion/exclusion patterns produce disjoint sets for main and test files"); + .isInstanceOf(MessageException.class) + .hasMessage("File module1/src/sample.xoo can't be indexed twice. Please check that inclusion/exclusion patterns produce disjoint sets for main and test files"); } // SONAR-5330 @@ -870,7 +870,7 @@ public class FileSystemMediumIT { File srcDir = new File(baseDir, "src"); srcDir.mkdir(); - tester.addLanguage("xoo3", "xoo3",false, ".xoo3"); + tester.addLanguage("xoo3", "xoo3", false, ".xoo3"); writeFile(srcDir, "sample.xoo3", "Sample xoo\ncontent"); writeFile(srcDir, "sample2.xoo3", "Sample xoo 2\ncontent"); @@ -1236,7 +1236,7 @@ public class FileSystemMediumIT { .build()) .execute(); - assertAnalysedFiles(result, "src/srcSubDir/srcSub.xoo"); + assertAnalysedFiles(result, "src/srcSubDir/srcSub.xoo"); } @Test diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/bootstrap/SpringScannerContainer.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/bootstrap/SpringScannerContainer.java index d7cecd16ed3..efee457d5a1 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/bootstrap/SpringScannerContainer.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/bootstrap/SpringScannerContainer.java @@ -330,10 +330,10 @@ public class SpringScannerContainer extends SpringComponentContainer { }); BranchConfiguration branchConfig = getComponentByType(BranchConfiguration.class); - if (branchConfig.branchType() == BranchType.PULL_REQUEST) { + if (branchConfig.branchType() == BranchType.PULL_REQUEST && LOG.isInfoEnabled()) { LOG.info("Pull request {} for merge into {} from {}", branchConfig.pullRequestKey(), pullRequestBaseToDisplayName(branchConfig.targetBranchName()), branchConfig.branchName()); - } else if (branchConfig.branchName() != null) { + } else if (branchConfig.branchName() != null && LOG.isInfoEnabled()) { LOG.info("Branch name: {}", branchConfig.branchName()); } diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/repository/language/DefaultLanguagesRepository.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/repository/language/DefaultLanguagesRepository.java index 607587950b6..0dd80451fa2 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/repository/language/DefaultLanguagesRepository.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/repository/language/DefaultLanguagesRepository.java @@ -30,6 +30,7 @@ import java.util.stream.Collectors; import javax.annotation.CheckForNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.annotation.concurrent.Immutable; import org.sonar.api.Startable; import org.sonar.api.config.Configuration; import org.sonar.api.resources.Languages; @@ -40,6 +41,7 @@ import org.sonarqube.ws.client.GetRequest; * Languages repository using {@link Languages} * @since 4.4 */ +@Immutable public class DefaultLanguagesRepository implements LanguagesRepository, Startable { private static final Logger LOG = LoggerFactory.getLogger(DefaultLanguagesRepository.class); private static final String LANGUAGES_WS_URL = "/api/languages/list"; @@ -75,9 +77,8 @@ public class DefaultLanguagesRepository implements LanguagesRepository, Startabl } private Language populateFileSuffixesAndPatterns(SupportedLanguageDto lang) { - String propertyFragment = PROPERTY_FRAGMENT_MAP.getOrDefault(lang.getKey(), lang.getKey()); - lang.setFileSuffixes(properties.getStringArray(String.format("sonar.%s.file.suffixes", propertyFragment))); - lang.setFilenamePatterns(properties.getStringArray(String.format("sonar.%s.file.patterns", propertyFragment))); + lang.setFileSuffixes(getFileSuffixes(lang.getKey())); + lang.setFilenamePatterns(getFilenamePatterns(lang.getKey())); if (lang.filenamePatterns() == null && lang.getFileSuffixes() == null) { LOG.debug("Language '{}' cannot be detected as it has neither suffixes nor patterns.", lang.getName()); } @@ -85,7 +86,15 @@ public class DefaultLanguagesRepository implements LanguagesRepository, Startabl } private String[] getFileSuffixes(String languageKey) { - String propName = String.format("sonar.%s.file.suffixes", PROPERTY_FRAGMENT_MAP.getOrDefault(languageKey, languageKey)); + return getPropertyForLanguage("sonar.%s.file.suffixes", languageKey); + } + + private String[] getFilenamePatterns(String languageKey) { + return getPropertyForLanguage("sonar.%s.file.patterns", languageKey); + } + + private String[] getPropertyForLanguage(String propertyPattern, String languageKey) { + String propName = String.format(propertyPattern, PROPERTY_FRAGMENT_MAP.getOrDefault(languageKey, languageKey)); return properties.getStringArray(propName); } diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/DirectoryFileVisitor.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/DirectoryFileVisitor.java index 57720692eb0..ea0bacb9a59 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/DirectoryFileVisitor.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/DirectoryFileVisitor.java @@ -47,7 +47,8 @@ public class DirectoryFileVisitor implements FileVisitor<Path> { private final InputModuleHierarchy inputModuleHierarchy; private final InputFile.Type type; - DirectoryFileVisitor(FileVisitAction fileVisitAction, DefaultInputModule module, ModuleExclusionFilters moduleExclusionFilters, InputModuleHierarchy inputModuleHierarchy, InputFile.Type type) { + DirectoryFileVisitor(FileVisitAction fileVisitAction, DefaultInputModule module, ModuleExclusionFilters moduleExclusionFilters, + InputModuleHierarchy inputModuleHierarchy, InputFile.Type type) { this.fileVisitAction = fileVisitAction; this.module = module; this.moduleExclusionFilters = moduleExclusionFilters; diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/ProjectFilePreprocessor.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/ProjectFilePreprocessor.java index 31a467fd5ce..4f2b9570860 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/ProjectFilePreprocessor.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/ProjectFilePreprocessor.java @@ -54,7 +54,6 @@ import static java.util.Collections.singletonList; public class ProjectFilePreprocessor { private static final Logger LOG = LoggerFactory.getLogger(ProjectFilePreprocessor.class); - private static final String TELEMETRY_STEP_NAME = "file.preprocessing"; private final AnalysisWarnings analysisWarnings; private final IgnoreCommand ignoreCommand; @@ -113,17 +112,13 @@ public class ProjectFilePreprocessor { pluralizeWithCount("preprocessed file", totalFilesPreprocessed))); int excludedFileByPatternCount = exclusionCounter.getByPatternsCount(); - if (projectExclusionFilters.hasPattern() || excludedFileByPatternCount > 0) { - if (LOG.isInfoEnabled()) { - LOG.info("{} ignored because of inclusion/exclusion patterns", pluralizeWithCount("file", excludedFileByPatternCount)); - } + if ((projectExclusionFilters.hasPattern() || excludedFileByPatternCount > 0) && LOG.isInfoEnabled()) { + LOG.info("{} ignored because of inclusion/exclusion patterns", pluralizeWithCount("file", excludedFileByPatternCount)); } int excludedFileByScmCount = exclusionCounter.getByScmCount(); - if (useScmExclusion) { - if (LOG.isInfoEnabled()) { - LOG.info("{} ignored because of scm ignore settings", pluralizeWithCount("file", excludedFileByScmCount)); - } + if (useScmExclusion && LOG.isInfoEnabled()) { + LOG.info("{} ignored because of scm ignore settings", pluralizeWithCount("file", excludedFileByScmCount)); } } |