Class Partie

java.lang.Object
   |
   +----java.rmi.server.RemoteObject
           |
           +----java.rmi.server.RemoteServer
                   |
                   +----java.rmi.server.UnicastRemoteObject
                           |
                           +----Partie

public class Partie
extends UnicastRemoteObject
implements PartieInterfaceDistante
Localisation: SERVEUR
Classe qui represente la classe la plus importante de l'application, C'est cette classe qui est lancee sur le Serveur a travers le programme principale sur Serveur


Variable Index

 o JEU_NB_POINTS
Limite du score maximum pour le vainqueur de la parite, le vainqueur declare sera celui qui aura atteint NB_POINTS_VAINQUEUR points ou le premier a l'issu de NB_QUESTIONS_MAX questions
 o JEU_NB_QUESTIONS
Limite de questions pour la fin du jeu
 o nbClients
Nombre de clients partcipants a la partie
 o nbQuestionsPosees
variable totalisant les questions posees
 o nbQuestionsTraitees
variable totalisant les reponses aux questions permettant ainsi lors d'une premiere bonne reponse de finir la question
 o questionnaire
Questionnaire du jeu ou sont tirees les questions posees
 o scores
Scores de la partie
 o vectorJoueursNoms
Liste des noms des joueurs, utiles pour l'affichage dans les scores Ce vecteur qui sera demande par les clients afin d'afficher les noms dans les scores des joueurs, les infos de ce vecteurs se retrouvent dans vectorJoueursRaffraichissable mais ce vecteur reste sur le serveur alors que celui ci non
 o vectorJoueursRaffraichissable
Liste des joueurs raffraichissables de la partie

Constructor Index

 o Partie(int)
Constructeur prenant en parametres le nombre de joueurs pour la partie ainsi que le fichier, ce constructeur est utilise pour la source par JDBC
 o Partie(int, String)
Constructeur prenant en parametres le nombre de joueurs pour la partie ainsi que le fichier, ce constructeur est utilise pour la source du questionnaire par fichier

Method Index

 o attente(int)
methode qui fait une attente du nombre de millisecondes specifies
 o broadcastEnabledButtons(boolean)
methode qui activent ou desactivent les boutons de tous les clients
 o broadcastMessage(String)
Envoi d'un message a tous les clients
 o broadcastNomsScores()
Envoi des noms des clients sur les scores a tous les clients
 o broadcastQuestion(Question)
Envoi d'une question a tous les clients
 o broadcastScores(Scores)
Envoi des scores a tous les clients
 o compteARebourg(int)
Genere un compte a rebourg sur les clients
 o connexion(JoueurRaffraichissable)
methode utilisee au demarrage de la connexion, il donne son instance de joueurRaffraichissable, afin que le serveur puisse y avoir acces pour l'affichage et le raffraichissement sur sa fenetre
 o deconnexion(int)
METHODE DISTANTE methode qui est utilisee pour la deconnexion du client et qui supprime les informations du joueur sur le serveur
 o enregistrerReponse(int, int)
METHODE DISTANTE methode utilisee pour enregistrer les reponses des joueurs, cette methode verifie la reponse, en cqs de bonne reponse incremente le score du joueur de 1, sinon decremente de 1, en cas de bonne reponse, on passe a la suivante.
 o getInformations()
methode qui renvoit les informations pour l'affichage client, cette methode est principalement utilisee lors du demarrage de l'application
 o getTailleQuestionnaire()
Taille du questionnaire
 o getVectorJoueursNoms()
METHODE DISTANTE methode qui est utilisee pour l'affichage des noms des scores au fur et a mesure de l'arrivee des cllients sur la partie cliente
 o indexVainqueur()
renvoit l'index du vainqueur
 o init()
methode commune pour les constructeurs
 o initConnexion(JoueurRaffraichissable)
Le jeu commence apres connexion de nbClients joueurs
 o isPartieCommence()
METHODE DISTANTE methode renvoyant vrai si le jeu a commence, Le jeu commence apres connexion de nbClients joueurs
 o isPartieFinie()
METHODE DISTANTE methode renvoyant vrai si le jeu a fini, Le jeu commence apres connexion de nbClients joueurs.
 o joueur(int)
renvoit le Joueur du numero de client demande
 o joueurRaffraichissable(int)
renvoit le JoueurRaffraichissable du numero de client demande
 o nbJoueursConnectes()
METHODE DISTANTE methode qui renvoit le nombre de joueurs actuellement connectes et qui sont en attente d'une partie
 o nbJoueursNecessaires()
METHODE DISTANTE methode qui renvoit le nombre de joueurs necesaires
 o nomJoueurRaffraichissable(int)
renvoit le nom du Joueur du numero de client demande
 o numeroJoueurRaffraichissable(int)
renvoit le numero du Joueur du numero de client demande
 o sendMessage(String, int)
Methode qui envoit un message sur le client
 o sendMessageOthers(String, int)
envoie un message a tous les joueurs excepte numJoueur
 o sendQuestion(Question, int)
Envoi d'une question a un client specifique

Variables

 o questionnaire
 private Questionnaire questionnaire
Questionnaire du jeu ou sont tirees les questions posees

 o scores
 private Scores scores
Scores de la partie

 o vectorJoueursRaffraichissable
 private Vector vectorJoueursRaffraichissable
Liste des joueurs raffraichissables de la partie

 o nbClients
 private int nbClients
Nombre de clients partcipants a la partie

 o JEU_NB_QUESTIONS
 private static final int JEU_NB_QUESTIONS
Limite de questions pour la fin du jeu

 o JEU_NB_POINTS
 private static final int JEU_NB_POINTS
Limite du score maximum pour le vainqueur de la parite, le vainqueur declare sera celui qui aura atteint NB_POINTS_VAINQUEUR points ou le premier a l'issu de NB_QUESTIONS_MAX questions

 o vectorJoueursNoms
 private Vector vectorJoueursNoms
Liste des noms des joueurs, utiles pour l'affichage dans les scores Ce vecteur qui sera demande par les clients afin d'afficher les noms dans les scores des joueurs, les infos de ce vecteurs se retrouvent dans vectorJoueursRaffraichissable mais ce vecteur reste sur le serveur alors que celui ci non

 o nbQuestionsPosees
 private int nbQuestionsPosees
variable totalisant les questions posees

 o nbQuestionsTraitees
 private int nbQuestionsTraitees
variable totalisant les reponses aux questions permettant ainsi lors d'une premiere bonne reponse de finir la question

Constructors

 o Partie
 public Partie(int nbClients,
               String fichier) throws RemoteException
Constructeur prenant en parametres le nombre de joueurs pour la partie ainsi que le fichier, ce constructeur est utilise pour la source du questionnaire par fichier

 o Partie
 public Partie(int nbClients) throws RemoteException
Constructeur prenant en parametres le nombre de joueurs pour la partie ainsi que le fichier, ce constructeur est utilise pour la source par JDBC

Methods

 o init
 private void init()
methode commune pour les constructeurs

 o getTailleQuestionnaire
 public int getTailleQuestionnaire() throws RemoteException
Taille du questionnaire

 o isPartieCommence
 public boolean isPartieCommence() throws RemoteException
METHODE DISTANTE methode renvoyant vrai si le jeu a commence, Le jeu commence apres connexion de nbClients joueurs

 o isPartieFinie
 public boolean isPartieFinie() throws RemoteException
METHODE DISTANTE methode renvoyant vrai si le jeu a fini, Le jeu commence apres connexion de nbClients joueurs. La fin de la partie lorsque le vainqueur sera determine, le vainqueur declare sera celui qui aura atteint NB_POINTS_VAINQUEUR points ou le premier a l'issu de NB_QUESTIONS_MAX questions

 o enregistrerReponse
 public synchronized void enregistrerReponse(int numJoueur,
                                             int numReponse) throws RemoteException
METHODE DISTANTE methode utilisee pour enregistrer les reponses des joueurs, cette methode verifie la reponse, en cqs de bonne reponse incremente le score du joueur de 1, sinon decremente de 1, en cas de bonne reponse, on passe a la suivante. Cette methode est de modifier synchronized pour eviter les acces concurents Lorsqu'un client veut repondre, il est identifie par son numero de joueur, et il donne sa proposition en specifiant le numero de sa proposition

 o nbJoueursNecessaires
 public synchronized int nbJoueursNecessaires() throws RemoteException
METHODE DISTANTE methode qui renvoit le nombre de joueurs necesaires

 o nbJoueursConnectes
 public int nbJoueursConnectes() throws RemoteException
METHODE DISTANTE methode qui renvoit le nombre de joueurs actuellement connectes et qui sont en attente d'une partie

 o getVectorJoueursNoms
 public Vector getVectorJoueursNoms() throws RemoteException
METHODE DISTANTE methode qui est utilisee pour l'affichage des noms des scores au fur et a mesure de l'arrivee des cllients sur la partie cliente

 o initConnexion
 private synchronized void initConnexion(JoueurRaffraichissable joueurRaffraichissable) throws RemoteException
Le jeu commence apres connexion de nbClients joueurs

 o connexion
 public void connexion(JoueurRaffraichissable joueurRaffraichissable) throws RemoteException
methode utilisee au demarrage de la connexion, il donne son instance de joueurRaffraichissable, afin que le serveur puisse y avoir acces pour l'affichage et le raffraichissement sur sa fenetre

 o compteARebourg
 private void compteARebourg(int nbSecondes)
Genere un compte a rebourg sur les clients

 o deconnexion
 public void deconnexion(int numJoueur) throws RemoteException
METHODE DISTANTE methode qui est utilisee pour la deconnexion du client et qui supprime les informations du joueur sur le serveur

 o sendMessage
 private void sendMessage(String s,
                          int numJoueur) throws RemoteException
Methode qui envoit un message sur le client

 o sendMessageOthers
 private void sendMessageOthers(String s,
                                int numJoueur) throws RemoteException
envoie un message a tous les joueurs excepte numJoueur

 o broadcastMessage
 private void broadcastMessage(String s) throws RemoteException
Envoi d'un message a tous les clients

 o broadcastQuestion
 private void broadcastQuestion(Question question) throws RemoteException
Envoi d'une question a tous les clients

 o sendQuestion
 private void sendQuestion(Question question,
                           int numJoueur) throws RemoteException
Envoi d'une question a un client specifique

 o broadcastNomsScores
 private void broadcastNomsScores() throws RemoteException
Envoi des noms des clients sur les scores a tous les clients

 o broadcastScores
 private void broadcastScores(Scores scores) throws RemoteException
Envoi des scores a tous les clients

 o joueurRaffraichissable
 private JoueurRaffraichissable joueurRaffraichissable(int num)
renvoit le JoueurRaffraichissable du numero de client demande

 o joueur
 private Joueur joueur(int num)
renvoit le Joueur du numero de client demande

 o nomJoueurRaffraichissable
 private String nomJoueurRaffraichissable(int num)
renvoit le nom du Joueur du numero de client demande

 o numeroJoueurRaffraichissable
 private int numeroJoueurRaffraichissable(int num)
renvoit le numero du Joueur du numero de client demande

 o attente
 private void attente(int ms)
methode qui fait une attente du nombre de millisecondes specifies

 o getInformations
 public Informations getInformations() throws RemoteException
methode qui renvoit les informations pour l'affichage client, cette methode est principalement utilisee lors du demarrage de l'application

 o broadcastEnabledButtons
 private void broadcastEnabledButtons(boolean b) throws RemoteException
methode qui activent ou desactivent les boutons de tous les clients

 o indexVainqueur
 private int indexVainqueur()
renvoit l'index du vainqueur