diff options
author | Matteo Mara <matteo.mara@sonarsource.com> | 2023-12-18 16:26:38 +0100 |
---|---|---|
committer | sonartech <sonartech@sonarsource.com> | 2023-12-21 20:02:33 +0000 |
commit | ac97b614d4746f683712851488d88952e06c59fc (patch) | |
tree | ebdc34f49565eeefa4f7324107d276a7265e14c3 /sonar-scanner-engine | |
parent | 4d04d1b26abaf409d0c68b97f0cac05e251ff16d (diff) | |
download | sonarqube-ac97b614d4746f683712851488d88952e06c59fc.tar.gz sonarqube-ac97b614d4746f683712851488d88952e06c59fc.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 66f35f9cfa8..cfb6d545458 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 38972c95071..104e6958eaa 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 @@ -328,10 +328,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 09007278bd1..c3505ebbfbf 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 eec0ed9c8d0..e99b966d6c8 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 54d4f2b8d6c..4fd5eda7a25 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)); } } |