Search in sources :

Example 1 with ServerGuesser

use of org.codice.ddf.admin.ldap.commons.ServerGuesser in project admin-console-beta by connexta.

the class LdapUserAttributes method performFunction.

@Override
public StringField.ListImpl performFunction() {
    StringField.ListImpl entries = null;
    try (LdapConnectionAttempt connectionAttempt = utils.bindUserToLdapConnection(conn, bindInfo)) {
        addErrorMessages(connectionAttempt);
        if (containsErrorMsgs()) {
            return null;
        }
        ServerGuesser serverGuesser = ServerGuesser.buildGuesser(connectionAttempt.getResult());
        Set<String> ldapEntryAttributes = serverGuesser.getClaimAttributeOptions(baseUserDn.getValue());
        entries = new StringField.ListImpl();
        entries.setValue(Arrays.asList(ldapEntryAttributes.toArray()));
    } catch (IOException e) {
        LOGGER.warn("Error closing LDAP connection", e);
    }
    return entries;
}
Also used : StringField(org.codice.ddf.admin.common.fields.base.scalar.StringField) IOException(java.io.IOException) LdapConnectionAttempt(org.codice.ddf.admin.ldap.commons.LdapConnectionAttempt) ServerGuesser(org.codice.ddf.admin.ldap.commons.ServerGuesser)

Example 2 with ServerGuesser

use of org.codice.ddf.admin.ldap.commons.ServerGuesser in project admin-console-beta by connexta.

the class LdapRecommendedSettings method performFunction.

@Override
public LdapRecommendedSettingsField performFunction() {
    try (LdapConnectionAttempt connectionAttempt = utils.bindUserToLdapConnection(conn, creds)) {
        addErrorMessages(connectionAttempt);
        if (!connectionAttempt.isResultPresent()) {
            return null;
        }
        ServerGuesser guesser = ServerGuesser.buildGuesser(ldapType.getValue(), connectionAttempt.getResult());
        return new LdapRecommendedSettingsField().userDns(guesser.getUserBaseChoices()).groupDns(guesser.getGroupBaseChoices()).loginUserAttributes(guesser.getLoginUserAttribute()).groupObjectClasses(guesser.getGroupObjectClass()).groupAttributesHoldingMember(guesser.getGroupAttributeHoldingMember()).memberAttributesReferencedInGroup(guesser.getMemberAttributeReferencedInGroup()).queryBases(guesser.getBaseContexts());
    } catch (IOException e) {
        LOGGER.warn("Error closing LDAP connection", e);
        return null;
    }
}
Also used : LdapRecommendedSettingsField(org.codice.ddf.admin.ldap.fields.query.LdapRecommendedSettingsField) IOException(java.io.IOException) LdapConnectionAttempt(org.codice.ddf.admin.ldap.commons.LdapConnectionAttempt) ServerGuesser(org.codice.ddf.admin.ldap.commons.ServerGuesser)

Aggregations

IOException (java.io.IOException)2 LdapConnectionAttempt (org.codice.ddf.admin.ldap.commons.LdapConnectionAttempt)2 ServerGuesser (org.codice.ddf.admin.ldap.commons.ServerGuesser)2 StringField (org.codice.ddf.admin.common.fields.base.scalar.StringField)1 LdapRecommendedSettingsField (org.codice.ddf.admin.ldap.fields.query.LdapRecommendedSettingsField)1