Polish "Add Docker Compose service connection support for OpenLDAP"

See gh-39258
This commit is contained in:
Scott Frederick
2024-01-22 16:33:59 -06:00
parent eb940c3907
commit bee6fe899c
13 changed files with 56 additions and 60 deletions

View File

@@ -35,22 +35,22 @@ import org.springframework.boot.testcontainers.service.connection.ServiceConnect
*
* @author Philipp Kessler
*/
class LdapContainerConnectionDetailsFactory
class OpenLdapContainerConnectionDetailsFactory
extends ContainerConnectionDetailsFactory<Container<?>, LdapConnectionDetails> {
LdapContainerConnectionDetailsFactory() {
OpenLdapContainerConnectionDetailsFactory() {
super("osixia/openldap");
}
@Override
protected LdapConnectionDetails getContainerConnectionDetails(ContainerConnectionSource<Container<?>> source) {
return new LdapContainerConnectionDetailsFactory.LdapContainerConnectionDetails(source);
return new OpenLdapContainerConnectionDetails(source);
}
private static final class LdapContainerConnectionDetails extends ContainerConnectionDetails<Container<?>>
private static final class OpenLdapContainerConnectionDetails extends ContainerConnectionDetails<Container<?>>
implements LdapConnectionDetails {
private LdapContainerConnectionDetails(ContainerConnectionSource<Container<?>> source) {
private OpenLdapContainerConnectionDetails(ContainerConnectionSource<Container<?>> source) {
super(source);
}
@@ -65,14 +65,13 @@ class LdapContainerConnectionDetailsFactory
@Override
public String getBase() {
String baseDn = getContainer().getEnvMap().getOrDefault("LDAP_BASE_DN", null);
if (baseDn == null) {
baseDn = Arrays
.stream(getContainer().getEnvMap().getOrDefault("LDAP_DOMAIN", "example.org").split("\\."))
.map("dc=%s"::formatted)
.collect(Collectors.joining(","));
Map<String, String> env = getContainer().getEnvMap();
if (env.containsKey("LDAP_BASE_DN")) {
return env.get("LDAP_BASE_DN");
}
return baseDn;
return Arrays.stream(env.getOrDefault("LDAP_DOMAIN", "example.org").split("\\."))
.map("dc=%s"::formatted)
.collect(Collectors.joining(","));
}
@Override

View File

@@ -16,7 +16,7 @@ org.springframework.boot.testcontainers.service.connection.flyway.FlywayContaine
org.springframework.boot.testcontainers.service.connection.elasticsearch.ElasticsearchContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.jdbc.JdbcContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.kafka.KafkaContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.ldap.LdapContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.ldap.OpenLdapContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.liquibase.LiquibaseContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.mongo.MongoContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.neo4j.Neo4jContainerConnectionDetailsFactory,\