correction de bug créer lors de l'étape précédente
This commit is contained in:
parent
12a6b7fcdf
commit
4f7ac87948
7 changed files with 46 additions and 34 deletions
|
@ -15,8 +15,7 @@ public class Main {
|
|||
GestionnaireListeUtilisateur.instance().ecoute2(2001); //enlever le 2, debug //TODO PORT = 2001 à 2009
|
||||
|
||||
//on crée manuellement des utilisateurs
|
||||
GestionnaireListeUtilisateur.instance().envoie2("add$$$77$$$Moi$$$LocalHost");
|
||||
|
||||
GestionnaireListeUtilisateur.instance().envoie2("add$$$77$$$Moi$$$LocalHost$$$true");
|
||||
|
||||
//on met à jour notre liste
|
||||
GestionnaireListeUtilisateur.instance().majListe2(); //enlever le 2 //TODO
|
||||
|
|
|
@ -43,13 +43,13 @@ public class GestionnaireListeUtilisateur {
|
|||
|
||||
//Demande à tout le monde d'envoyer leur infos (TypeListeUtilisateur) --> Uniquement lors de la connexion
|
||||
public void majListe() {
|
||||
envoie("listRequest"+ "$$$" + " " + "$$$" + " " + "$$$" + " ");
|
||||
envoie("listRequest"+ "$$$" + " " + "$$$" + " " + "$$$" + " " + "$$$" + " ");
|
||||
|
||||
}
|
||||
|
||||
//debug local
|
||||
public void majListe2() {
|
||||
envoie2("listRequest"+ "$$$" + " " + "$$$" + " " + "$$$" + " ");
|
||||
envoie2("listRequest"+ "$$$" + " " + "$$$" + " " + "$$$" + " " + "$$$" + " ");
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -8,16 +8,16 @@ import ui.ListUI2;
|
|||
|
||||
public class TraitementCmdListe implements Runnable{
|
||||
|
||||
private String[] cmd; //ordre$$$id$$$nom$$$ip
|
||||
private String[] cmd; //ordre$$$id$$$nom$$$ip$$$dedans
|
||||
private Semaphore semaphore;
|
||||
|
||||
//Constructeur
|
||||
public TraitementCmdListe(String message, Semaphore semaphore) {
|
||||
this.cmd = message.split("\\$\\$\\$", 0);
|
||||
this.semaphore = semaphore;
|
||||
if(cmd.length != 4) {
|
||||
if(cmd.length != 5) {
|
||||
System.out.println("Erreur nombre d'arguments");
|
||||
this.cmd = new String[] {"", "", "", ""};
|
||||
this.cmd = new String[] {"", "", "", "", ""};
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -31,6 +31,7 @@ public class TraitementCmdListe implements Runnable{
|
|||
String id = cmd[1];
|
||||
String nom = cmd[2];
|
||||
String ip = cmd[3];
|
||||
String dedans = cmd[4];
|
||||
|
||||
if (ordre.equals("listRequest")) {
|
||||
for (int i = 2000; i<2010; i++) envoyerNom2(i); // à changer, debug //TODO
|
||||
|
@ -38,15 +39,15 @@ public class TraitementCmdListe implements Runnable{
|
|||
}
|
||||
|
||||
semaphore.acquireUninterruptibly();
|
||||
System.out.println("bloqué");
|
||||
//System.out.println("bloqué");
|
||||
|
||||
if (ordre.equals("delete")) {
|
||||
supprimeUtilisateur(GestionnaireListeUtilisateur.instance().getListeUtilisateur(), id);
|
||||
supprimeUtilisateur(id);
|
||||
}
|
||||
|
||||
if (ordre.equals("add") && !nom.equals("null")) {
|
||||
|
||||
ajouteUtilisateur(GestionnaireListeUtilisateur.instance().getListeUtilisateur(), id, nom, ip, ordre);
|
||||
ajouteUtilisateur(id, nom, ip, dedans); //TODO
|
||||
|
||||
|
||||
//debug
|
||||
|
@ -58,7 +59,7 @@ public class TraitementCmdListe implements Runnable{
|
|||
|
||||
}
|
||||
|
||||
System.out.println("libéré");
|
||||
//System.out.println("libéré");
|
||||
semaphore.release();
|
||||
|
||||
|
||||
|
@ -75,7 +76,7 @@ public class TraitementCmdListe implements Runnable{
|
|||
public void envoyerNom() { //localHost TODO (gerer IP, unhandle exception ...)
|
||||
GestionnaireListeUtilisateur.instance().envoie(
|
||||
"add"+ "$$$" + GestionnaireNom.instance().getId() + "$$$" +
|
||||
GestionnaireNom.instance().getNom() + "$$$" + GestionnaireNom.instance().getIp() );
|
||||
GestionnaireNom.instance().getNom() + "$$$" + GestionnaireNom.instance().getIp() + "$$$" + GestionnaireNom.instance().getDansReseau() );
|
||||
}
|
||||
|
||||
|
||||
|
@ -83,16 +84,17 @@ public class TraitementCmdListe implements Runnable{
|
|||
public void envoyerNom2(int port) { //localHost TODO (gerer IP, unhandle exception ...)
|
||||
GestionnaireListeUtilisateur.instance().envoie2(
|
||||
"add"+ "$$$" + GestionnaireNom.instance().getId() + "$$$" +
|
||||
GestionnaireNom.instance().getNom() + "$$$" + GestionnaireNom.instance().getIp() );
|
||||
GestionnaireNom.instance().getNom() + "$$$" + GestionnaireNom.instance().getIp() + "$$$" + GestionnaireNom.instance().getDansReseau() );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//Ajoute les utilisateurs à la listeUtilisateur
|
||||
private void ajouteUtilisateur(ArrayList<TypeListeUtilisateur> listeUtilisateur, String id, String nom, String ip, String ordre) {
|
||||
private void ajouteUtilisateur(String id, String nom, String ip, String dedans) {
|
||||
|
||||
boolean inListe = false;
|
||||
ArrayList<TypeListeUtilisateur> listeUtilisateur = GestionnaireListeUtilisateur.instance().getListeUtilisateur();
|
||||
|
||||
//si il est dans la liste on le renomme
|
||||
for (int i=0; i<listeUtilisateur.size(); i++) {
|
||||
|
@ -106,7 +108,13 @@ public class TraitementCmdListe implements Runnable{
|
|||
|
||||
//s'il n'est pas dans la liste on la rajoute
|
||||
if (!inListe) {
|
||||
listeUtilisateur.add(new TypeListeUtilisateur(id, nom, ip, null));
|
||||
if (dedans.equals("true")) {
|
||||
listeUtilisateur.add(new TypeListeUtilisateur(id, nom, ip, null, true));
|
||||
}
|
||||
else {
|
||||
listeUtilisateur.add(new TypeListeUtilisateur(id, nom, ip, null, false));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -117,7 +125,8 @@ public class TraitementCmdListe implements Runnable{
|
|||
|
||||
|
||||
// Supprime un utilisateur de la ListeUtilisateur
|
||||
private void supprimeUtilisateur(ArrayList<TypeListeUtilisateur> listeUtilisateur, String id) {
|
||||
private void supprimeUtilisateur(String id) {
|
||||
ArrayList<TypeListeUtilisateur> listeUtilisateur = GestionnaireListeUtilisateur.instance().getListeUtilisateur();
|
||||
|
||||
for (int i=0; i<listeUtilisateur.size(); i++) {
|
||||
if (listeUtilisateur.get(i).id.equals(id)) {
|
||||
|
|
|
@ -6,12 +6,14 @@ public class TypeListeUtilisateur {
|
|||
public String id;
|
||||
public String ip;
|
||||
public String statut;
|
||||
public boolean dedans;
|
||||
|
||||
public TypeListeUtilisateur(String id, String nom, String ip, String statut) {
|
||||
public TypeListeUtilisateur(String id, String nom, String ip, String statut, boolean dedans) {
|
||||
this.id = id;
|
||||
this.nom = nom;
|
||||
this.ip = ip;
|
||||
this.statut = statut;
|
||||
this.dedans = dedans;
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -59,7 +59,7 @@ public class GestionnaireNom{
|
|||
|
||||
|
||||
//retorurne dansReseau
|
||||
public boolean getdansReseau() {
|
||||
public boolean getDansReseau() {
|
||||
return dansReseau;
|
||||
|
||||
}
|
||||
|
@ -144,14 +144,14 @@ public class GestionnaireNom{
|
|||
// Associe un nom à l'utilisateur et prévient les autres.
|
||||
public void nommer(String nom) {
|
||||
setNom(nom);
|
||||
GestionnaireListeUtilisateur.instance().envoie("add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
||||
GestionnaireListeUtilisateur.instance().envoie("add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp() + "$$$" + getDansReseau());
|
||||
|
||||
}
|
||||
|
||||
//debug
|
||||
public void nommer2(String nom) {
|
||||
setNom(nom);
|
||||
GestionnaireListeUtilisateur.instance().envoie2("add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
||||
GestionnaireListeUtilisateur.instance().envoie2("add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp() + "$$$" + getDansReseau());
|
||||
|
||||
}
|
||||
|
||||
|
@ -159,14 +159,14 @@ public class GestionnaireNom{
|
|||
|
||||
// Supprime l'utilisateur et prévient les autres.
|
||||
public void supprimer() {
|
||||
GestionnaireListeUtilisateur.instance().envoie("delete"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
||||
GestionnaireListeUtilisateur.instance().envoie("delete"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp() + "$$$" + getDansReseau());
|
||||
|
||||
}
|
||||
|
||||
|
||||
//debug
|
||||
public void supprimer2() {
|
||||
GestionnaireListeUtilisateur.instance().envoie2("delete"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
||||
GestionnaireListeUtilisateur.instance().envoie2("delete"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp() + "$$$" + getDansReseau());
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -63,6 +63,7 @@ public class ListUI2 extends JFrame implements Runnable{
|
|||
if (value instanceof TypeListeUtilisateur) {
|
||||
TypeListeUtilisateur nextUser = (TypeListeUtilisateur) value;
|
||||
setText(nextUser.nom);
|
||||
if (nextUser.statut != null) {
|
||||
if (nextUser.statut.equals("online")) {
|
||||
setBackground(Color.GREEN);
|
||||
} else if (nextUser.statut.equals("occupied")) {
|
||||
|
@ -73,6 +74,7 @@ public class ListUI2 extends JFrame implements Runnable{
|
|||
if (isSelected) {
|
||||
setBackground(getBackground().darker());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
setText("ERROR");
|
||||
}
|
||||
|
@ -134,7 +136,7 @@ public class ListUI2 extends JFrame implements Runnable{
|
|||
scrollPane.setViewportView(list);
|
||||
*/
|
||||
|
||||
listeInitial();
|
||||
//listeInitiale();
|
||||
|
||||
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
||||
scrollPane.setViewportView(list);
|
||||
|
@ -242,7 +244,7 @@ public class ListUI2 extends JFrame implements Runnable{
|
|||
}
|
||||
|
||||
//mise en place de la liste de base
|
||||
public void listeInitial() {
|
||||
public void listeInitiale() {
|
||||
|
||||
ArrayList<TypeListeUtilisateur> listeUtilisateur = GestionnaireListeUtilisateur.instance().getListeUtilisateur();
|
||||
DefaultListModel<TypeListeUtilisateur> defaultListModel = new DefaultListModel<TypeListeUtilisateur>();
|
||||
|
|
|
@ -206,7 +206,7 @@ public class Login_RegisterUI extends JFrame implements Runnable{
|
|||
inCheckBox.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent arg0) { //action
|
||||
GestionnaireNom.instance().setDansReseau(inCheckBox.isSelected());
|
||||
System.out.println(GestionnaireNom.instance().getdansReseau() );
|
||||
System.out.println(GestionnaireNom.instance().getDansReseau() );
|
||||
}
|
||||
});
|
||||
// inCheckBox (suite)
|
||||
|
|
Loading…
Reference in a new issue