Package chatapp.Model

Class DataBase

java.lang.Object
chatapp.Model.DataBase

public class DataBase
extends java.lang.Object

Classe representant la Base de données. Celle-ci stocke la liste des utilisateurs ainsi que les échanges entre eux

  • Constructor Summary

    Constructors 
    Constructor Description
    DataBase()
    Constructeur de la database On installe le driver et on établit la connection.
  • Method Summary

    Modifier and Type Method Description
    void ajoutHistorique​(java.lang.String IDdest, java.lang.String IDsrc, java.lang.String Msg)
    Methode permettant de mettre a jour le pseudo d'un utilisateur en fonction de son ID dans la base de donnee
    void ajoutUtilisateurs​(java.lang.String ID, java.lang.String Pseudo)
    Methode permettant d'ajouter un utilisateur dans la base de donnée si celui-ci n'existe pas deja
    void CreationTableHistorique​(java.lang.String ID1, java.lang.String ID2)
    Methode permettant de creer une table pour stocker les messages entre deux utilisateurs
    static DataBase getInstance()
    Méthode permettant de renvoyer une instance de la classe DataBase
    java.lang.String getNomTable​(Utilisateur U1, Utilisateur U2)  
    boolean idExiste​(java.lang.String ID)
    Methode permettant de savoir si un utilisateur existe dans la base de donnée 'Utilisateurs'
    void majPseudo​(java.lang.String ID, java.lang.String Pseudo)
    Methode permettant de mettre a jour le pseudo d'un utilisateur en fonction de son ID dans la base de donnee
    void majUtilisateursActifs​(java.lang.Boolean Connecte, java.lang.String Id)
    Methode permettant de mettre a jour les utilisateurs actuellement actif
    java.lang.String recupMsg​(java.lang.String ID, java.lang.String IDdestinataire, int deb, int fin)
    Methode permettant de recuperer les messages d'une plage de donnée [deb,fin] envoyés entre 2 utilisateurs
    java.lang.String recupNMsg​(java.lang.String ID, java.lang.String IDdestinataire, int N)
    Methode permettant de recuperer les N derniers messages envoyés entre 2 utilisateurs
    java.lang.Integer tailleBDD​(java.lang.String nomTable)
    Cette méthode sert à recuperer la taille d'un base de donnée

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DataBase

      public DataBase()
      Constructeur de la database On installe le driver et on établit la connection.
  • Method Details

    • getInstance

      public static DataBase getInstance()
      Méthode permettant de renvoyer une instance de la classe DataBase
      Returns:
      Retourne l'instance du singleton DataBase.
    • CreationTableHistorique

      public void CreationTableHistorique​(java.lang.String ID1, java.lang.String ID2)
      Methode permettant de creer une table pour stocker les messages entre deux utilisateurs
      Parameters:
      ID1 - Id du premier utilisateur
      ID2 - Id du second utilisateur
    • majPseudo

      public void majPseudo​(java.lang.String ID, java.lang.String Pseudo)
      Methode permettant de mettre a jour le pseudo d'un utilisateur en fonction de son ID dans la base de donnee
      Parameters:
      ID - Id de l'utilisateur qui vient de changer de pseudo
      Pseudo - Nouveau Pseudo de l'utilisateur
    • ajoutHistorique

      public void ajoutHistorique​(java.lang.String IDdest, java.lang.String IDsrc, java.lang.String Msg)
      Methode permettant de mettre a jour le pseudo d'un utilisateur en fonction de son ID dans la base de donnee
      Parameters:
      IDdest - Id de l'utilisateur Destinataire du message
      IDsrc - Id de celui qui envoi le message
      Msg - Message envoye entre les deux utilisateurs
    • ajoutUtilisateurs

      public void ajoutUtilisateurs​(java.lang.String ID, java.lang.String Pseudo)
      Methode permettant d'ajouter un utilisateur dans la base de donnée si celui-ci n'existe pas deja
      Parameters:
      ID - Id de l'utilisateur que l'on veut rajouter
      Pseudo - pseudo actuelle de l'utilisateur
    • majUtilisateursActifs

      public void majUtilisateursActifs​(java.lang.Boolean Connecte, java.lang.String Id)
      Methode permettant de mettre a jour les utilisateurs actuellement actif
      Parameters:
      Id - Id de l'utilisateur qui vient de se connecter ou deconnecter
      Connecte - Boolean true si il est connecte , false sinon
    • recupNMsg

      public java.lang.String recupNMsg​(java.lang.String ID, java.lang.String IDdestinataire, int N)
      Methode permettant de recuperer les N derniers messages envoyés entre 2 utilisateurs
      Parameters:
      ID - Utilisateur associé a ChatApp
      IDdestinataire - Celui avec qui correspond ID
      N - le nombre de messages souhaités
      Returns:
      Les N derniers Messages
    • recupMsg

      public java.lang.String recupMsg​(java.lang.String ID, java.lang.String IDdestinataire, int deb, int fin)
      Methode permettant de recuperer les messages d'une plage de donnée [deb,fin] envoyés entre 2 utilisateurs
      Parameters:
      ID - Utilisateur associé a ChatApp
      IDdestinataire - Celui avec qui correspond ID
      deb - On veut les messages à partir de l'indice deb
      fin - On veut les messages jusqu'a l'indice fin
      Returns:
      Les messages d'une plage de donnée [deb,fin]
    • tailleBDD

      public java.lang.Integer tailleBDD​(java.lang.String nomTable)
      Cette méthode sert à recuperer la taille d'un base de donnée
      Parameters:
      nomTable - Nom de la table de donnée dont on veut récuperer le nom
      Returns:
      Taille de la BDD
    • idExiste

      public boolean idExiste​(java.lang.String ID)
      Methode permettant de savoir si un utilisateur existe dans la base de donnée 'Utilisateurs'
      Parameters:
      ID - On recherche l'utilisateur dont l'ID est ID
      Returns:
      True si l'utilisateur existe , False sinon
    • getNomTable

      public java.lang.String getNomTable​(Utilisateur U1, Utilisateur U2)