import org.sonar.api.resources.Language;
import org.sonar.api.resources.Languages;
import org.sonar.api.utils.MessageException;
-import org.sonar.batch.ProfileLoader;
import org.sonar.core.qualityprofile.db.QualityProfileDao;
import org.sonar.core.qualityprofile.db.QualityProfileDto;
import javax.annotation.CheckForNull;
+
import java.util.Collection;
import java.util.Map;
private final Map<String, QProfile> byLanguage;
public ModuleQProfiles(Settings settings, Languages languages, QualityProfileDao dao) {
- this(settings, languages, dao, new ProfileLoader[0]);
- }
-
- public ModuleQProfiles(Settings settings, Languages languages, QualityProfileDao dao, ProfileLoader[] loaders) {
ImmutableMap.Builder<String, QProfile> builder = ImmutableMap.builder();
- if (loaders.length == 0) {
- // not views plugin
-
- String defaultName = settings.getString("sonar.profile");
-
- for (Language language : languages.all()) {
- QProfile profile;
- if (StringUtils.isNotBlank(defaultName)) {
- profile = loadDefaultQProfile(dao, defaultName, language.getKey());
- } else {
- profile = loadQProfile(dao, settings, language.getKey());
- }
- if (profile != null) {
- LOG.info("Quality profile for {}: {}", profile.language(), profile.name());
- builder.put(profile.language(), profile);
- }
+ String defaultName = settings.getString("sonar.profile");
+
+ for (Language language : languages.all()) {
+ QProfile profile;
+ if (StringUtils.isNotBlank(defaultName)) {
+ profile = loadDefaultQProfile(dao, defaultName, language.getKey());
+ } else {
+ profile = loadQProfile(dao, settings, language.getKey());
+ }
+ if (profile != null) {
+ LOG.info("Quality profile for {}: {}", profile.language(), profile.name());
+ builder.put(profile.language(), profile);
}
}
byLanguage = builder.build();
import org.sonar.api.resources.Language;
import org.sonar.api.resources.Languages;
import org.sonar.api.utils.MessageException;
-import org.sonar.batch.ProfileLoader;
import org.sonar.core.persistence.AbstractDaoTestCase;
import org.sonar.core.qualityprofile.db.QualityProfileDao;
settings.setProperty("sonar.profile.abap", "Abap One");
settings.setProperty("sonar.profile.php", "Php One");
- ModuleQProfiles moduleQProfiles = new ModuleQProfiles(settings, languages, dao, new ProfileLoader[0]);
+ ModuleQProfiles moduleQProfiles = new ModuleQProfiles(settings, languages, dao);
List<ModuleQProfiles.QProfile> qProfiles = Lists.newArrayList(moduleQProfiles.findAll());
assertThat(qProfiles).hasSize(2);
settings.setProperty("sonar.profile", "Java Two");
settings.setProperty("sonar.profile.php", "Php One");
- ModuleQProfiles moduleQProfiles = new ModuleQProfiles(settings, languages, dao, new ProfileLoader[0]);
+ ModuleQProfiles moduleQProfiles = new ModuleQProfiles(settings, languages, dao);
List<ModuleQProfiles.QProfile> qProfiles = Lists.newArrayList(moduleQProfiles.findAll());
assertThat(qProfiles).hasSize(1);
settings.setProperty("sonar.profile.php", "Php One");
try {
- new ModuleQProfiles(settings, languages, dao, new ProfileLoader[0]);
+ new ModuleQProfiles(settings, languages, dao);
fail();
} catch (MessageException e) {
assertThat(e).hasMessage("Quality profile not found : 'Unknown' on language 'java'");