using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml.Linq; namespace Models { /// /// Gère les opérations liées aux champions et aux utilisateurs dans le système. /// public class Manager { /// /// Définit la liste des champions. /// public List _champions { get; private set; } /// /// Définit la liste des utilisateurs. /// public List _utilisateur { get; private set; } /// /// Définit le gestionnaire de persistance utilisé pour sauvegarder et charger les données. /// public IPersistanceManager? Persistance { get; set; } /// /// Définit l'utilisateur connecté. Utilisé pour la fonctionnalité de connexion et d'inscription. /// public Utilisateur? UtilisateurConnecte { get; set; } = null; //zzrajouté pour login register /// /// Initialise une nouvelle instance de la classe Manager avec un gestionnaire de persistance. /// /// Le gestionnaire de persistance public Manager(IPersistanceManager Pers) { _champions = new List(); _utilisateur = new List(); Persistance = Pers; } /// /// Initialise une nouvelle instance de la classe Manager. /// public Manager() { _champions = new List(); _utilisateur = new List(); } /// /// Ajoute un utilisateur à la liste des utilisateurs. /// /// L'utilisateur à ajouter public void AddUtilisateur(Utilisateur utilisateur) { _utilisateur.Add(utilisateur); } /// /// Supprime un utilisateur de la liste des utilisateurs. /// /// L'utilisateur à supprimer public void RemoveUtilisateur(Utilisateur utilisateur) { _utilisateur.Remove(utilisateur); } /// /// Charge les données à partir de la source de persistance. /// public void Chargdon() { var don = Persistance!.Chargdon(); _champions.AddRange(don.Item1); _utilisateur.AddRange(don.Item2); } /// /// Sauvegarde les données dans la source de persistance. /// public void Sauvdon() { Persistance?.Sauvdon(_champions, _utilisateur); } } }