Version fonctionnelle : TAF -> Clean Code

This commit is contained in:
Paul Faure 2021-02-13 02:34:45 +01:00
parent 6937eace68
commit e232ff6d7d
48 changed files with 260 additions and 115 deletions

Binary file not shown.

View file

@ -1,42 +1,44 @@
com/example/ServeurClavardage/ListMessageTxtParUser.java
com.example.ServeurClavardage.ListMessageTxtParUser
com/example/ServeurClavardage/SubmitDeconnectionIndoor.java
com.example.ServeurClavardage.SubmitDeconnectionIndoor
com/example/ServeurClavardage/ListMessagesInitParUser.java
com.example.ServeurClavardage.ListMessagesInitParUser
com/example/ServeurClavardage/GetOutdoorUsers.java
com.example.ServeurClavardage.GetOutdoorUsers
com/example/ServeurClavardage/Request/GetConnectionChat.java
com.example.ServeurClavardage.Request.GetConnectionChat
com/example/ServeurClavardage/Request/SubmitDeconnectionIndoor.java
com.example.ServeurClavardage.Request.SubmitDeconnectionIndoor
com/example/ServeurClavardage/Request/GetMessageChat.java
com.example.ServeurClavardage.Request.GetMessageChat
com/example/ServeurClavardage/Request/SubmitConnectionIndoor.java
com.example.ServeurClavardage.Request.SubmitConnectionIndoor
com/example/ServeurClavardage/Support/ListMessageTxtParUser.java
com.example.ServeurClavardage.Support.ListMessageTxtParUser
com/example/ServeurClavardage/Support/ListMessageTxtParCo.java
com.example.ServeurClavardage.Support.ListMessageTxtParCo
com/example/ServeurClavardage/Request/GetOutdoorUsers.java
com.example.ServeurClavardage.Request.GetOutdoorUsers
com/example/ServeurClavardage/Request/SubmitConnectionOutdoor.java
com.example.ServeurClavardage.Request.SubmitConnectionOutdoor
com/example/ServeurClavardage/Support/SharedInformation.java
com.example.ServeurClavardage.Support.SharedInformation
app/insa/clav/Messages/MessageInit.java
app.insa.clav.Messages.MessageInit
com/example/ServeurClavardage/ListMessageTxtParCo.java
com.example.ServeurClavardage.ListMessageTxtParCo
app/insa/clav/Messages/MessageSrvTCP.java
app.insa.clav.Messages.MessageSrvTCP
app/insa/clav/Messages/MessagePseudo.java
app.insa.clav.Messages.MessagePseudo
app/insa/clav/Messages/MessageChatFile.java
app.insa.clav.Messages.MessageChatFile
com/example/ServeurClavardage/SubmitConnectionOutdoor.java
com.example.ServeurClavardage.SubmitConnectionOutdoor
com/example/ServeurClavardage/SubmitDeconnectionOutdoor.java
com.example.ServeurClavardage.SubmitDeconnectionOutdoor
com/example/ServeurClavardage/SubmitMessageChat.java
com.example.ServeurClavardage.SubmitMessageChat
com/example/ServeurClavardage/SharedInformation.java
com.example.ServeurClavardage.SharedInformation
app/insa/clav/Messages/Message.java
app.insa.clav.Messages.Message
com/example/ServeurClavardage/GetConnectionChat.java
com.example.ServeurClavardage.GetConnectionChat
com/example/ServeurClavardage/GetAllUsers.java
com.example.ServeurClavardage.GetAllUsers
com/example/ServeurClavardage/SubmitConnectionIndoor.java
com.example.ServeurClavardage.SubmitConnectionIndoor
com/example/ServeurClavardage/SubmitConnectionChat.java
com.example.ServeurClavardage.SubmitConnectionChat
com/example/ServeurClavardage/Request/SubmitDeconnectionOutdoor.java
com.example.ServeurClavardage.Request.SubmitDeconnectionOutdoor
com/example/ServeurClavardage/Request/SubmitConnectionChat.java
com.example.ServeurClavardage.Request.SubmitConnectionChat
com/example/ServeurClavardage/Request/SubmitMessageChat.java
com.example.ServeurClavardage.Request.SubmitMessageChat
com/example/ServeurClavardage/Request/GetAllUsers.java
com.example.ServeurClavardage.Request.GetAllUsers
com/example/ServeurClavardage/Support/ListMessagesInitParUser.java
com.example.ServeurClavardage.Support.ListMessagesInitParUser
app/insa/clav/Core/Utilisateurs.java
app.insa.clav.Core.Utilisateurs
com/example/ServeurClavardage/GetMessageChat.java
com.example.ServeurClavardage.GetMessageChat
app/insa/clav/Messages/MessageRetourSrvTCP.java
app.insa.clav.Messages.MessageRetourSrvTCP
app/insa/clav/Messages/MessageChatTxt.java
app.insa.clav.Messages.MessageChatTxt

View file

@ -0,0 +1,47 @@
package app.insa.clav.Messages;
public class MessageRetourSrvTCP {
private MessageChatTxt messageChatTxt;
private MessageChatFile messageChatFile;
private Message message;
public MessageRetourSrvTCP(MessageChatTxt messageChatTxt) {
this.messageChatTxt = messageChatTxt;
this.messageChatFile = null;
this.message = null;
}
public MessageRetourSrvTCP(MessageChatFile messageChatFile) {
this.messageChatFile = messageChatFile;
this.messageChatTxt = null;
this.message = null;
}
public MessageRetourSrvTCP(Message message) {
this.messageChatFile = null;
this.messageChatTxt = null;
this.message = message;
}
public MessageChatTxt getMessageChatTxt() {
return messageChatTxt;
}
public MessageChatFile getMessageChatFile() {
return messageChatFile;
}
public Message getMessage() {
return message;
}
@Override
public String toString() {
return "MessageRetourSrvTCP{" +
"messageChatTxt=" + messageChatTxt +
", messageChatFile=" + messageChatFile +
", message=" + message +
'}';
}
}

View file

@ -4,12 +4,14 @@ package app.insa.clav.Messages;
public class MessageSrvTCP {
private int userId;
private int id;
private Message message;
private MessageRetourSrvTCP messageRetourSrvTCP;
private MessageInit messageInit;
public MessageSrvTCP(int userId, int id, Message message) {
public MessageSrvTCP(int userId, int id, MessageRetourSrvTCP messageRetourSrvTCP, MessageInit messageInit) {
this.userId = userId;
this.id = id;
this.message = message;
this.messageRetourSrvTCP = messageRetourSrvTCP;
this.messageInit = messageInit;
}
public int getUserId() {
@ -20,7 +22,21 @@ public class MessageSrvTCP {
return id;
}
public Message getMessage() {
return message;
public MessageRetourSrvTCP getMessageRetourSrvTCP() {
return messageRetourSrvTCP;
}
public MessageInit getMessageInit() {
return messageInit;
}
@Override
public String toString() {
return "MessageSrvTCP{" +
"userId=" + userId +
", id=" + id +
", messageRetourSrvTCP=" + messageRetourSrvTCP +
", messageInit=" + messageInit +
'}';
}
}

View file

@ -1,32 +0,0 @@
package com.example.ServeurClavardage;
import app.insa.clav.Messages.Message;
import java.util.ArrayList;
public class ListMessageTxtParCo {
private int remoteId;
private ArrayList<Message> msgs;
public ListMessageTxtParCo(int remoteId) {
this.remoteId = remoteId;
this.msgs = new ArrayList<Message>();
}
public int getRemoteId() {
return remoteId;
}
public void addMsg(Message msg) {
this.msgs.add(msg);
}
public Message getMsgs() {
Message msg = msgs.get(0);
msgs.remove(0);
return msg;
}
}

View file

@ -1,6 +1,7 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import app.insa.clav.Core.Utilisateurs;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -29,6 +30,7 @@ public class GetAllUsers extends HttpServlet {
ArrayList<Utilisateurs> users = new ArrayList<>(this.sh.getOutdoorUsersList());
users.addAll(this.sh.getIndoorUsersList());
String param = gson.toJson(users);
//System.out.println("Demande des utilisateurs présents : renvoyé -> " + users);
PrintWriter out = response.getWriter();
out.print(param);
}

View file

@ -1,7 +1,8 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import app.insa.clav.Messages.MessageInit;
import app.insa.clav.Messages.MessageSrvTCP;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -36,11 +37,11 @@ public class GetConnectionChat extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
MessageSrvTCP msgSrv = gson.fromJson(resp.toString(), MessageSrvTCP.class);
response.setContentType("application/json");
ArrayList<MessageInit> msgs = this.sh.getCoList(msgSrv.getUserId());
//System.out.println("Demande des connection avec " + msgSrv + " : renvoyé -> " + msgs);
String param = gson.toJson(msgs);
PrintWriter out = response.getWriter();
out.print(param);

View file

@ -1,7 +1,9 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import app.insa.clav.Messages.Message;
import app.insa.clav.Messages.MessageRetourSrvTCP;
import app.insa.clav.Messages.MessageSrvTCP;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -35,11 +37,11 @@ public class GetMessageChat extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
MessageSrvTCP msgSrv = gson.fromJson(resp.toString(), MessageSrvTCP.class);
response.setContentType("application/json");
Message msgs = this.sh.getMessageList(msgSrv.getUserId(), msgSrv.getId());
MessageRetourSrvTCP msgs = this.sh.getMessageList(msgSrv.getUserId(), msgSrv.getId());
//System.out.println("Demande des messages avec " + msgSrv + " : renvoyé -> " + msgs);
String param = gson.toJson(msgs);
PrintWriter out = response.getWriter();
out.print(param);

View file

@ -1,12 +1,12 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import java.io.*;
import java.net.InetAddress;
import java.util.ArrayList;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import app.insa.clav.Core.Utilisateurs;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -26,6 +26,7 @@ public class GetOutdoorUsers extends HttpServlet {
final GsonBuilder builder = new GsonBuilder();
final Gson gson = builder.create();
ArrayList<Utilisateurs> outdoorArrayList = this.sh.getOutdoorUsersList();
//System.out.println("Demande des outdoorUser : renvoyé -> " + outdoorArrayList);
String param = gson.toJson(outdoorArrayList);
PrintWriter out = response.getWriter();
out.print(param);

View file

@ -1,7 +1,8 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import app.insa.clav.Messages.MessageInit;
import app.insa.clav.Messages.MessageSrvTCP;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -34,11 +35,12 @@ public class SubmitConnectionChat extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
MessageSrvTCP msgSrv = gson.fromJson(resp.toString(), MessageSrvTCP.class);
response.setContentType("application/json");
this.sh.addMsgInit(msgSrv.getUserId(), (MessageInit) msgSrv.getMessage());
System.out.println("Submit connection Chat avec " + msgSrv);
this.sh.addMsgInit(msgSrv.getUserId(),msgSrv.getId(), msgSrv.getMessageInit());
//System.out.println("Etat après le dépot de connexion : " + this.sh.getCoList(msgSrv.getUserId()));
}
public void destroy() {

View file

@ -1,13 +1,12 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import java.io.*;
import java.net.*;
import java.nio.charset.StandardCharsets;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.MessagePseudo;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -32,9 +31,9 @@ public class SubmitConnectionIndoor extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
Utilisateurs newUser = gson.fromJson(resp.toString(), Utilisateurs.class);
//System.out.println("Submit connection Indoor avec " + newUser);
newUser.update();
this.sh.addIndoorUser(newUser);
}

View file

@ -1,16 +1,12 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import java.io.*;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.UnknownHostException;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.MessagePseudo;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -35,9 +31,9 @@ public class SubmitConnectionOutdoor extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
Utilisateurs newUser = gson.fromJson(resp.toString(), Utilisateurs.class);
//System.out.println("Submit connection outdoor avec " + newUser);
newUser.update();
this.sh.addOutdoorUser(newUser);

View file

@ -1,13 +1,12 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import java.io.*;
import java.net.*;
import java.nio.charset.StandardCharsets;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.MessagePseudo;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -32,11 +31,10 @@ public class SubmitDeconnectionIndoor extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
Utilisateurs disconnectedUser = gson.fromJson(resp.toString(), Utilisateurs.class);
System.out.println("Submit déconnection indoor avec " + disconnectedUser);
this.sh.removeIndoorUser(disconnectedUser);
System.out.println(disconnectedUser);
}
public void destroy() {

View file

@ -1,16 +1,12 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import java.io.*;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.UnknownHostException;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.MessagePseudo;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -35,9 +31,9 @@ public class SubmitDeconnectionOutdoor extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
Utilisateurs disconnectedUser = gson.fromJson(resp.toString(), Utilisateurs.class);
System.out.println("Submit déconnection outdoor avec " + disconnectedUser);
this.sh.removeOutdoorUser(disconnectedUser);
}

View file

@ -1,6 +1,7 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Request;
import app.insa.clav.Messages.MessageSrvTCP;
import com.example.ServeurClavardage.Support.SharedInformation;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@ -33,11 +34,11 @@ public class SubmitMessageChat extends HttpServlet {
while ((responseLine = br.readLine()) != null) {
resp.append(responseLine.trim());
}
System.out.println(resp.toString());
}
MessageSrvTCP msgSrv = gson.fromJson(resp.toString(), MessageSrvTCP.class);
response.setContentType("application/json");
this.sh.addMsgTxt(msgSrv.getUserId(), msgSrv.getId(), msgSrv.getMessage());
System.out.println("Submit message chat avec " + msgSrv);
this.sh.addMsgTxt(msgSrv.getUserId(), msgSrv.getId(), msgSrv.getMessageRetourSrvTCP());
}
public void destroy() {

View file

@ -0,0 +1,41 @@
package com.example.ServeurClavardage.Support;
import app.insa.clav.Messages.Message;
import app.insa.clav.Messages.MessageRetourSrvTCP;
import java.util.ArrayList;
public class ListMessageTxtParCo {
private int remoteId;
private ArrayList<MessageRetourSrvTCP> msgs;
public ListMessageTxtParCo(int remoteId) {
this.remoteId = remoteId;
this.msgs = new ArrayList<MessageRetourSrvTCP>();
}
public int getRemoteId() {
return remoteId;
}
public void addMsg(MessageRetourSrvTCP msg) {
this.msgs.add(msg);
}
public ArrayList<MessageRetourSrvTCP> getMsgsList() {
return msgs;
}
public MessageRetourSrvTCP getMsgs() {
if (msgs.isEmpty()) {
return null;
} else {
MessageRetourSrvTCP msg = msgs.get(0);
msgs.remove(0);
return msg;
}
}
}

View file

@ -1,7 +1,6 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Support;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.Message;
import java.util.ArrayList;

View file

@ -1,4 +1,4 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Support;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.MessageInit;

View file

@ -1,11 +1,11 @@
package com.example.ServeurClavardage;
package com.example.ServeurClavardage.Support;
import app.insa.clav.Core.Utilisateurs;
import app.insa.clav.Messages.Message;
import app.insa.clav.Messages.MessageInit;
import app.insa.clav.Messages.MessageRetourSrvTCP;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
@ -45,16 +45,19 @@ public class SharedInformation {
for (Iterator<ListMessagesInitParUser> iter = listMsgInit.iterator(); iter.hasNext(); ) {
ListMessagesInitParUser list = iter.next();
if (user == list.getUser().getId()) {
msgs = list.getMsgs();
msgs = new ArrayList<>(list.getMsgs());
//System.out.println("TROUVEEE DANS LE GETTTTTT " + user + " avec : " + msgs);
list.clearMsgs();
//System.out.println("TROUVEEE BIS DANS LE GETTTTTT " + user + " avec : " + msgs);
break;
}
}
//System.out.println("Co list getted : " + msgs);
return msgs;
}
public synchronized Message getMessageList(int user, int remoteId){
Message msgs = null;
public synchronized MessageRetourSrvTCP getMessageList(int user, int remoteId){
MessageRetourSrvTCP msgs = null;
for (Iterator<ListMessageTxtParUser> iter1 = listMessageTxt.iterator(); iter1.hasNext(); ) {
ListMessageTxtParUser list1 = iter1.next();
if (list1.getUser().getId() == user) {
@ -71,17 +74,67 @@ public class SharedInformation {
return msgs;
}
public synchronized void addMsgInit(int user, MessageInit msg){
private void createUserInLists(Utilisateurs user) {
boolean trouve = false;
for (Iterator<ListMessagesInitParUser> iter = listMsgInit.iterator(); iter.hasNext(); ) {
ListMessagesInitParUser list = iter.next();
if (user == list.getUser().getId()) {
list.addMsg(msg);
if (user.getId() == list.getUser().getId()) {
trouve = true;
break;
}
}
if (!trouve) {
listMsgInit.add(new ListMessagesInitParUser(user));
}
trouve = false;
for (Iterator<ListMessageTxtParUser> iter1 = listMessageTxt.iterator(); iter1.hasNext(); ) {
ListMessageTxtParUser list1 = iter1.next();
if (list1.getUser().getId() == user.getId()) {
trouve = true;
break;
}
}
if (!trouve) {
listMessageTxt.add(new ListMessageTxtParUser(user));
}
}
private void createCoInList(int user, int remoteId) {
boolean trouve = false;
for (Iterator<ListMessageTxtParUser> iter1 = listMessageTxt.iterator(); iter1.hasNext(); ) {
ListMessageTxtParUser list1 = iter1.next();
if (list1.getUser().getId() == user) {
for (Iterator<ListMessageTxtParCo> iter2 = list1.getlistMsgsTxtParCo().iterator(); iter2.hasNext(); ) {
ListMessageTxtParCo list2 = iter2.next();
if (remoteId == list2.getRemoteId()) {
trouve = true;
break;
}
}
if (!trouve) {
list1.addCo(remoteId);
}
break;
}
}
}
public synchronized void addMsgTxt(int user, int remoteId, Message msg) {
public synchronized void addMsgInit(int user, int remoteId, MessageInit msg){
for (Iterator<ListMessagesInitParUser> iter = listMsgInit.iterator(); iter.hasNext(); ) {
ListMessagesInitParUser list = iter.next();
if (user == list.getUser().getId()) {
//System.out.println("UTILISATEUR TROOUVE");
list.addMsg(msg);
break;
}
}
createCoInList(user, remoteId);
createCoInList(remoteId, user);
printLists();
}
public synchronized void addMsgTxt(int user, int remoteId, MessageRetourSrvTCP msg) {
for (Iterator<ListMessageTxtParUser> iter1 = listMessageTxt.iterator(); iter1.hasNext(); ) {
ListMessageTxtParUser list1 = iter1.next();
if (list1.getUser().getId() == user) {
@ -95,18 +148,21 @@ public class SharedInformation {
break;
}
}
printLists();
}
public synchronized void addIndoorUser(Utilisateurs newUser){
this.indoorUsersList.remove(newUser);
this.indoorUsersList.add(newUser);
Collections.sort(this.indoorUsersList);
createUserInLists(newUser);
}
public synchronized void addOutdoorUser(Utilisateurs newUser){
this.outdoorUsersList.remove(newUser);
this.outdoorUsersList.add(newUser);
Collections.sort(this.outdoorUsersList);
createUserInLists(newUser);
}
public synchronized void removeIndoorUser(Utilisateurs user){
@ -116,4 +172,22 @@ public class SharedInformation {
public synchronized void removeOutdoorUser(Utilisateurs user){
this.outdoorUsersList.remove(user);
}
}
private void printLists() {
System.out.println("Affichage de la liste des connexions :");
for (Iterator<ListMessagesInitParUser> iter = listMsgInit.iterator(); iter.hasNext(); ) {
ListMessagesInitParUser list = iter.next();
System.out.println(" {" + list.getUser() + ", " + list.getMsgs() + "}");
}
System.out.println("Affichage de la liste des messages :");
for (Iterator<ListMessageTxtParUser> iter1 = listMessageTxt.iterator(); iter1.hasNext(); ) {
ListMessageTxtParUser list1 = iter1.next();
System.out.println(" {" + list1.getUser() + ", ");
for (Iterator<ListMessageTxtParCo> iter2 = list1.getlistMsgsTxtParCo().iterator(); iter2.hasNext(); ) {
ListMessageTxtParCo list2 = iter2.next();
System.out.println(" {" + list2.getRemoteId() + ", " + list2.getMsgsList() + "}");
}
System.out.println(" }");
}
}
}