package model;

import network.*;
import java.net.InetAddress;
import java.util.ArrayList;

public class ListeContacts {
	private static Contact user;
	private ArrayList<Contact> listeContact;
	
	
	//la liste doit être un singleton
	
	private static final ListeContacts instance = new ListeContacts();
	
	private ListeContacts() {
		this.listeContact = new ArrayList<Contact>();
	}
	
	public static final ListeContacts getInstance() {
		return instance;
	}
	
	public static void createUser(String pseudo, int port) {
		user = new Contact(pseudo, Tools.getLocalIp(), port);
	}
	
	public boolean contactExist(Contact contact) {
		for(Contact c : listeContact) {
			if(c.getPseudo().equals(contact.getPseudo())){
				return true;
			}
		}
		return false;
	}
	
	public boolean pseudoExist(String pseudo) {
		for(Contact c : listeContact) {
			if(c.getPseudo().equals(pseudo)){
				return true;
			}
		}
		return false;
	}
	
	public void addContact(Contact contact) {
		if(!contactExist(contact)){
			System.out.println("Pseudo : "+contact.getPseudo()+" ajouté\n");
			listeContact.add(contact);
		}
	}
	
	public void deleteContact(Contact contact) {
		if(contactExist(contact)){
			System.out.println("Pseudo : "+contact.getPseudo()+"supprimé\n");
			listeContact.remove(contact);
		}
	}
}
