aboutsummaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorJulien HENRY <julien.henry@sonarsource.com>2020-03-19 12:41:40 +0100
committersonartech <sonartech@sonarsource.com>2020-03-23 20:03:41 +0000
commita5e56c8d403ba0bfdb36e94acb8def5ceb065524 (patch)
tree184bce441b640428b2bc3f1bb6e176e9f8a2d6cd /server
parent0c8d18b4ed3e08536eef559153c62fb80cffa253 (diff)
downloadsonarqube-a5e56c8d403ba0bfdb36e94acb8def5ceb065524.tar.gz
sonarqube-a5e56c8d403ba0bfdb36e94acb8def5ceb065524.zip
SONAR-13214 Remove org.sonar.api.config.Settings from the API
Diffstat (limited to 'server')
-rw-r--r--server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapContextFactory.java24
-rw-r--r--server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapGroupMapping.java10
-rw-r--r--server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapSettingsManager.java38
-rw-r--r--server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapUserMapping.java14
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/KerberosTest.java4
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAuthenticatorTest.java10
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAutoDiscoveryWarningLogTest.java8
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupMappingTest.java4
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupsProviderTest.java12
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapRealmTest.java4
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapReferralsTest.java6
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSearchTest.java2
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSettingsManagerTest.java23
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUserMappingTest.java6
-rw-r--r--server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUsersProviderTest.java6
-rw-r--r--server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/analysis/ProjectConfigurationFactory.java2
-rw-r--r--server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/filter/IssueFilterTest.java2
-rw-r--r--server/sonar-ce-task/src/main/java/org/sonar/ce/task/setting/SettingsLoader.java3
-rw-r--r--server/sonar-db-core/src/main/java/org/sonar/db/DefaultDatabase.java2
-rw-r--r--server/sonar-db-core/src/testFixtures/java/org/sonar/db/CoreTestDb.java2
-rw-r--r--server/sonar-db-dao/src/test/java/org/sonar/db/createdb/CreateDb.java2
-rw-r--r--server/sonar-db-dao/src/testFixtures/java/org/sonar/db/OrchestratorSettingsUtils.java2
-rw-r--r--server/sonar-db-dao/src/testFixtures/java/org/sonar/db/SQDatabase.java2
-rw-r--r--server/sonar-db-dao/src/testFixtures/java/org/sonar/db/TestDbImpl.java2
-rw-r--r--server/sonar-server-common/src/main/java/org/sonar/server/config/ConfigurationProvider.java2
-rw-r--r--server/sonar-server-common/src/main/java/org/sonar/server/setting/ChildSettings.java2
-rw-r--r--server/sonar-server-common/src/main/java/org/sonar/server/setting/ThreadLocalSettings.java4
-rw-r--r--server/sonar-webserver-api/src/main/java/org/sonar/server/setting/ProjectConfigurationLoaderImpl.java2
-rw-r--r--server/sonar-webserver-core/src/main/java/org/sonar/server/platform/PersistentSettings.java2
-rw-r--r--server/sonar-webserver-core/src/main/java/org/sonar/server/platform/monitoring/SettingsSection.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/notification/NotificationMediumTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/PersistentSettingsTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java2
-rw-r--r--server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/CheckSecretKeyAction.java2
-rw-r--r--server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/EncryptAction.java4
-rw-r--r--server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/GenerateSecretKeyAction.java2
-rw-r--r--server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/CheckSecretKeyActionTest.java2
-rw-r--r--server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/EncryptActionTest.java2
-rw-r--r--server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/GenerateSecretKeyActionTest.java2
39 files changed, 110 insertions, 114 deletions
diff --git a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapContextFactory.java b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapContextFactory.java
index 40aa4810cbe..b77466214f2 100644
--- a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapContextFactory.java
+++ b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapContextFactory.java
@@ -35,7 +35,6 @@ import javax.security.auth.login.Configuration;
import javax.security.auth.login.LoginContext;
import javax.security.auth.login.LoginException;
import org.apache.commons.lang.StringUtils;
-import org.sonar.api.config.Settings;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
@@ -75,15 +74,15 @@ public class LdapContextFactory {
private final String realm;
private final String referral;
- public LdapContextFactory(Settings settings, String settingsPrefix, String ldapUrl) {
- this.authentication = StringUtils.defaultString(settings.getString(settingsPrefix + ".authentication"), DEFAULT_AUTHENTICATION);
- this.factory = StringUtils.defaultString(settings.getString(settingsPrefix + ".contextFactoryClass"), DEFAULT_FACTORY);
- this.realm = settings.getString(settingsPrefix + ".realm");
+ public LdapContextFactory(org.sonar.api.config.Configuration config, String settingsPrefix, String ldapUrl) {
+ this.authentication = StringUtils.defaultString(config.get(settingsPrefix + ".authentication").orElse(null), DEFAULT_AUTHENTICATION);
+ this.factory = StringUtils.defaultString(config.get(settingsPrefix + ".contextFactoryClass").orElse(null), DEFAULT_FACTORY);
+ this.realm = config.get(settingsPrefix + ".realm").orElse(null);
this.providerUrl = ldapUrl;
- this.startTLS = settings.getBoolean(settingsPrefix + ".StartTLS");
- this.username = settings.getString(settingsPrefix + ".bindDn");
- this.password = settings.getString(settingsPrefix + ".bindPassword");
- this.referral = getReferralsMode(settings, settingsPrefix + ".followReferrals");
+ this.startTLS = config.getBoolean(settingsPrefix + ".StartTLS").orElse(false);
+ this.username = config.get(settingsPrefix + ".bindDn").orElse(null);
+ this.password = config.get(settingsPrefix + ".bindPassword").orElse(null);
+ this.referral = getReferralsMode(config, settingsPrefix + ".followReferrals");
}
/**
@@ -224,12 +223,9 @@ public class LdapContextFactory {
return referral;
}
- private static String getReferralsMode(Settings settings, String followReferralsSettingKey) {
- if (settings.hasKey(followReferralsSettingKey)) {
- return settings.getBoolean(followReferralsSettingKey) ? REFERRALS_FOLLOW_MODE : REFERRALS_IGNORE_MODE;
- }
+ private static String getReferralsMode(org.sonar.api.config.Configuration config, String followReferralsSettingKey) {
// By default follow referrals
- return REFERRALS_FOLLOW_MODE;
+ return config.getBoolean(followReferralsSettingKey).orElse(true) ? REFERRALS_FOLLOW_MODE : REFERRALS_IGNORE_MODE;
}
@Override
diff --git a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapGroupMapping.java b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapGroupMapping.java
index 932d8f588b1..8387fd00ce0 100644
--- a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapGroupMapping.java
+++ b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapGroupMapping.java
@@ -24,7 +24,7 @@ import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.SearchResult;
import org.apache.commons.lang.StringUtils;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.Configuration;
/**
* @author Evgeny Mandrikov
@@ -42,11 +42,11 @@ public class LdapGroupMapping {
/**
* Constructs mapping from Sonar settings.
*/
- public LdapGroupMapping(Settings settings, String settingsPrefix) {
- this.baseDn = settings.getString(settingsPrefix + ".group.baseDn");
- this.idAttribute = StringUtils.defaultString(settings.getString(settingsPrefix + ".group.idAttribute"), DEFAULT_ID_ATTRIBUTE);
+ public LdapGroupMapping(Configuration config, String settingsPrefix) {
+ this.baseDn = config.get(settingsPrefix + ".group.baseDn").orElse(null);
+ this.idAttribute = StringUtils.defaultString(config.get(settingsPrefix + ".group.idAttribute").orElse(null), DEFAULT_ID_ATTRIBUTE);
- String req = StringUtils.defaultString(settings.getString(settingsPrefix + ".group.request"), DEFAULT_REQUEST);
+ String req = StringUtils.defaultString(config.get(settingsPrefix + ".group.request").orElse(null), DEFAULT_REQUEST);
this.requiredUserAttributes = StringUtils.substringsBetween(req, "{", "}");
for (int i = 0; i < requiredUserAttributes.length; i++) {
req = StringUtils.replace(req, "{" + requiredUserAttributes[i] + "}", "{" + i + "}");
diff --git a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapSettingsManager.java b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapSettingsManager.java
index 953050547e8..caa8d55d301 100644
--- a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapSettingsManager.java
+++ b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapSettingsManager.java
@@ -23,7 +23,7 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.Configuration;
import org.sonar.api.server.ServerSide;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
@@ -42,7 +42,7 @@ public class LdapSettingsManager {
private static final String LDAP_SERVERS_PROPERTY = "ldap.servers";
private static final String LDAP_PROPERTY_PREFIX = "ldap";
private static final String DEFAULT_LDAP_SERVER_KEY = "<default>";
- private final Settings settings;
+ private final Configuration config;
private final LdapAutodiscovery ldapAutodiscovery;
private Map<String, LdapUserMapping> userMappings = null;
private Map<String, LdapGroupMapping> groupMappings = null;
@@ -51,10 +51,10 @@ public class LdapSettingsManager {
/**
* Create an instance of the settings manager.
*
- * @param settings The settings to use.
+ * @param config The config to use.
*/
- public LdapSettingsManager(Settings settings, LdapAutodiscovery ldapAutodiscovery) {
- this.settings = settings;
+ public LdapSettingsManager(Configuration config, LdapAutodiscovery ldapAutodiscovery) {
+ this.config = config;
this.ldapAutodiscovery = ldapAutodiscovery;
}
@@ -68,10 +68,10 @@ public class LdapSettingsManager {
if (userMappings == null) {
// Use linked hash map to preserve order
userMappings = new LinkedHashMap<>();
- String[] serverKeys = settings.getStringArray(LDAP_SERVERS_PROPERTY);
+ String[] serverKeys = config.getStringArray(LDAP_SERVERS_PROPERTY);
if (serverKeys.length > 0) {
for (String serverKey : serverKeys) {
- LdapUserMapping userMapping = new LdapUserMapping(settings, LDAP_PROPERTY_PREFIX + "." + serverKey);
+ LdapUserMapping userMapping = new LdapUserMapping(config, LDAP_PROPERTY_PREFIX + "." + serverKey);
if (StringUtils.isNotBlank(userMapping.getBaseDn())) {
LOG.info("User mapping for server {}: {}", serverKey, userMapping);
userMappings.put(serverKey, userMapping);
@@ -81,7 +81,7 @@ public class LdapSettingsManager {
}
} else {
// Backward compatibility with single server configuration
- LdapUserMapping userMapping = new LdapUserMapping(settings, LDAP_PROPERTY_PREFIX);
+ LdapUserMapping userMapping = new LdapUserMapping(config, LDAP_PROPERTY_PREFIX);
if (StringUtils.isNotBlank(userMapping.getBaseDn())) {
LOG.info("User mapping: {}", userMapping);
userMappings.put(DEFAULT_LDAP_SERVER_KEY, userMapping);
@@ -103,10 +103,10 @@ public class LdapSettingsManager {
if (groupMappings == null) {
// Use linked hash map to preserve order
groupMappings = new LinkedHashMap<>();
- String[] serverKeys = settings.getStringArray(LDAP_SERVERS_PROPERTY);
+ String[] serverKeys = config.getStringArray(LDAP_SERVERS_PROPERTY);
if (serverKeys.length > 0) {
for (String serverKey : serverKeys) {
- LdapGroupMapping groupMapping = new LdapGroupMapping(settings, LDAP_PROPERTY_PREFIX + "." + serverKey);
+ LdapGroupMapping groupMapping = new LdapGroupMapping(config, LDAP_PROPERTY_PREFIX + "." + serverKey);
if (StringUtils.isNotBlank(groupMapping.getBaseDn())) {
LOG.info("Group mapping for server {}: {}", serverKey, groupMapping);
groupMappings.put(serverKey, groupMapping);
@@ -116,7 +116,7 @@ public class LdapSettingsManager {
}
} else {
// Backward compatibility with single server configuration
- LdapGroupMapping groupMapping = new LdapGroupMapping(settings, LDAP_PROPERTY_PREFIX);
+ LdapGroupMapping groupMapping = new LdapGroupMapping(config, LDAP_PROPERTY_PREFIX);
if (StringUtils.isNotBlank(groupMapping.getBaseDn())) {
LOG.info("Group mapping: {}", groupMapping);
groupMappings.put(DEFAULT_LDAP_SERVER_KEY, groupMapping);
@@ -138,7 +138,7 @@ public class LdapSettingsManager {
if (contextFactories == null) {
// Use linked hash map to preserve order
contextFactories = new LinkedHashMap<>();
- String[] serverKeys = settings.getStringArray(LDAP_SERVERS_PROPERTY);
+ String[] serverKeys = config.getStringArray(LDAP_SERVERS_PROPERTY);
if (serverKeys.length > 0) {
initMultiLdapConfiguration(serverKeys);
} else {
@@ -149,9 +149,9 @@ public class LdapSettingsManager {
}
private void initSimpleLdapConfiguration() {
- String realm = settings.getString(LDAP_PROPERTY_PREFIX + ".realm");
+ String realm = config.get(LDAP_PROPERTY_PREFIX + ".realm").orElse(null);
String ldapUrlKey = LDAP_PROPERTY_PREFIX + ".url";
- String ldapUrl = settings.getString(ldapUrlKey);
+ String ldapUrl = config.get(ldapUrlKey).orElse(null);
if (ldapUrl == null && realm != null) {
LOG.warn("Auto-discovery feature is deprecated, please use '{}' to specify LDAP url", ldapUrlKey);
List<LdapSrvRecord> ldapServers = ldapAutodiscovery.getLdapServers(realm);
@@ -162,7 +162,7 @@ public class LdapSettingsManager {
for (LdapSrvRecord ldapSrvRecord : ldapServers) {
if (StringUtils.isNotBlank(ldapSrvRecord.getServerUrl())) {
LOG.info("Detected server: {}", ldapSrvRecord.getServerUrl());
- LdapContextFactory contextFactory = new LdapContextFactory(settings, LDAP_PROPERTY_PREFIX, ldapSrvRecord.getServerUrl());
+ LdapContextFactory contextFactory = new LdapContextFactory(config, LDAP_PROPERTY_PREFIX, ldapSrvRecord.getServerUrl());
contextFactories.put(DEFAULT_LDAP_SERVER_KEY + index, contextFactory);
index++;
}
@@ -171,24 +171,24 @@ public class LdapSettingsManager {
if (StringUtils.isBlank(ldapUrl)) {
throw new LdapException(String.format("The property '%s' is empty and no realm configured to try auto-discovery.", ldapUrlKey));
}
- LdapContextFactory contextFactory = new LdapContextFactory(settings, LDAP_PROPERTY_PREFIX, ldapUrl);
+ LdapContextFactory contextFactory = new LdapContextFactory(config, LDAP_PROPERTY_PREFIX, ldapUrl);
contextFactories.put(DEFAULT_LDAP_SERVER_KEY, contextFactory);
}
}
private void initMultiLdapConfiguration(String[] serverKeys) {
- if (settings.hasKey("ldap.url") || settings.hasKey("ldap.realm")) {
+ if (config.hasKey("ldap.url") || config.hasKey("ldap.realm")) {
throw new LdapException("When defining multiple LDAP servers with the property '" + LDAP_SERVERS_PROPERTY + "', "
+ "all LDAP properties must be linked to one of those servers. Please remove properties like 'ldap.url', 'ldap.realm', ...");
}
for (String serverKey : serverKeys) {
String prefix = LDAP_PROPERTY_PREFIX + "." + serverKey;
String ldapUrlKey = prefix + ".url";
- String ldapUrl = settings.getString(ldapUrlKey);
+ String ldapUrl = config.get(ldapUrlKey).orElse(null);
if (StringUtils.isBlank(ldapUrl)) {
throw new LdapException(String.format("The property '%s' property is empty while it is mandatory.", ldapUrlKey));
}
- LdapContextFactory contextFactory = new LdapContextFactory(settings, prefix, ldapUrl);
+ LdapContextFactory contextFactory = new LdapContextFactory(config, prefix, ldapUrl);
contextFactories.put(serverKey, contextFactory);
}
}
diff --git a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapUserMapping.java b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapUserMapping.java
index ec74739fdd7..8b251bb453a 100644
--- a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapUserMapping.java
+++ b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/LdapUserMapping.java
@@ -20,7 +20,7 @@
package org.sonar.auth.ldap;
import org.apache.commons.lang.StringUtils;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.Configuration;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
@@ -43,11 +43,11 @@ public class LdapUserMapping {
/**
* Constructs mapping from Sonar settings.
*/
- public LdapUserMapping(Settings settings, String settingsPrefix) {
+ public LdapUserMapping(Configuration config, String settingsPrefix) {
String usesrBaseDnSettingKey = settingsPrefix + ".user.baseDn";
- String usersBaseDn = settings.getString(usesrBaseDnSettingKey);
+ String usersBaseDn = config.get(usesrBaseDnSettingKey).orElse(null);
if (usersBaseDn == null) {
- String realm = settings.getString(settingsPrefix + ".realm");
+ String realm = config.get(settingsPrefix + ".realm").orElse(null);
if (realm != null) {
LOG.warn("Auto-discovery feature is deprecated, please use '{}' to specify user search dn", usesrBaseDnSettingKey);
usersBaseDn = LdapAutodiscovery.getDnsDomainDn(realm);
@@ -55,10 +55,10 @@ public class LdapUserMapping {
}
this.baseDn = usersBaseDn;
- this.realNameAttribute = StringUtils.defaultString(settings.getString(settingsPrefix + ".user.realNameAttribute"), DEFAULT_NAME_ATTRIBUTE);
- this.emailAttribute = StringUtils.defaultString(settings.getString(settingsPrefix + ".user.emailAttribute"), DEFAULT_EMAIL_ATTRIBUTE);
+ this.realNameAttribute = StringUtils.defaultString(config.get(settingsPrefix + ".user.realNameAttribute").orElse(null), DEFAULT_NAME_ATTRIBUTE);
+ this.emailAttribute = StringUtils.defaultString(config.get(settingsPrefix + ".user.emailAttribute").orElse(null), DEFAULT_EMAIL_ATTRIBUTE);
- String req = StringUtils.defaultString(settings.getString(settingsPrefix + ".user.request"), DEFAULT_REQUEST);
+ String req = StringUtils.defaultString(config.get(settingsPrefix + ".user.request").orElse(null), DEFAULT_REQUEST);
req = StringUtils.replace(req, "{login}", "{0}");
this.request = req;
}
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/KerberosTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/KerberosTest.java
index a5160297b1e..ca9beee0449 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/KerberosTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/KerberosTest.java
@@ -44,7 +44,7 @@ public class KerberosTest {
@Test
public void test() {
MapSettings settings = configure();
- LdapRealm ldapRealm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm ldapRealm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
ldapRealm.init();
@@ -61,7 +61,7 @@ public class KerberosTest {
public void wrong_bind_password() {
MapSettings settings = configure()
.setProperty("ldap.bindPassword", "wrong_bind_password");
- LdapRealm ldapRealm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm ldapRealm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
try {
ldapRealm.init();
Assert.fail();
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAuthenticatorTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAuthenticatorTest.java
index 126b858ee51..1f94c079fbd 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAuthenticatorTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAuthenticatorTest.java
@@ -44,7 +44,7 @@ public class LdapAuthenticatorTest {
public void testNoConnection() {
exampleServer.disableAnonymousAccess();
try {
- LdapSettingsManager settingsManager = new LdapSettingsManager(LdapSettingsFactory.generateAuthenticationSettings(exampleServer, null, LdapContextFactory.AUTH_METHOD_SIMPLE),
+ LdapSettingsManager settingsManager = new LdapSettingsManager(LdapSettingsFactory.generateAuthenticationSettings(exampleServer, null, LdapContextFactory.AUTH_METHOD_SIMPLE).asConfig(),
new LdapAutodiscovery());
LdapAuthenticator authenticator = new LdapAuthenticator(settingsManager.getContextFactories(), settingsManager.getUserMappings());
authenticator.authenticate("godin", "secret1");
@@ -55,7 +55,7 @@ public class LdapAuthenticatorTest {
@Test
public void testSimple() {
- LdapSettingsManager settingsManager = new LdapSettingsManager(LdapSettingsFactory.generateAuthenticationSettings(exampleServer, null, LdapContextFactory.AUTH_METHOD_SIMPLE),
+ LdapSettingsManager settingsManager = new LdapSettingsManager(LdapSettingsFactory.generateAuthenticationSettings(exampleServer, null, LdapContextFactory.AUTH_METHOD_SIMPLE).asConfig(),
new LdapAutodiscovery());
LdapAuthenticator authenticator = new LdapAuthenticator(settingsManager.getContextFactories(), settingsManager.getUserMappings());
@@ -74,7 +74,7 @@ public class LdapAuthenticatorTest {
@Test
public void testSimpleMultiLdap() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- LdapSettingsFactory.generateAuthenticationSettings(exampleServer, infosupportServer, LdapContextFactory.AUTH_METHOD_SIMPLE), new LdapAutodiscovery());
+ LdapSettingsFactory.generateAuthenticationSettings(exampleServer, infosupportServer, LdapContextFactory.AUTH_METHOD_SIMPLE).asConfig(), new LdapAutodiscovery());
LdapAuthenticator authenticator = new LdapAuthenticator(settingsManager.getContextFactories(), settingsManager.getUserMappings());
assertThat(authenticator.authenticate("godin", "secret1")).isTrue();
@@ -95,7 +95,7 @@ public class LdapAuthenticatorTest {
@Test
public void testSasl() {
- LdapSettingsManager settingsManager = new LdapSettingsManager(LdapSettingsFactory.generateAuthenticationSettings(exampleServer, null, LdapContextFactory.AUTH_METHOD_CRAM_MD5),
+ LdapSettingsManager settingsManager = new LdapSettingsManager(LdapSettingsFactory.generateAuthenticationSettings(exampleServer, null, LdapContextFactory.AUTH_METHOD_CRAM_MD5).asConfig(),
new LdapAutodiscovery());
LdapAuthenticator authenticator = new LdapAuthenticator(settingsManager.getContextFactories(), settingsManager.getUserMappings());
@@ -111,7 +111,7 @@ public class LdapAuthenticatorTest {
@Test
public void testSaslMultipleLdap() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- LdapSettingsFactory.generateAuthenticationSettings(exampleServer, infosupportServer, LdapContextFactory.AUTH_METHOD_CRAM_MD5), new LdapAutodiscovery());
+ LdapSettingsFactory.generateAuthenticationSettings(exampleServer, infosupportServer, LdapContextFactory.AUTH_METHOD_CRAM_MD5).asConfig(), new LdapAutodiscovery());
LdapAuthenticator authenticator = new LdapAuthenticator(settingsManager.getContextFactories(), settingsManager.getUserMappings());
assertThat(authenticator.authenticate("godin", "secret1")).isTrue();
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAutoDiscoveryWarningLogTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAutoDiscoveryWarningLogTest.java
index a9ad72f1f0e..9d5c6de7919 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAutoDiscoveryWarningLogTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapAutoDiscoveryWarningLogTest.java
@@ -45,7 +45,7 @@ public class LdapAutoDiscoveryWarningLogTest {
public void does_not_display_log_when_not_using_auto_discovery() {
MapSettings settings = new MapSettings()
.setProperty("ldap.url", server.getUrl());
- LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
assertThat(realm.getName()).isEqualTo("LDAP");
realm.init();
@@ -58,7 +58,7 @@ public class LdapAutoDiscoveryWarningLogTest {
LdapAutodiscovery ldapAutodiscovery = mock(LdapAutodiscovery.class);
when(ldapAutodiscovery.getLdapServers("example.org")).thenReturn(singletonList(new LdapAutodiscovery.LdapSrvRecord(server.getUrl(), 1, 1)));
// ldap.url setting is not set
- LdapRealm realm = new LdapRealm(new LdapSettingsManager(new MapSettings().setProperty("ldap.realm", "example.org"),
+ LdapRealm realm = new LdapRealm(new LdapSettingsManager(new MapSettings().setProperty("ldap.realm", "example.org").asConfig(),
ldapAutodiscovery));
realm.init();
@@ -70,7 +70,7 @@ public class LdapAutoDiscoveryWarningLogTest {
public void display_warning_log_when_using_auto_discovery_to_detect_user_baseDn_on_single_server() {
// ldap.user.baseDn setting is not set
MapSettings settings = new MapSettings().setProperty("ldap.url", server.getUrl()).setProperty("ldap.realm", "example.org");
- LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
realm.init();
@@ -88,7 +88,7 @@ public class LdapAutoDiscoveryWarningLogTest {
.setProperty("ldap.example.realm", "example.org")
.setProperty("ldap.infosupport.url", server2.getUrl())
.setProperty("ldap.infosupport.realm", "infosupport.org");
- LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
realm.init();
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupMappingTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupMappingTest.java
index 6be7b1c4dcc..a2e5e11f2b6 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupMappingTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupMappingTest.java
@@ -28,7 +28,7 @@ public class LdapGroupMappingTest {
@Test
public void defaults() {
- LdapGroupMapping groupMapping = new LdapGroupMapping(new MapSettings(), "ldap");
+ LdapGroupMapping groupMapping = new LdapGroupMapping(new MapSettings().asConfig(), "ldap");
assertThat(groupMapping.getBaseDn()).isNull();
assertThat(groupMapping.getIdAttribute()).isEqualTo("cn");
@@ -46,7 +46,7 @@ public class LdapGroupMappingTest {
public void custom_request() {
MapSettings settings = new MapSettings()
.setProperty("ldap.group.request", "(&(|(objectClass=posixGroup)(objectClass=groupOfUniqueNames))(|(memberUid={uid})(uniqueMember={dn})))");
- LdapGroupMapping groupMapping = new LdapGroupMapping(settings, "ldap");
+ LdapGroupMapping groupMapping = new LdapGroupMapping(settings.asConfig(), "ldap");
assertThat(groupMapping.getRequest()).isEqualTo("(&(|(objectClass=posixGroup)(objectClass=groupOfUniqueNames))(|(memberUid={0})(uniqueMember={1})))");
assertThat(groupMapping.getRequiredUserAttributes()).isEqualTo(new String[] {"uid", "dn"});
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupsProviderTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupsProviderTest.java
index 2b954453058..619d2fe13dc 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupsProviderTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapGroupsProviderTest.java
@@ -47,7 +47,7 @@ public class LdapGroupsProviderTest {
public void defaults() {
MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, null);
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapGroupsProvider groupsProvider = new LdapGroupsProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings(), settingsManager.getGroupMappings());
Collection<String> groups;
@@ -65,7 +65,7 @@ public class LdapGroupsProviderTest {
public void defaultsMultipleLdap() {
MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, infosupportServer);
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapGroupsProvider groupsProvider = new LdapGroupsProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings(), settingsManager.getGroupMappings());
Collection<String> groups;
@@ -90,7 +90,7 @@ public class LdapGroupsProviderTest {
public void posix() {
MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, null);
settings.setProperty("ldap.group.request", "(&(objectClass=posixGroup)(memberUid={uid}))");
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapGroupsProvider groupsProvider = new LdapGroupsProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings(), settingsManager.getGroupMappings());
Collection<String> groups;
@@ -104,7 +104,7 @@ public class LdapGroupsProviderTest {
MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, infosupportServer);
settings.setProperty("ldap.example.group.request", "(&(objectClass=posixGroup)(memberUid={uid}))");
settings.setProperty("ldap.infosupport.group.request", "(&(objectClass=posixGroup)(memberUid={uid}))");
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapGroupsProvider groupsProvider = new LdapGroupsProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings(), settingsManager.getGroupMappings());
Collection<String> groups;
@@ -120,7 +120,7 @@ public class LdapGroupsProviderTest {
public void mixed() {
MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, infosupportServer);
settings.setProperty("ldap.example.group.request", "(&(|(objectClass=groupOfUniqueNames)(objectClass=posixGroup))(|(uniqueMember={dn})(memberUid={uid})))");
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapGroupsProvider groupsProvider = new LdapGroupsProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings(), settingsManager.getGroupMappings());
Collection<String> groups;
@@ -134,7 +134,7 @@ public class LdapGroupsProviderTest {
MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, infosupportServer);
settings.setProperty("ldap.example.group.request", "(&(|(objectClass=groupOfUniqueNames)(objectClass=posixGroup))(|(uniqueMember={dn})(memberUid={uid})))");
settings.setProperty("ldap.infosupport.group.request", "(&(|(objectClass=groupOfUniqueNames)(objectClass=posixGroup))(|(uniqueMember={dn})(memberUid={uid})))");
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapGroupsProvider groupsProvider = new LdapGroupsProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings(), settingsManager.getGroupMappings());
Collection<String> groups;
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapRealmTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapRealmTest.java
index be911bac424..0678722dcdb 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapRealmTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapRealmTest.java
@@ -40,7 +40,7 @@ public class LdapRealmTest {
public void normal() {
MapSettings settings = new MapSettings()
.setProperty("ldap.url", server.getUrl());
- LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
assertThat(realm.getName()).isEqualTo("LDAP");
realm.init();
assertThat(realm.doGetAuthenticator()).isInstanceOf(LdapAuthenticator.class);
@@ -53,7 +53,7 @@ public class LdapRealmTest {
MapSettings settings = new MapSettings()
.setProperty("ldap.url", "ldap://no-such-host")
.setProperty("ldap.group.baseDn", "cn=groups,dc=example,dc=org");
- LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings, new LdapAutodiscovery()));
+ LdapRealm realm = new LdapRealm(new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()));
assertThat(realm.getName()).isEqualTo("LDAP");
try {
realm.init();
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapReferralsTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapReferralsTest.java
index 4f9b7943796..e66a4bb6b72 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapReferralsTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapReferralsTest.java
@@ -23,7 +23,7 @@ import java.util.Map;
import javax.annotation.Nullable;
import org.junit.ClassRule;
import org.junit.Test;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.MapSettings;
import org.sonar.auth.ldap.server.LdapServer;
import static org.assertj.core.api.Assertions.assertThat;
@@ -60,10 +60,10 @@ public class LdapReferralsTest {
}
private static Map<String, LdapContextFactory> createFactories(@Nullable String propertyKey, @Nullable String propertyValue) {
- Settings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(server, null);
+ MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(server, null);
if (propertyKey != null) {
settings.setProperty(propertyKey, propertyValue);
}
- return new LdapSettingsManager(settings, new LdapAutodiscovery()).getContextFactories();
+ return new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery()).getContextFactories();
}
}
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSearchTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSearchTest.java
index 65a6a531ab9..c46bc6f3107 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSearchTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSearchTest.java
@@ -45,7 +45,7 @@ public class LdapSearchTest {
@BeforeClass
public static void init() {
- contextFactories = new LdapSettingsManager(LdapSettingsFactory.generateSimpleAnonymousAccessSettings(server, null), new LdapAutodiscovery()).getContextFactories();
+ contextFactories = new LdapSettingsManager(LdapSettingsFactory.generateSimpleAnonymousAccessSettings(server, null).asConfig(), new LdapAutodiscovery()).getContextFactories();
}
@Test
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSettingsManagerTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSettingsManagerTest.java
index 900a2daa328..a4b659d5b35 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSettingsManagerTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapSettingsManagerTest.java
@@ -24,7 +24,6 @@ import java.util.Collections;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
-import org.sonar.api.config.Settings;
import org.sonar.api.config.internal.MapSettings;
import static org.assertj.core.api.Assertions.assertThat;
@@ -39,9 +38,9 @@ public class LdapSettingsManagerTest {
@Test
public void shouldFailWhenNoLdapUrl() {
- Settings settings = generateMultipleLdapSettingsWithUserAndGroupMapping();
+ MapSettings settings = generateMultipleLdapSettingsWithUserAndGroupMapping();
settings.removeProperty("ldap.example.url");
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
thrown.expect(LdapException.class);
thrown.expectMessage("The property 'ldap.example.url' property is empty while it is mandatory.");
@@ -50,9 +49,9 @@ public class LdapSettingsManagerTest {
@Test
public void shouldFailWhenMixingSingleAndMultipleConfiguration() {
- Settings settings = generateMultipleLdapSettingsWithUserAndGroupMapping();
+ MapSettings settings = generateMultipleLdapSettingsWithUserAndGroupMapping();
settings.setProperty("ldap.url", "ldap://foo");
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
thrown.expect(LdapException.class);
thrown
@@ -64,7 +63,7 @@ public class LdapSettingsManagerTest {
@Test
public void testContextFactoriesWithSingleLdap() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- generateSingleLdapSettingsWithUserAndGroupMapping(), new LdapAutodiscovery());
+ generateSingleLdapSettingsWithUserAndGroupMapping().asConfig(), new LdapAutodiscovery());
assertThat(settingsManager.getContextFactories().size()).isEqualTo(1);
}
@@ -75,7 +74,7 @@ public class LdapSettingsManagerTest {
@Test
public void testContextFactoriesWithMultipleLdap() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- generateMultipleLdapSettingsWithUserAndGroupMapping(), new LdapAutodiscovery());
+ generateMultipleLdapSettingsWithUserAndGroupMapping().asConfig(), new LdapAutodiscovery());
assertThat(settingsManager.getContextFactories().size()).isEqualTo(2);
// We do it twice to make sure the settings keep the same.
assertThat(settingsManager.getContextFactories().size()).isEqualTo(2);
@@ -88,7 +87,7 @@ public class LdapSettingsManagerTest {
LdapSrvRecord ldap2 = new LdapSrvRecord("ldap://localhost:1899", 1, 1);
when(ldapAutodiscovery.getLdapServers("example.org")).thenReturn(Arrays.asList(ldap1, ldap2));
LdapSettingsManager settingsManager = new LdapSettingsManager(
- generateAutodiscoverSettings(), ldapAutodiscovery);
+ generateAutodiscoverSettings().asConfig(), ldapAutodiscovery);
assertThat(settingsManager.getContextFactories().size()).isEqualTo(2);
}
@@ -97,7 +96,7 @@ public class LdapSettingsManagerTest {
LdapAutodiscovery ldapAutodiscovery = mock(LdapAutodiscovery.class);
when(ldapAutodiscovery.getLdapServers("example.org")).thenReturn(Collections.emptyList());
LdapSettingsManager settingsManager = new LdapSettingsManager(
- generateAutodiscoverSettings(), ldapAutodiscovery);
+ generateAutodiscoverSettings().asConfig(), ldapAutodiscovery);
thrown.expect(LdapException.class);
thrown.expectMessage("The property 'ldap.url' is empty and SonarQube is not able to auto-discover any LDAP server.");
@@ -112,7 +111,7 @@ public class LdapSettingsManagerTest {
@Test
public void testUserMappings() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- generateMultipleLdapSettingsWithUserAndGroupMapping(), new LdapAutodiscovery());
+ generateMultipleLdapSettingsWithUserAndGroupMapping().asConfig(), new LdapAutodiscovery());
assertThat(settingsManager.getUserMappings().size()).isEqualTo(2);
// We do it twice to make sure the settings keep the same.
assertThat(settingsManager.getUserMappings().size()).isEqualTo(2);
@@ -125,7 +124,7 @@ public class LdapSettingsManagerTest {
@Test
public void testGroupMappings() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- generateMultipleLdapSettingsWithUserAndGroupMapping(), new LdapAutodiscovery());
+ generateMultipleLdapSettingsWithUserAndGroupMapping().asConfig(), new LdapAutodiscovery());
assertThat(settingsManager.getGroupMappings().size()).isEqualTo(2);
// We do it twice to make sure the settings keep the same.
assertThat(settingsManager.getGroupMappings().size()).isEqualTo(2);
@@ -138,7 +137,7 @@ public class LdapSettingsManagerTest {
@Test
public void testEmptySettings() {
LdapSettingsManager settingsManager = new LdapSettingsManager(
- new MapSettings(), new LdapAutodiscovery());
+ new MapSettings().asConfig(), new LdapAutodiscovery());
thrown.expect(LdapException.class);
thrown.expectMessage("The property 'ldap.url' is empty and no realm configured to try auto-discovery.");
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUserMappingTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUserMappingTest.java
index 3d151ff4da0..1c35fda4b5e 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUserMappingTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUserMappingTest.java
@@ -28,7 +28,7 @@ public class LdapUserMappingTest {
@Test
public void defaults() {
- LdapUserMapping userMapping = new LdapUserMapping(new MapSettings(), "ldap");
+ LdapUserMapping userMapping = new LdapUserMapping(new MapSettings().asConfig(), "ldap");
assertThat(userMapping.getBaseDn()).isNull();
assertThat(userMapping.getRequest()).isEqualTo("(&(objectClass=inetOrgPerson)(uid={0}))");
assertThat(userMapping.getRealNameAttribute()).isEqualTo("cn");
@@ -47,7 +47,7 @@ public class LdapUserMappingTest {
.setProperty("ldap.user.baseDn", "cn=users")
.setProperty("ldap.user.request", "(&(objectClass=user)(sAMAccountName={0}))");
- LdapUserMapping userMapping = new LdapUserMapping(settings, "ldap");
+ LdapUserMapping userMapping = new LdapUserMapping(settings.asConfig(), "ldap");
LdapSearch search = userMapping.createSearch(null, "tester");
assertThat(search.getBaseDn()).isEqualTo("cn=users");
assertThat(search.getRequest()).isEqualTo("(&(objectClass=user)(sAMAccountName={0}))");
@@ -68,7 +68,7 @@ public class LdapUserMappingTest {
.setProperty("ldap.userObjectClass", "user")
.setProperty("ldap.loginAttribute", "sAMAccountName");
- LdapUserMapping userMapping = new LdapUserMapping(settings, "ldap");
+ LdapUserMapping userMapping = new LdapUserMapping(settings.asConfig(), "ldap");
assertThat(userMapping.getBaseDn()).isEqualTo("dc=example,dc=org");
}
diff --git a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUsersProviderTest.java b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUsersProviderTest.java
index 754d73895d0..bc37bd849d8 100644
--- a/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUsersProviderTest.java
+++ b/server/sonar-auth-ldap/src/test/java/org/sonar/auth/ldap/LdapUsersProviderTest.java
@@ -21,7 +21,7 @@ package org.sonar.auth.ldap;
import org.junit.ClassRule;
import org.junit.Test;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.security.UserDetails;
import org.sonar.auth.ldap.server.LdapServer;
@@ -44,8 +44,8 @@ public class LdapUsersProviderTest {
@Test
public void test() {
- Settings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, infosupportServer);
- LdapSettingsManager settingsManager = new LdapSettingsManager(settings, new LdapAutodiscovery());
+ MapSettings settings = LdapSettingsFactory.generateSimpleAnonymousAccessSettings(exampleServer, infosupportServer);
+ LdapSettingsManager settingsManager = new LdapSettingsManager(settings.asConfig(), new LdapAutodiscovery());
LdapUsersProvider usersProvider = new LdapUsersProvider(settingsManager.getContextFactories(), settingsManager.getUserMappings());
UserDetails details;
diff --git a/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/analysis/ProjectConfigurationFactory.java b/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/analysis/ProjectConfigurationFactory.java
index 1640e67c8c1..4e73cfa22d3 100644
--- a/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/analysis/ProjectConfigurationFactory.java
+++ b/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/analysis/ProjectConfigurationFactory.java
@@ -21,7 +21,7 @@ package org.sonar.ce.task.projectanalysis.analysis;
import org.sonar.api.ce.ComputeEngineSide;
import org.sonar.api.config.Configuration;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.ConfigurationBridge;
import org.sonar.db.DbClient;
import org.sonar.db.component.BranchType;
diff --git a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/filter/IssueFilterTest.java b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/filter/IssueFilterTest.java
index a5e8124ea2d..a905f0f8e21 100644
--- a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/filter/IssueFilterTest.java
+++ b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/filter/IssueFilterTest.java
@@ -26,7 +26,7 @@ import java.util.List;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.rule.RuleKey;
import org.sonar.ce.task.projectanalysis.component.Component;
diff --git a/server/sonar-ce-task/src/main/java/org/sonar/ce/task/setting/SettingsLoader.java b/server/sonar-ce-task/src/main/java/org/sonar/ce/task/setting/SettingsLoader.java
index 26e9d4e373d..efe406b9ded 100644
--- a/server/sonar-ce-task/src/main/java/org/sonar/ce/task/setting/SettingsLoader.java
+++ b/server/sonar-ce-task/src/main/java/org/sonar/ce/task/setting/SettingsLoader.java
@@ -21,13 +21,14 @@ package org.sonar.ce.task.setting;
import org.picocontainer.Startable;
import org.sonar.api.ce.ComputeEngineSide;
+import org.sonar.api.config.internal.Settings;
import org.sonar.ce.task.container.EagerStart;
import org.sonar.ce.task.container.TaskContainerImpl;
import org.sonar.server.setting.ThreadLocalSettings;
/**
* Add this class as the first components in the {@link TaskContainerImpl}
- * to trigger loading of Thread local specific {@link org.sonar.api.config.Settings} in {@link ThreadLocalSettings}.
+ * to trigger loading of Thread local specific {@link Settings} in {@link ThreadLocalSettings}.
*/
@EagerStart
@ComputeEngineSide
diff --git a/server/sonar-db-core/src/main/java/org/sonar/db/DefaultDatabase.java b/server/sonar-db-core/src/main/java/org/sonar/db/DefaultDatabase.java
index 40991c11ca9..c4d61db0506 100644
--- a/server/sonar-db-core/src/main/java/org/sonar/db/DefaultDatabase.java
+++ b/server/sonar-db-core/src/main/java/org/sonar/db/DefaultDatabase.java
@@ -31,7 +31,7 @@ import javax.sql.DataSource;
import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.commons.dbcp2.BasicDataSourceFactory;
import org.apache.commons.lang.StringUtils;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.db.dialect.Dialect;
diff --git a/server/sonar-db-core/src/testFixtures/java/org/sonar/db/CoreTestDb.java b/server/sonar-db-core/src/testFixtures/java/org/sonar/db/CoreTestDb.java
index 624cc731784..56d6821f9f7 100644
--- a/server/sonar-db-core/src/testFixtures/java/org/sonar/db/CoreTestDb.java
+++ b/server/sonar-db-core/src/testFixtures/java/org/sonar/db/CoreTestDb.java
@@ -30,7 +30,7 @@ import javax.annotation.Nullable;
import javax.sql.DataSource;
import org.apache.commons.codec.digest.DigestUtils;
import org.junit.AssumptionViolatedException;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/createdb/CreateDb.java b/server/sonar-db-dao/src/test/java/org/sonar/db/createdb/CreateDb.java
index 0d6a22c70ff..871d7395875 100644
--- a/server/sonar-db-dao/src/test/java/org/sonar/db/createdb/CreateDb.java
+++ b/server/sonar-db-dao/src/test/java/org/sonar/db/createdb/CreateDb.java
@@ -24,7 +24,7 @@ import com.sonar.orchestrator.db.DatabaseClient;
import com.sonar.orchestrator.db.DatabaseFactory;
import com.sonar.orchestrator.db.DefaultDatabase;
import java.util.function.Consumer;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
diff --git a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/OrchestratorSettingsUtils.java b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/OrchestratorSettingsUtils.java
index 8fe322172ae..255a3b9b065 100644
--- a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/OrchestratorSettingsUtils.java
+++ b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/OrchestratorSettingsUtils.java
@@ -28,7 +28,7 @@ import java.util.Properties;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.text.StrSubstitutor;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import static org.apache.commons.lang.StringUtils.isEmpty;
diff --git a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/SQDatabase.java b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/SQDatabase.java
index b04f133ee51..4a2b00fb6e7 100644
--- a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/SQDatabase.java
+++ b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/SQDatabase.java
@@ -29,7 +29,7 @@ import org.apache.ibatis.io.Resources;
import org.apache.ibatis.jdbc.ScriptRunner;
import org.sonar.api.SonarEdition;
import org.sonar.api.SonarQubeSide;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.internal.SonarRuntimeImpl;
import org.sonar.api.utils.System2;
diff --git a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/TestDbImpl.java b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/TestDbImpl.java
index 358370add4e..a8612bcbb25 100644
--- a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/TestDbImpl.java
+++ b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/TestDbImpl.java
@@ -28,7 +28,7 @@ import javax.annotation.Nullable;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.lang.StringUtils;
import org.junit.AssumptionViolatedException;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.db.dialect.H2;
import org.sonar.process.logging.LogbackHelper;
diff --git a/server/sonar-server-common/src/main/java/org/sonar/server/config/ConfigurationProvider.java b/server/sonar-server-common/src/main/java/org/sonar/server/config/ConfigurationProvider.java
index 1fead12b3dc..74e06a003c2 100644
--- a/server/sonar-server-common/src/main/java/org/sonar/server/config/ConfigurationProvider.java
+++ b/server/sonar-server-common/src/main/java/org/sonar/server/config/ConfigurationProvider.java
@@ -25,7 +25,7 @@ import org.apache.commons.lang.ArrayUtils;
import org.picocontainer.injectors.ProviderAdapter;
import org.sonar.api.config.Configuration;
import org.sonar.api.config.PropertyDefinition;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import static java.util.function.Function.identity;
import static org.sonar.api.config.internal.MultivalueProperty.parseAsCsv;
diff --git a/server/sonar-server-common/src/main/java/org/sonar/server/setting/ChildSettings.java b/server/sonar-server-common/src/main/java/org/sonar/server/setting/ChildSettings.java
index 0c047766ff5..a29fa650ed1 100644
--- a/server/sonar-server-common/src/main/java/org/sonar/server/setting/ChildSettings.java
+++ b/server/sonar-server-common/src/main/java/org/sonar/server/setting/ChildSettings.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
import org.sonar.api.config.Configuration;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.ConfigurationBridge;
import static java.util.Objects.requireNonNull;
diff --git a/server/sonar-server-common/src/main/java/org/sonar/server/setting/ThreadLocalSettings.java b/server/sonar-server-common/src/main/java/org/sonar/server/setting/ThreadLocalSettings.java
index f2cf05f92d6..74c7affdf53 100644
--- a/server/sonar-server-common/src/main/java/org/sonar/server/setting/ThreadLocalSettings.java
+++ b/server/sonar-server-common/src/main/java/org/sonar/server/setting/ThreadLocalSettings.java
@@ -32,10 +32,10 @@ import java.util.stream.Stream;
import org.apache.ibatis.exceptions.PersistenceException;
import org.sonar.api.CoreProperties;
import org.sonar.api.ce.ComputeEngineSide;
-import org.sonar.api.config.Encryption;
+import org.sonar.api.config.internal.Encryption;
import org.sonar.api.config.PropertyDefinition;
import org.sonar.api.config.PropertyDefinitions;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.server.ServerSide;
import org.sonar.api.utils.System2;
import org.sonar.core.util.SettingFormatter;
diff --git a/server/sonar-webserver-api/src/main/java/org/sonar/server/setting/ProjectConfigurationLoaderImpl.java b/server/sonar-webserver-api/src/main/java/org/sonar/server/setting/ProjectConfigurationLoaderImpl.java
index a64d0528a3b..8d81a7937a0 100644
--- a/server/sonar-webserver-api/src/main/java/org/sonar/server/setting/ProjectConfigurationLoaderImpl.java
+++ b/server/sonar-webserver-api/src/main/java/org/sonar/server/setting/ProjectConfigurationLoaderImpl.java
@@ -25,7 +25,7 @@ import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
import org.sonar.api.config.Configuration;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.db.DbClient;
import org.sonar.db.DbSession;
import org.sonar.db.component.ComponentDto;
diff --git a/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/PersistentSettings.java b/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/PersistentSettings.java
index 49c200de935..ae8e26b1ff5 100644
--- a/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/PersistentSettings.java
+++ b/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/PersistentSettings.java
@@ -21,7 +21,7 @@ package org.sonar.server.platform;
import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.db.DbClient;
import org.sonar.db.DbSession;
import org.sonar.db.property.PropertyDto;
diff --git a/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/monitoring/SettingsSection.java b/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/monitoring/SettingsSection.java
index 813c18c4109..68697052eaf 100644
--- a/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/monitoring/SettingsSection.java
+++ b/server/sonar-webserver-core/src/main/java/org/sonar/server/platform/monitoring/SettingsSection.java
@@ -24,7 +24,7 @@ import java.util.TreeMap;
import org.sonar.api.PropertyType;
import org.sonar.api.config.PropertyDefinition;
import org.sonar.api.config.PropertyDefinitions;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.server.ServerSide;
import org.sonar.process.systeminfo.Global;
import org.sonar.process.systeminfo.SystemInfoSection;
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/notification/NotificationMediumTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/notification/NotificationMediumTest.java
index 6040fdc6cac..fb8b5001af5 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/notification/NotificationMediumTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/notification/NotificationMediumTest.java
@@ -23,7 +23,7 @@ import org.junit.Test;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;
import org.sonar.api.config.PropertyDefinitions;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.notifications.Notification;
import org.sonar.api.notifications.NotificationChannel;
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/PersistentSettingsTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/PersistentSettingsTest.java
index 79265b9a4a9..e87bb6098d0 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/PersistentSettingsTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/PersistentSettingsTest.java
@@ -21,7 +21,7 @@ package org.sonar.server.platform;
import org.junit.Rule;
import org.junit.Test;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.utils.System2;
import org.sonar.db.DbTester;
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java
index 5eac665668b..3790efa3c01 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java
@@ -23,7 +23,7 @@ import org.junit.Test;
import org.sonar.api.PropertyType;
import org.sonar.api.config.PropertyDefinition;
import org.sonar.api.config.PropertyDefinitions;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.process.systeminfo.protobuf.ProtobufSystemInfo;
diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/CheckSecretKeyAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/CheckSecretKeyAction.java
index 2339c33d0dc..1b76f09fd8f 100644
--- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/CheckSecretKeyAction.java
+++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/CheckSecretKeyAction.java
@@ -19,7 +19,7 @@
*/
package org.sonar.server.setting.ws;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.server.ws.Request;
import org.sonar.api.server.ws.Response;
import org.sonar.api.server.ws.WebService;
diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/EncryptAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/EncryptAction.java
index a3a6fd24a0e..a4facc04719 100644
--- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/EncryptAction.java
+++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/EncryptAction.java
@@ -19,8 +19,8 @@
*/
package org.sonar.server.setting.ws;
-import org.sonar.api.config.Encryption;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Encryption;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.server.ws.Request;
import org.sonar.api.server.ws.Response;
import org.sonar.api.server.ws.WebService;
diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/GenerateSecretKeyAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/GenerateSecretKeyAction.java
index 338ec47d887..df947043f8c 100644
--- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/GenerateSecretKeyAction.java
+++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/GenerateSecretKeyAction.java
@@ -19,7 +19,7 @@
*/
package org.sonar.server.setting.ws;
-import org.sonar.api.config.Settings;
+import org.sonar.api.config.internal.Settings;
import org.sonar.api.server.ws.Request;
import org.sonar.api.server.ws.Response;
import org.sonar.api.server.ws.WebService;
diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/CheckSecretKeyActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/CheckSecretKeyActionTest.java
index f1d0afea3fe..971b767aefa 100644
--- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/CheckSecretKeyActionTest.java
+++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/CheckSecretKeyActionTest.java
@@ -26,7 +26,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.rules.TemporaryFolder;
-import org.sonar.api.config.Encryption;
+import org.sonar.api.config.internal.Encryption;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.server.ws.WebService;
import org.sonar.server.exceptions.ForbiddenException;
diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/EncryptActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/EncryptActionTest.java
index 494fa9285ad..8991237379a 100644
--- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/EncryptActionTest.java
+++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/EncryptActionTest.java
@@ -27,7 +27,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.rules.TemporaryFolder;
-import org.sonar.api.config.Encryption;
+import org.sonar.api.config.internal.Encryption;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.server.ws.WebService;
import org.sonar.server.exceptions.BadRequestException;
diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/GenerateSecretKeyActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/GenerateSecretKeyActionTest.java
index 80e636af7b2..48016199784 100644
--- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/GenerateSecretKeyActionTest.java
+++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/GenerateSecretKeyActionTest.java
@@ -26,7 +26,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.rules.TemporaryFolder;
-import org.sonar.api.config.Encryption;
+import org.sonar.api.config.internal.Encryption;
import org.sonar.api.config.internal.MapSettings;
import org.sonar.api.server.ws.WebService;
import org.sonar.server.exceptions.ForbiddenException;