use of org.apache.directory.ldap.client.api.DefaultPoolableLdapConnectionFactory in project Singularity by HubSpot.
the class SingularityLDAPDatastore method createConnectionPool.
private static LdapConnectionPool createConnectionPool(LDAPConfiguration configuration) throws IOException {
final LdapConnectionConfig config = new LdapConnectionConfig();
config.setLdapHost(configuration.getHostname());
config.setLdapPort(configuration.getPort());
config.setName(configuration.getBindDn());
config.setCredentials(configuration.getBindPassword());
final DefaultPoolableLdapConnectionFactory factory = new DefaultPoolableLdapConnectionFactory(config);
final LdapConnectionPool pool = new LdapConnectionPool(factory);
pool.setTestOnBorrow(configuration.isPoolTestOnBorrow());
pool.setTestOnReturn(configuration.isPoolTestOnReturn());
pool.setTestWhileIdle(configuration.isPoolTestWhileIdle());
pool.setMaxActive(configuration.getPoolMaxActive());
pool.setMaxIdle(configuration.getPoolMaxIdle());
pool.setMinIdle(configuration.getPoolMinIdle());
pool.setMaxWait(configuration.getPoolMaxWait());
switch(configuration.getPoolWhenExhaustedAction()) {
case BLOCK:
pool.setWhenExhaustedAction(LdapConnectionPool.WHEN_EXHAUSTED_BLOCK);
break;
case FAIL:
pool.setWhenExhaustedAction(LdapConnectionPool.WHEN_EXHAUSTED_FAIL);
break;
case GROW:
pool.setWhenExhaustedAction(LdapConnectionPool.WHEN_EXHAUSTED_GROW);
break;
default:
pool.setWhenExhaustedAction(LdapConnectionPool.DEFAULT_WHEN_EXHAUSTED_ACTION);
}
return pool;
}
use of org.apache.directory.ldap.client.api.DefaultPoolableLdapConnectionFactory in project directory-ldap-api by apache.
the class ApiLdapClientApiOsgiTest method useBundleClasses.
@Override
protected void useBundleClasses() throws Exception {
new LdapNetworkConnection().close();
new SaslGssApiRequest();
new Krb5LoginConfiguration();
new AddFuture(new LdapNetworkConnection(), 2);
new LdapConnectionTemplate(new LdapConnectionPool(new DefaultPoolableLdapConnectionFactory(new LdapConnectionConfig())));
FilterBuilder.and(FilterBuilder.not(FilterBuilder.contains("cn", "a", "b"))).toString();
// Test for DIRAPI-239
PoolableObjectFactory<LdapConnection> factory = new DefaultPoolableLdapConnectionFactory(new LdapConnectionConfig());
Config config = new Config();
LdapConnectionPool ldapConnectionPool = new LdapConnectionPool(factory, config);
ldapConnectionPool.getLdapApiService();
ldapConnectionPool.getTestOnBorrow();
}
Aggregations