public LDAPBaseSecurityServiceConfig(LDAPBaseSecurityServiceConfig other) { super(other); serverURL = other.getServerURL(); groupSearchBase = other.getGroupSearchBase(); groupFilter = other.getGroupFilter(); adminGroup = other.getAdminGroup(); groupAdminGroup = other.getGroupAdminGroup(); bindBeforeGroupSearch = other.isBindBeforeGroupSearch(); userFilter = other.getUserFilter(); useTLS = other.isUseTLS(); user = other.getUser(); password = other.getPassword(); }
if (ldapConfig.isBindBeforeGroupSearch()) { user = ldapConfig.getUser(); password = ldapConfig.getPassword(); template = new BindingLdapTemplate(ldapContext); } else { if (!isEmpty(ldapConfig.getGroupSearchBase())) { groupSearchBase = ldapConfig.getGroupSearchBase(); if (!isEmpty(ldapConfig.getUserSearchBase())) { userSearchBase = ldapConfig.getUserSearchBase(); if (!isEmpty(ldapConfig.getGroupSearchFilter())) { groupMembershipFilter = ldapConfig.getGroupSearchFilter(); Matcher m = lookForMembershipAttribute.matcher(groupMembershipFilter); if (m.matches()) { if (isEmpty(ldapConfig.getGroupMembershipAttribute())) { groupMembershipAttribute = m.group(1); if (!isEmpty(ldapConfig.getGroupMembershipAttribute())) { groupMembershipAttribute = ldapConfig.getGroupMembershipAttribute(); if (isEmpty(ldapConfig.getGroupSearchFilter())) { groupMembershipFilter = groupMembershipAttribute + "={0}"; if (!isEmpty(ldapConfig.getGroupFilter())) { groupNameFilter = ldapConfig.getGroupFilter(); if (isEmpty(ldapConfig.getGroupNameAttribute())) { Matcher m = lookForMembershipAttribute.matcher(groupNameFilter);