Ejemplo n.º 1
0
  public Vector<LDAPUser> getUserListLDAP() throws LDAPException {

    LDAPConnection connection = connectionPool.getConnection();

    /*patron para la busqueda de todos los usuarios*/
    String attb = "(" + atributoRol + "=" + rol + ")";

    /*buequeda de todos los usuarios que cumplan el patron*/
    LDAPSearchResults results = connection.search(base, LDAPv3.SCOPE_SUB, attb, null, false);

    LDAPAttribute ldapAttribute = null;
    LDAPUser usuario = null;
    LDAPEntry ldapEntry = null;

    Vector<LDAPUser> listUsers = new Vector<LDAPUser>();

    /*guardamos los usuarios en un array de usuarios con la información que nos interesa*/
    while (results.hasMoreElements()) {
      usuario = new LDAPUser();
      usuario = inicilizaUsuario(usuario);
      ldapEntry = (LDAPEntry) results.next();
      ldapAttribute = ldapEntry.getAttribute("uid");
      usuario.setName(ldapAttribute.getStringValues().nextElement().toString().toUpperCase());
      ldapAttribute = ldapEntry.getAttribute("cn");
      usuario.setNombreCompleto(ldapAttribute.getStringValues().nextElement().toString());
      ldapAttribute = ldapEntry.getAttribute("sn");
      usuario.setNombre(ldapAttribute.getStringValues().nextElement().toString());
      ldapAttribute = ldapEntry.getAttribute("mail");
      if (ldapAttribute != null) {
        usuario.setMail(ldapAttribute.getStringValues().nextElement().toString());
      }

      listUsers.add(usuario);
    }

    connectionPool.close(connection);

    return listUsers;
  }