175 lines
3.9 KiB
Java
175 lines
3.9 KiB
Java
package nom;
|
|
|
|
|
|
import java.net.InetAddress;
|
|
|
|
import liste.GestionnaireListeUtilisateur;
|
|
|
|
|
|
public class GestionnaireNom{
|
|
|
|
private String idUtilisateur;
|
|
private String nomUtilisateur;
|
|
static private String ipUtilisateur;
|
|
private boolean dansReseau;
|
|
|
|
|
|
//Instance du gestionnaire de nom
|
|
static private GestionnaireNom uniqueInstance = null;
|
|
|
|
//Renvoie le gestionnaire de nom, ou le crée s'il n'existe pas encore
|
|
static public GestionnaireNom instance() {
|
|
|
|
|
|
//Si l'instance n'existe pas, on la crée
|
|
if (GestionnaireNom.uniqueInstance == null) {
|
|
GestionnaireNom.uniqueInstance = new GestionnaireNom();
|
|
|
|
try {
|
|
ipUtilisateur = InetAddress.getLocalHost().getHostName();
|
|
}
|
|
catch (Exception e) {
|
|
System.out.println("Erreur : inetAddres LocalHost (UserIp)");
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
return GestionnaireNom.uniqueInstance;
|
|
}
|
|
|
|
|
|
//retourne le NomUtilisateur
|
|
public String getNom() {
|
|
return nomUtilisateur;
|
|
|
|
}
|
|
|
|
|
|
//retourne l'ID Utilisateur
|
|
public String getId() {
|
|
return idUtilisateur;
|
|
|
|
}
|
|
|
|
//retorurne l'IP Utilisateur
|
|
public String getIp() {
|
|
return ipUtilisateur;
|
|
|
|
}
|
|
|
|
|
|
//retorurne dansReseau
|
|
public boolean getdansReseau() {
|
|
return dansReseau;
|
|
|
|
}
|
|
|
|
|
|
// set le NomUtilisateur
|
|
public void setNom(String nom) {
|
|
nomUtilisateur = nom;
|
|
|
|
}
|
|
|
|
//set l'ID Utilisateur
|
|
public void setId(String id) {
|
|
idUtilisateur = id;
|
|
|
|
}
|
|
|
|
//set l'IP Utilisateur
|
|
public void setIp(String ip) {
|
|
ipUtilisateur = ip;
|
|
|
|
}
|
|
|
|
|
|
//set dansReseau
|
|
public void setDansReseau(boolean dans) {
|
|
dansReseau = dans;
|
|
|
|
}
|
|
|
|
|
|
// renvoie l'ID d'un utilisateur ou "null" s'il n'existe pas (ou non en ligne)
|
|
public String idFromNom(String nom) {
|
|
for (int i=0; i<GestionnaireListeUtilisateur.instance().getListeUtilisateur().size(); i++) {
|
|
if (GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).nom.toLowerCase().equals(nom.toLowerCase())) {
|
|
return GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).id;
|
|
}
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
|
|
// renvoie l'IP d'un utilisateur ou "null" s'il n'existe pas (ou non en ligne)
|
|
public String ipFromNom(String nom) {
|
|
for (int i=0; i<GestionnaireListeUtilisateur.instance().getListeUtilisateur().size(); i++) {
|
|
if (GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).nom.toLowerCase().equals(nom.toLowerCase())) {
|
|
return GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).ip;
|
|
}
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
|
|
//renvoie le nom associé à un id ou "null" s'il n'existe pas (ou non en ligne)
|
|
public String nomFromId(String id) {
|
|
for (int i=0; i<GestionnaireListeUtilisateur.instance().getListeUtilisateur().size(); i++) {
|
|
if (GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).id.equals(id) ) {
|
|
return GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).nom;
|
|
}
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
|
|
|
|
// renvoie "true" si le nom est disponible
|
|
public boolean verifierDisponibiliteNom(String nom) {
|
|
for (int i=0; i<GestionnaireListeUtilisateur.instance().getListeUtilisateur().size(); i++) {
|
|
if (GestionnaireListeUtilisateur.instance().getListeUtilisateur().get(i).nom.equals(nom)) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
|
|
|
|
// Associe un nom à l'utilisateur et prévient les autres.
|
|
public void nommer(String nom) {
|
|
setNom(nom);
|
|
GestionnaireListeUtilisateur.instance().envoie("add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
|
|
|
}
|
|
|
|
//debug
|
|
public void nommer2(String nom) {
|
|
setNom(nom);
|
|
GestionnaireListeUtilisateur.instance().envoie2("add"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
|
|
|
}
|
|
|
|
|
|
|
|
// Supprime l'utilisateur et prévient les autres.
|
|
public void supprimer() {
|
|
GestionnaireListeUtilisateur.instance().envoie("delete"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
|
|
|
}
|
|
|
|
|
|
//debug
|
|
public void supprimer2() {
|
|
GestionnaireListeUtilisateur.instance().envoie2("delete"+ "$$$" + getId() + "$$$" + getNom() + "$$$" + getIp());
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|