Gestionnaire non static + fin session

This commit is contained in:
basti 2020-12-04 19:16:59 +01:00
parent 99dcf24958
commit dbe687ea17
5 changed files with 42 additions and 30 deletions

View file

@ -5,7 +5,8 @@ package liste;
public class ClientB {
GestionnaireListeUtilisateur gestionnaireListeUtilisateur = GestionnaireListeUtilisateur.instance(); //usefull ? puisque static ?
String nom = "Delta";
String id = "0";

View file

@ -7,7 +7,7 @@ import java.util.ArrayList;
public class GestionnaireListeUtilisateur {
//contient la liste Utilisateur à jour
private static ArrayList<TypeListeUtilisateur> listeUtilisateur = new ArrayList<TypeListeUtilisateur>();
private ArrayList<TypeListeUtilisateur> listeUtilisateur = new ArrayList<TypeListeUtilisateur>();
@ -28,14 +28,14 @@ public class GestionnaireListeUtilisateur {
public static ArrayList<TypeListeUtilisateur> getListeUtilisateur() {
public ArrayList<TypeListeUtilisateur> getListeUtilisateur() {
return listeUtilisateur;
}
public static void setListeUtilisateur(ArrayList<TypeListeUtilisateur> liste) {
public void setListeUtilisateur(ArrayList<TypeListeUtilisateur> liste) {
listeUtilisateur = liste;
}

View file

@ -24,6 +24,8 @@ public class TraitementCmdListe implements Runnable{
public void run() {
try {
GestionnaireListeUtilisateur gestionnaireListeUtilisateur = new GestionnaireListeUtilisateur();
String ordre = cmd[0];
String id = cmd[1];
String nom = cmd[2];
@ -37,7 +39,7 @@ public class TraitementCmdListe implements Runnable{
System.out.println("bloqué");
if (ordre.equals("delete")) {
GestionnaireListeUtilisateur.setListeUtilisateur(supprimeUtilisateur(GestionnaireListeUtilisateur.getListeUtilisateur(), id));
gestionnaireListeUtilisateur.setListeUtilisateur(supprimeUtilisateur(gestionnaireListeUtilisateur.getListeUtilisateur(), id));
}
if (ordre.equals("add")) {
@ -45,9 +47,9 @@ public class TraitementCmdListe implements Runnable{
//System.out.println("NULLLLLLLL");
//on ne fait rien (utilisateur non encore configuré)
} else {
GestionnaireListeUtilisateur.setListeUtilisateur(ajouteUtilisateur(GestionnaireListeUtilisateur.getListeUtilisateur(), id, nom, ip));
for(int i=0; i<GestionnaireListeUtilisateur.getListeUtilisateur().size(); i++) {
System.out.println("ici : " + GestionnaireListeUtilisateur.getListeUtilisateur().get(i).nom);
gestionnaireListeUtilisateur.setListeUtilisateur(ajouteUtilisateur(gestionnaireListeUtilisateur.getListeUtilisateur(), id, nom, ip));
for(int i=0; i<gestionnaireListeUtilisateur.getListeUtilisateur().size(); i++) {
System.out.println("ici : " + gestionnaireListeUtilisateur.getListeUtilisateur().get(i).nom);
}
}
@ -68,9 +70,9 @@ public class TraitementCmdListe implements Runnable{
//envoie la liste courrante d'utilisateur
public void envoyerNom() { //localHost TODO (gerer IP, unhandle exception ...)
GestionnaireNom gestionnaireNom = new GestionnaireNom();
UdpBroadcastClient client = new UdpBroadcastClient(ConstanteListeUtilisateur.NUM_PORT_SERVER,
"add"+ "$$$" + GestionnaireNom.getId() + "$$$" + GestionnaireNom.getNom() + "$$$" + "LocalHost");
"add"+ "$$$" + gestionnaireNom.getId() + "$$$" + gestionnaireNom.getNom() + "$$$" + "LocalHost");
Thread t = new Thread(client);
t.start();
}

View file

@ -1,5 +1,6 @@
package nom;
import liste.ConstanteListeUtilisateur;
/*
import java.util.*;
import java.io.IOException;
@ -7,11 +8,12 @@ import java.net.InetAddress;
import java.net.UnknownHostException;
*/
import liste.GestionnaireListeUtilisateur;
import liste.UdpBroadcastClient;
public class GestionnaireNom{
private static String idUtilisateur;
private static String nomUtilisateur;
private String idUtilisateur;
private String nomUtilisateur;
//public static String ipUtilisateur = InetAddress.getLocalHost().getHostName();
@ -30,27 +32,27 @@ public class GestionnaireNom{
public static String getNom() {
public String getNom() {
return nomUtilisateur;
}
public static String getId() {
public String getId() {
return idUtilisateur;
}
// attribue le nom "nom" à l'utilisateur
private static void setNom(String nom) {
private void setNom(String nom) {
nomUtilisateur = nom;
}
public static void setId(String id) {
public void setId(String id) {
idUtilisateur = id;
}
@ -59,10 +61,11 @@ public class GestionnaireNom{
// renvoie l'ID d'un utilisateur ou 0 s'il n'existe pas (ou non en ligne)
public static String idFromNom(String nom) {
for (int i=0; i<GestionnaireListeUtilisateur.getListeUtilisateur().size(); i++) {
if (GestionnaireListeUtilisateur.getListeUtilisateur().get(i).nom.equals(nom)) {
return GestionnaireListeUtilisateur.getListeUtilisateur().get(i).id;
public String idFromNom(String nom) {
GestionnaireListeUtilisateur gestionnaireListeUtilisateur = new GestionnaireListeUtilisateur();
for (int i=0; i<gestionnaireListeUtilisateur.getListeUtilisateur().size(); i++) {
if (gestionnaireListeUtilisateur.getListeUtilisateur().get(i).nom.equals(nom)) {
return gestionnaireListeUtilisateur.getListeUtilisateur().get(i).id;
}
}
@ -73,10 +76,10 @@ public class GestionnaireNom{
// renvoie 1 si le nom est disponible
private static boolean verifierDisponibiliteNom(String nom) {
for (int i=0; i<GestionnaireListeUtilisateur.getListeUtilisateur().size(); i++) {
if (GestionnaireListeUtilisateur.getListeUtilisateur().get(i).nom.equals(nom)) {
private boolean verifierDisponibiliteNom(String nom) {
GestionnaireListeUtilisateur gestionnaireListeUtilisateur = new GestionnaireListeUtilisateur();
for (int i=0; i<gestionnaireListeUtilisateur.getListeUtilisateur().size(); i++) {
if (gestionnaireListeUtilisateur.getListeUtilisateur().get(i).nom.equals(nom)) {
return false;
}
}
@ -87,10 +90,15 @@ public class GestionnaireNom{
public static boolean nommer(String nom) {
public boolean nommer(String nom) {
if (verifierDisponibiliteNom(nom)) {
setNom(nom);
UdpBroadcastClient client = new UdpBroadcastClient(ConstanteListeUtilisateur.NUM_PORT_SERVER,
"add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + "LocalHost");
Thread t = new Thread(client);
t.start();
return true;
}
return false;

View file

@ -54,12 +54,13 @@ public class Login_RegisterUI extends JFrame {
public void enter() {
if( usernameField.getText().equals("admin") || idField.getText().equals("0") ) { //remplaver || par && -> flemme debug
ListUI liste = new ListUI();
liste.setLocationRelativeTo(null);
liste.setVisible(true);
//ListUI liste = new ListUI();
//liste.setLocationRelativeTo(null);
//liste.setVisible(true);
dispose();
//Thread ts = new Thread(liste); //inutile avce le setVisible(true)
//ts.start();
Thread ts = new Thread(new ListUI()); //inutile avce le setVisible(true)
ts.start();
}
else {
JOptionPane.showMessageDialog(null, "Invalid Username / Password", "Login error", 2);