From 80a3dcc958bd55dcb33f7f63d211bfbb2bba0ef1 Mon Sep 17 00:00:00 2001 From: m-gues Date: Wed, 23 Dec 2020 20:08:53 +0100 Subject: [PATCH] subscribe, publish, notify et update v1 --- POO/src/communication/CommunicationUDP.java | 6 +++--- POO/src/messages/Message.java | 8 ++++---- POO/src/messages/MessageSysteme.java | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/POO/src/communication/CommunicationUDP.java b/POO/src/communication/CommunicationUDP.java index 2028e7d..406b155 100644 --- a/POO/src/communication/CommunicationUDP.java +++ b/POO/src/communication/CommunicationUDP.java @@ -106,7 +106,7 @@ public class CommunicationUDP extends Thread { protected synchronized void removeUser(String idClient, String pseudoClient,InetAddress ipClient, int port) { - int index = getIndexFromIP(ipClient); + int index = getIndexFromID(idClient); if( index != -1) { users.remove(index); } @@ -124,7 +124,7 @@ public class CommunicationUDP extends Thread { public void sendMessageConnecte() throws UnknownHostException, IOException { for(int port : this.portOthers) { try { - this.client.sendMessageUDP_local(new MessageSysteme(Message.TypeMessage.JE_SUIS_CONNECTE), port, InetAddress.getLocalHost()); + this.client.sendMessageUDP_local(new MessageSysteme(Message.TypeMessage.JE_SUIS_CONNECTE, Utilisateur.getSelf().getId()), port, InetAddress.getLocalHost()); } catch (MauvaisTypeMessageException e) {/*Si ça marche pas essayer là*/} } } @@ -175,7 +175,7 @@ public class CommunicationUDP extends Thread { public void sendMessageDelete() throws UnknownHostException, IOException { for(int port : this.portOthers) { try { - this.client.sendMessageUDP_local(new MessageSysteme(Message.TypeMessage.JE_SUIS_DECONNECTE), port, InetAddress.getLocalHost()); + this.client.sendMessageUDP_local(new MessageSysteme(Message.TypeMessage.JE_SUIS_DECONNECTE, Utilisateur.getSelf().getId()), port, InetAddress.getLocalHost()); } catch (MauvaisTypeMessageException e) {} } } diff --git a/POO/src/messages/Message.java b/POO/src/messages/Message.java index 6036b00..334f39c 100644 --- a/POO/src/messages/Message.java +++ b/POO/src/messages/Message.java @@ -28,10 +28,10 @@ public abstract class Message implements Serializable { String[] parts = messageString.split("###"); switch (parts[0]) { case "JE_SUIS_CONNECTE" : - return new MessageSysteme(TypeMessage.JE_SUIS_CONNECTE); + return new MessageSysteme(TypeMessage.JE_SUIS_CONNECTE, parts[2]); case "JE_SUIS_DECONNECTE" : - return new MessageSysteme(TypeMessage.JE_SUIS_DECONNECTE); + return new MessageSysteme(TypeMessage.JE_SUIS_DECONNECTE, parts[2]); case "INFO_PSEUDO" : return new MessageSysteme(TypeMessage.INFO_PSEUDO, parts[1], parts[2], Integer.parseInt(parts[3]) ); @@ -51,8 +51,8 @@ public abstract class Message implements Serializable { //tests ici public static void main(String[] args) throws MauvaisTypeMessageException { - Message m1 = new MessageSysteme(TypeMessage.JE_SUIS_CONNECTE); - Message m2 = new MessageSysteme(TypeMessage.JE_SUIS_DECONNECTE); + Message m1 = new MessageSysteme(TypeMessage.JE_SUIS_CONNECTE, "sahiu"); + Message m2 = new MessageSysteme(TypeMessage.JE_SUIS_DECONNECTE, "putbezfjk"); Message m3 = new MessageSysteme(TypeMessage.INFO_PSEUDO, "pseudo156434518", "id236", 1500); Message m4 = new MessageTexte(TypeMessage.TEXTE, "blablabla"); Message m5 = new MessageFichier(TypeMessage.FICHIER, "truc", ".pdf"); diff --git a/POO/src/messages/MessageSysteme.java b/POO/src/messages/MessageSysteme.java index 0ff111d..06d3e07 100644 --- a/POO/src/messages/MessageSysteme.java +++ b/POO/src/messages/MessageSysteme.java @@ -7,11 +7,11 @@ public class MessageSysteme extends Message { private String id; private int port; - public MessageSysteme(TypeMessage type) throws MauvaisTypeMessageException{ + public MessageSysteme(TypeMessage type, String id) throws MauvaisTypeMessageException{ if ((type==TypeMessage.JE_SUIS_CONNECTE)||(type==TypeMessage.JE_SUIS_DECONNECTE)||(type==TypeMessage.MESSAGE_NUL)) { this.type=type; this.pseudo=""; - this.id=""; + this.id=id; this.port = -1; } else throw new MauvaisTypeMessageException();