Allow to enable/disable LDAP provider in config

This commit is contained in:
Maxime Dor
2017-05-03 19:08:40 +02:00
parent 4ae853ef09
commit e221352fab
7 changed files with 28 additions and 1 deletions

View File

@@ -32,6 +32,7 @@ class LdapConfig implements InitializingBean {
private Logger log = LoggerFactory.getLogger(LdapConfig.class)
private boolean enabled;
private String host
private int port
private String baseDn
@@ -41,6 +42,14 @@ class LdapConfig implements InitializingBean {
private String bindPassword
private Map<String, String> mappings
boolean getEnabled() {
return enabled
}
void setEnabled(boolean enabled) {
this.enabled = enabled
}
String getHost() {
return host
}

View File

@@ -48,6 +48,11 @@ class DnsLookupProvider implements IThreePidProvider {
@Autowired
private IRemoteIdentityServerFetcher fetcher
@Override
boolean isEnabled() {
return true
}
@Override
boolean isLocal() {
return false

View File

@@ -40,6 +40,11 @@ class ForwarderProvider implements IThreePidProvider {
@Autowired
private IRemoteIdentityServerFetcher fetcher
@Override
boolean isEnabled() {
return true
}
@Override
boolean isLocal() {
return false

View File

@@ -25,6 +25,8 @@ import io.kamax.mxisd.lookup.ThreePidMapping
interface IThreePidProvider {
boolean isEnabled()
boolean isLocal()
/**

View File

@@ -50,6 +50,11 @@ class LdapProvider implements IThreePidProvider {
@Autowired
private LdapConfig ldapCfg
@Override
boolean isEnabled() {
return ldapCfg.getEnabled()
}
@Override
boolean isLocal() {
return true

View File

@@ -96,7 +96,7 @@ class RecursivePriorityLookupStrategy implements LookupStrategy, InitializingBea
log.info("Host {} allowed for recursion: {}", request.getRequester(), canRecurse)
for (IThreePidProvider provider : providers) {
if (provider.isLocal() || canRecurse) {
if (provider.isEnabled() && (provider.isLocal() || canRecurse)) {
usableProviders.add(provider)
}
}