GestionBddDAO

## Class ConnexionBDD

- java.lang.Object
- - GestionBddDAO.ConnexionBDD

-     public class ConnexionBDD
      extends java.lang.Object

  Classe DAO offrant une surcouche pour l'interaction avec la base de données.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private java.sql.Connection` | `connexionbdd` Represente la connexion à la base de données.
    `private GestionCategories` | `gestionCategories` Objet permettant la gestion des catégories dans la base de données.
    `private GestionQuestions` | `gestionQuestions` Objet permettant la gestion des questions dans la base de données.
    `private GestionReponses` | `gestionReponses` Objet permettant la gestion des réponses dans la base de données.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ConnexionBDD()` Constructeur par defaut.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `connect(java.lang.String nomBdd, long port, java.lang.String ip, java.lang.String login, java.lang.String password)` Initie la connexion à la base de données, avec un time-out de 5 secondes.
    `void` | `createCategorie(java.lang.String categorieName)` Crée une nouvelle catégorie.
    `void` | `createQuestion(java.lang.String intitule, java.lang.String reponse1, java.lang.String reponse2, int num_reponse)` Crée une nouvelle question.
    `void` | `createReponses(java.lang.String nomCategorie, java.lang.String reponse1, java.lang.String reponse2)` Crée un nouveau jeu de réponses.
    `void` | `deleteCategorie(java.lang.String categorieName)` Supprime une catégorie.
    `void` | `deleteQuestion(java.lang.String intitule, java.lang.String reponse1, java.lang.String reponse2)` Supprime une question de la base de données.
    `void` | `deleteReponses(java.lang.String reponse1, java.lang.String reponse2)` Supprime un jeu de réponses.
    `java.util.ArrayList<Categorie>` | `getListeCategorie()` Récupére la liste des catégorie depuis la base de données.
    `java.util.ArrayList<Question>` | `getListeQuestions(java.lang.String reponse1, java.lang.String reponse2)` Récupére la liste des questions liées à un jeu de réponses depuis la base de données.
    `java.util.ArrayList<Reponses>` | `getListeReponses(java.lang.String catName)` Permet d'obtenir la liste des jeux de réponses depuis la base de données.
    `void` | `modifyQuestion(java.lang.String oldIntitule, java.lang.String newIntitule, java.lang.String reponse1, java.lang.String reponse2, int newNum_reponse)` Modifie une question.
    `void` | `modifyReponses(java.lang.String categorie, java.lang.String oldRep1, java.lang.String oldRep2, java.lang.String newRep1, java.lang.String newRep2)` Modifie un jeu de réponses.
    `void` | `renameCategorie(java.lang.String oldCategorieName, java.lang.String newCategorieName)` Rennome une catégorie.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### connexionbdd

          private java.sql.Connection connexionbdd

      Represente la connexion à la base de données.

    - #### gestionCategories

          private GestionCategories gestionCategories

      Objet permettant la gestion des catégories dans la base de données.

    - #### gestionReponses

          private GestionReponses gestionReponses

      Objet permettant la gestion des réponses dans la base de données.

    - #### gestionQuestions

          private GestionQuestions gestionQuestions

      Objet permettant la gestion des questions dans la base de données.

  - ### Constructor Detail

    - #### ConnexionBDD

          public ConnexionBDD()

      Constructeur par defaut. Charge le driver mysql. Arret du programme si il n'est pas trouvé.

  - ### Method Detail

    - #### connect

          public boolean connect(java.lang.String nomBdd,
                        long port,
                        java.lang.String ip,
                        java.lang.String login,
                        java.lang.String password)

      Initie la connexion à la base de données, avec un time-out de 5 secondes.
      Parameters:
        `nomBdd` - Le nom de la base.
        `port` - Le port du serveur.
        `ip` - L'adresse IP du serveur.
        `login` - Le login de l'utilisateur sur le serveur.
        `password` - Le mot de passe de l'utilisateur sur le serveur.
      Returns:
        true si la connexion est effectué, false sinon.

    - #### getListeCategorie

          public java.util.ArrayList<Categorie> getListeCategorie()
                                                           throws BDDException

      Récupére la liste des catégorie depuis la base de données.
      Returns:
        Un tableau d'objet catégorie.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### createCategorie

          public void createCategorie(java.lang.String categorieName)
                               throws BDDException

      Crée une nouvelle catégorie.
      Parameters:
        `categorieName` - Le nom de la catégorie à créer.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### deleteCategorie

          public void deleteCategorie(java.lang.String categorieName)
                               throws BDDException

      Supprime une catégorie.
      Parameters:
        `categorieName` - Le nom de la catégorie à supprimer.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### renameCategorie

          public void renameCategorie(java.lang.String oldCategorieName,
                             java.lang.String newCategorieName)
                               throws BDDException

      Rennome une catégorie.
      Parameters:
        `oldCategorieName` - Le nom de la catégorie à rennomer.
        `newCategorieName` - Le nouveau nom de la catégorie.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### getListeReponses

          public java.util.ArrayList<Reponses> getListeReponses(java.lang.String catName)
                                                         throws BDDException

      Permet d'obtenir la liste des jeux de réponses depuis la base de données.
      Parameters:
        `catName` - La catégorie des jeux de réponses à récupérer.
      Returns:
        Un tableau d'objet Réponses.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### createReponses

          public void createReponses(java.lang.String nomCategorie,
                            java.lang.String reponse1,
                            java.lang.String reponse2)
                              throws BDDException

      Crée un nouveau jeu de réponses.
      Parameters:
        `nomCategorie` - La catégorie du jeu de réponses.
        `reponse1` - La réponse une du jeu à créer.
        `reponse2` - La réponse deux du jeu à créer.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### deleteReponses

          public void deleteReponses(java.lang.String reponse1,
                            java.lang.String reponse2)
                              throws BDDException

      Supprime un jeu de réponses.
      Parameters:
        `reponse1` - La réponse une du jeu à supprimer.
        `reponse2` - La réponse deux du jeu à supprimer.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### modifyReponses

          public void modifyReponses(java.lang.String categorie,
                            java.lang.String oldRep1,
                            java.lang.String oldRep2,
                            java.lang.String newRep1,
                            java.lang.String newRep2)
                              throws BDDException

      Modifie un jeu de réponses.
      Parameters:
        `categorie` - Nouvelle catégorie.
        `oldRep1` - Ancienne réponse une.
        `oldRep2` - Ancienne réponse deux.
        `newRep1` - Nouvelle réponse une.
        `newRep2` - Nouvelle réponse deux.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### getListeQuestions

          public java.util.ArrayList<Question> getListeQuestions(java.lang.String reponse1,
                                                        java.lang.String reponse2)
                                                          throws BDDException

      Récupére la liste des questions liées à un jeu de réponses depuis la base de données.
      Parameters:
        `reponse1` - La réponse une du jeu de réponses lié.
        `reponse2` - la réponse deux du jeu de réponses lié.
      Returns:
        Un tableau d'objet Question.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### createQuestion

          public void createQuestion(java.lang.String intitule,
                            java.lang.String reponse1,
                            java.lang.String reponse2,
                            int num_reponse)
                              throws BDDException

      Crée une nouvelle question.
      Parameters:
        `intitule` - Intitulé de la question.
        `reponse1` - Réponse une du jeu de question lié.
        `reponse2` - Réponse une du jeu de question lié.
        `num_reponse` - Numéro de la bonne réponses (1: reponse1, 2: réponse2, 0: les deux)
      Throws:
        `BDDException` - Si une erreur mysql survient.

    - #### deleteQuestion

          public void deleteQuestion(java.lang.String intitule,
                            java.lang.String reponse1,
                            java.lang.String reponse2)
                              throws BDDException

      Supprime une question de la base de données.
      Parameters:
        `intitule` - Intitulé de la question à supprimer.
        `reponse1` - Réponse une du jeu de question lié à la question à supprimer.
        `reponse2` - Réponse deux du jeu de question lié à la question à supprimer.
      Throws:
        `BDDException` - Si une erreur SQL survient.

    - #### modifyQuestion

          public void modifyQuestion(java.lang.String oldIntitule,
                            java.lang.String newIntitule,
                            java.lang.String reponse1,
                            java.lang.String reponse2,
                            int newNum_reponse)
                              throws BDDException

      Modifie une question.
      Parameters:
        `oldIntitule` - Ancien intitulé de la question à modifier.
        `newIntitule` - Nouvel intitulé de la question à modifier.
        `reponse1` - Réponse une du jeu de question lié.
        `reponse2` - Réponse deux du jeu de question lié.
        `newNum_reponse` - Nouveau numéro de la bonne réponse (1: reponse1, 2: réponse2, 0: les deux)
      Throws:
        `BDDException`