Package com.netflox.form

Source Code of com.netflox.form.Connexion

package com.netflox.form;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import com.netflox.dao.MysqlGestionUtilisateur;
import com.netflox.model.Utilisateur;

public class Connexion {
  private static final String CHAMP_PSEUDO = "pseudo";
  private static final String CHAMP_PASS = "motdepasse";
  private static final String EXIST_USER = "userexist";
 
  private String resultat;
  private Map<String, String> erreurs = new HashMap<String, String>();

  public String getResultat() {
    return resultat;
  }

  public Map<String, String> getErreurs() {
    return erreurs;
  }

  public Utilisateur connectionUtilisateur(HttpServletRequest request) {
    String pseudo = getValeurChamp(request, CHAMP_PSEUDO);
    String motDePasse = getValeurChamp(request, CHAMP_PASS);
   
    Utilisateur utilisateur = new Utilisateur();

    try {
      validationPseudo(pseudo);
    } catch (Exception e) {
      setErreur(CHAMP_PSEUDO, e.getMessage());
    }
    utilisateur.setPseudo(pseudo);

    try {
      validationMotsDePasse(motDePasse);
    } catch (Exception e) {
      setErreur(CHAMP_PASS, e.getMessage());     
    }   
    utilisateur.setMotDePasse(motDePasse);
   
    MysqlGestionUtilisateur db = new MysqlGestionUtilisateur();
    if(!db.canConnectUtilisateur(utilisateur))
      setErreur(EXIST_USER, "Pseudo ou mot de passe incorrect ");
   
    if (erreurs.isEmpty()) {
      resultat = "Succès de la connection.";
    } else {
      resultat = "Échec de la connection.";
    }

    return utilisateur;
  }

  private void validationPseudo(String pseudo) throws Exception {
    if (pseudo != null) {
      if (pseudo.length() < 3) {
        throw new Exception("Merci de saisir un pseudo valide ");
      }
    } else {
      throw new Exception("Merci de saisir un pseudo.");
    }
  }

  private void validationMotsDePasse(String motDePasse)
      throws Exception {
    if(motDePasse != null){
     if (motDePasse.length() < 3) {
        throw new Exception("Mot de passe invalide");
      }
    }
     else {
      throw new Exception(
          "Merci de saisir votre mot de passe.");
    }
  }

  /*
   * Ajoute un message correspondant au champ spécifié à la map des erreurs.
   */
  private void setErreur(String champ, String message) {
    erreurs.put(champ, message);
  }

  /*
   * Méthode utilitaire qui retourne null si un champ est vide, et son contenu
   * sinon.
   */
  private static String getValeurChamp(HttpServletRequest request,
      String nomChamp) {
    String valeur = request.getParameter(nomChamp);
    if (valeur == null || valeur.trim().length() == 0) {
      return null;
    } else {
      return valeur.trim();
    }
  }
}
TOP

Related Classes of com.netflox.form.Connexion

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.