/// <summary> /// Recherche tous les médias parus l'année passée en paramètre /// </summary> /// <param name="annee">Année de parution</param> /// <returns>Les médias qui correspondent</returns> public LesMedias RechercheAnnee(int annee) { LesMedias liste = new LesMedias(this.Medias.FindAll(delegate(Media m) { return(m.AnneeParution.Year == annee); })); return(liste); }
/// <summary> /// Constructeur du singleton sans paramètres /// </summary> /// <param name="n">Nom de la mediathèque</param> /// <param name="a">Adresse de la mediathèque</param> /// <param name="c">Code Postal de la médiathèque</param> /// <param name="v">Ville de la médiathèque</param> /// <param name="m">Liste de médias contenus dans la médiathèque</param> /// <returns></returns> public static Mediatheque Instance(string n, string a, int c, string v, LesMedias m) { if (instance == null) { instance = new Mediatheque(n, a, c, v, m); } return(instance); }
/// <summary> /// Constructeur par défaut /// </summary> private Mediatheque() { this.Nom = ""; this.Adresse = ""; this.CodePostal = 0; this.Ville = ""; this.Medias = new LesMedias(); }
/// <summary> /// Constructeur de la classe /// </summary> /// <param name="n">Nom de la médiathèque</param> /// <param name="a">Adresse de la médiathèque</param> /// <param name="c">Code Postal de la médiathèque</param> /// <param name="v">Ville de la médiathèque</param> /// <param name="m">Médias stockés dans la médiathèque</param> private Mediatheque(string n, string a, int c, string v, LesMedias m) { this.Nom = n; this.Adresse = a; this.CodePostal = c; this.Ville = v; this.Medias = m; }
/// <summary> /// Recherche tous les médias de la collection possédant le titre passé en paramètre /// </summary> /// <param name="titre">Titre des médias recherchés</param> /// <returns>Tous les médias qui correspondent</returns> public LesMedias RechercheTitre(string titre) { /*On utilise ici la méthode findAll de la collection List<T> * Celle-ci retourne une liste d'objets du type T pour lesquels l'expression * de la fonction delegate renvoie true. Le media 'm' est le média de la liste * en cours de traitement.*/ LesMedias liste = new LesMedias(this.Medias.FindAll(delegate(Media m){ return(m.Titre.ToLower().Contains(titre.ToLower())); })); return(liste); }
/// <summary> /// Permet d'isoler les films parmi les médias de la collection /// </summary> /// <returns>Films contenus dans la collection courante</returns> public LesMedias RechercheFilms() { LesMedias liste = new LesMedias(); foreach (Media m in this.Medias) { if (m is Film) { liste.Ajout(m); } } return(liste); }
/// <summary> /// Retourne tous les médias de la liste qui possèdent le genre g /// </summary> /// <param name="g">Genre recherché</param> /// <returns>Médias qui possèdent ce genre</returns> public LesMedias GetMediaGenre(Genres g) { LesMedias liste = new LesMedias(); foreach (Media m in this.Medias) { if (m.Genre == g) { liste.Ajout(m); } } return(liste); }