示例#1
0
  public Usuario BuscarUsuarioDevolver(Usuario objeto) {
    boolean encontrado = false;
    Usuario auxiliar = null;

    /*
     * Se define un iterador inicializado con el iterador de la colección
     */
    Iterator iterador = UsuariosRegistrados.iterator();

    /*
     * Mientras no se encuentre el elemento y existan mas elementos en la
     * colección, se sigue entrando en el ciclo
     */
    while (!encontrado && iterador.hasNext()) {
      /*
       *  Se obtiene el siguiente objeto del iterador y se le hace un cast
       *  para asignarlo al objeto de tipo Nodo
       */
      auxiliar = (Usuario) iterador.next();

      /*
       * Se invoca al método equals de la clase Nodo para determinar si son
       * iguales. En caso de serlo, se encontró el elemento buscado
       */
      // if (objeto.equals(auxiliar))
      if ((objeto.getNickname().contentEquals(auxiliar.getNickname()))
          && (objeto.getClave().contentEquals(auxiliar.getClave()))) return (auxiliar);
    }
    return (objeto);
  }
示例#2
0
  public void ImprimirColeccion() {
    int i;
    Usuario registro;

    /*
     * Se define un arreglo de tipo Object (la clase genérica Java)
     */
    Object[] arreglo;

    /*
     * Se convierte la colección pasada como parámetro a un array, que
     * es asignado al arreglo de tipo Object
     */
    arreglo = UsuariosRegistrados.toArray();

    System.out.println("DATOS");

    /*
     * Se hace un recorrido del arreglo de tipo Object y se imprime
     * la información de la casilla i
     */
    for (i = 0; i < arreglo.length; i++) {
      registro = (Usuario) arreglo[i];
      System.out.println("Nick: " + registro.getNickname());
      System.out.println("Clave: " + registro.getClave());
      System.out.println("Nombre" + registro.getNombre());
      System.out.println();
    }

    System.out.println("\n\n");
  }
示例#3
0
  /**
   * Funcion que utiliza el servidor de autenticacion para autenticar a los usuarios provistos
   *
   * @param usuarios Lista con los usuarios a autenticar
   * @param puerto El puerto para conectarse al servidor de autenticacion
   * @return Booleano que indica si se pudo autenticar.
   * @throws MalformeURLException En caso de una URL mal formada
   * @throws RemoteException En caso de que el objeto remoto no este disponible
   * @throws NotBoundException En caso de que no se logre hacer el lookup
   */
  public static boolean autenticarCliente(ArrayList<Usuario> usuarios, int puerto) {

    // Acceder al servidor remoto de autenticacion
    String nActual = null;
    String cActual = null;
    boolean autenticado = false;

    try {

      s_rmifs_Interface auth =
          (s_rmifs_Interface) Naming.lookup("rmi://" + servidor + ":" + puerto + "/s_rmifs");

      for (Usuario usuActual : usuarios) {

        nActual = usuActual.getUsuario();
        cActual = usuActual.getClave();
        if (auth.autenticar(nActual, cActual)) {
          autenticado = true;
          break;
        }
      }

      // Manejo de excepciones.
    } catch (MalformedURLException murle) {
      System.out.println();
      System.out.println("MalformedURLException");
      System.out.println(murle);

    } catch (RemoteException re) {
      System.out.println();
      System.out.println("RemoteException");
      System.out.println(re);

    } catch (NotBoundException nbe) {
      System.out.println();
      System.out.println("NotBoundException");
      System.out.println(nbe);
    }

    // Si el usuario fue autenticado, guardar sus datos
    if (autenticado) {
      nombreCliente = nActual;
      claveCliente = cActual;
    }

    return autenticado;
  }
示例#4
0
  /**
   * Método public static void guardarArchivoXML(ListaUsuarios listaDeUsuarios): Este método permite
   * guardar la lista de usuarios en un archivo XML. El procesamiento se hace con jdom
   */
  public static void guardarArchivoXML(ListaUsuario listaDeUsuarios) {
    Usuario nodoAuxiliar;

    /* Se crea una raiz de la estructura */
    Element root = new Element("usuarios");

    /* Es posible agregar atributos a la estructura inicial */
    root.setAttribute("tipo", "lista de usuarios");

    Iterator iterador = listaDeUsuarios.getIterator();

    while (iterador.hasNext()) {
      /* Se crea la etiqueta "usuario" */
      Element usuarios = new Element("usuario");

      nodoAuxiliar = (Usuario) iterador.next();

      /* Se crean las etiquetas nombre, apellido y cargo */
      Element nick = new Element("nick");
      Element clave = new Element("clave");
      Element nombre = new Element("nombre");
      Element apellido = new Element("apellido");
      Element fechanac = new Element("fechanac");
      Element avatar = new Element("avatar");

      /* Se inicializa cada etiqueta con sus valores de la lista */
      nick.setText(nodoAuxiliar.getNickname());
      clave.setText(nodoAuxiliar.getClave());
      nombre.setText(nodoAuxiliar.getNombre());
      apellido.setText(nodoAuxiliar.getApellido());
      fechanac.setText(nodoAuxiliar.getFechanaci());
      avatar.setText(nodoAuxiliar.getAvatar());

      /* Se añaden las etiquetas a la etiqueta principal (usuario)    */
      /* estableciendo que un usuario tiene nombre, apellido y cargo  */
      usuarios.addContent(nick);
      usuarios.addContent(clave);
      usuarios.addContent(nombre);
      usuarios.addContent(apellido);
      usuarios.addContent(fechanac);
      usuarios.addContent(avatar);

      /* Se añade el nuevo usuario a la estructura XML */
      root.addContent(usuarios);
    }

    /* Se crea un documento nuevo */
    Document doc = new Document(root);

    try {
      /* Se genera un flujo de salida de datos XML */
      XMLOutputter out = new XMLOutputter();

      /* Se asocia el flujo de salida con el archivo donde se guardaran los datos */
      FileOutputStream file = new FileOutputStream(nombreArchivo);

      /* Se manda el documento generado hacia el archivo XML */
      out.output(doc, file);

      /* Se limpia el buffer ocupado por el objeto file y se manda a cerrar el archivo */
      file.flush();
      file.close();

      /* En este caso se manda a imprimir el archivo por la consola   */
      /* ESTE PROCESO NO ES OBLIGATORIO PARA PROCESAR EL XML          */
      out.output(doc, System.out);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }