Suite connexion() 4

This commit is contained in:
Auriane Lartigue 2020-11-30 16:06:27 +01:00
parent aa21e6a56c
commit b111994b72
6 changed files with 41 additions and 3 deletions

Binary file not shown.

View file

@ -46,6 +46,31 @@ public class ChatApp {
public void addList(Utilisateur u) { public void addList(Utilisateur u) {
this.actifUsers.add(u); this.actifUsers.add(u);
} }
/**
* Supprimer de la liste des utilisateurs actifs 'actifUsers' un certain utilisateur
*
* @param u on va supprimer cet utilisateur dans la liste
*/
public void supprimerList(Utilisateur u) {
this.actifUsers.remove(u);
}
/**
* Verifie qu'aucun autre utilisateur ne possède le même pseudo
*
* @param u on va supprimer cet utilisateur dans la liste
*/
public Boolean verifierUnicite(String pseudo) {
for(Utilisateur elem: this.actifUsers)
{
if (pseudo.equals( elem.getPseudo() ) ) {
return false ;
}
}
return true;
}
public void afficherListeUtilisateurs() { public void afficherListeUtilisateurs() {
System.out.println ("Liste des utilisateurs actifs : "); System.out.println ("Liste des utilisateurs actifs : ");
for(Utilisateur elem: this.actifUsers) for(Utilisateur elem: this.actifUsers)
@ -59,7 +84,7 @@ public class ChatApp {
// @ de broadcast du réseau de l'utilisateur me // @ de broadcast du réseau de l'utilisateur me
InetAddress broadcastAdress = InetAddress.getLoopbackAddress(); // A MODIFIER InetAddress broadcastAdress = InetAddress.getLoopbackAddress(); // A MODIFIER
// Message que l'on envoie à tous les utilisateurs actifs // Message que l'on envoie à tous les utilisateurs actifs
String broadcastMessage = this.me.toString() ; String broadcastMessage = "Connexion\n" + this.me.toString() ;
Integer port = 1234 ; Integer port = 1234 ;
UDPEchange.connexion(broadcastAdress,broadcastMessage, port); UDPEchange.connexion(broadcastAdress,broadcastMessage, port);
} }

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -95,7 +95,20 @@ class RunnerUDP implements Runnable {
System.out.println("Thread started"); System.out.println("Thread started");
String received = new String(data.getData(), 0, data.getLength()); String received = new String(data.getData(), 0, data.getLength());
System.out.println(received); System.out.println(received);
app.addList(Utilisateur.stringToUtilisateur(received)); String Type = received.split("\n")[0];
if (Type.equals("Connexion")) { // un utilisateur vient d'arriver sur le reseau
app.addList(Utilisateur.stringToUtilisateur(received.split("\n")[1]));
app.afficherListeUtilisateurs(); app.afficherListeUtilisateurs();
} }
if (Type.equals("Reponse Connexion")) { // Un utilisateur te repond suite à ta demande de connexion
app.afficherListeUtilisateurs();
}
if (Type.equals("Modification Pseudo")) {
app.afficherListeUtilisateurs();
}
if (Type.equals("Deconnexion")) {
app.supprimerList(Utilisateur.stringToUtilisateur(received.split("\n")[1]));
app.afficherListeUtilisateurs();
}
}
} }