public int Run(IGestionaireCollectifs gestionaireCollectifs, IGestionaireJoueurs gestionaireJoueurs) { var createurCollectif = gestionaireCollectifs.ObtenirCreateurDeCollectif(); try { createurCollectif .DontLeNomEst(Nom); if (Categories != null) { createurCollectif .DontLesCategoriesSont(Categories.Select(c => Conversions.StringVersCategorie(c))); } if (Membres != null) { var joueurs = new List <Joueur>(); foreach (var m in Membres) { var filtreJoueur = gestionaireJoueurs.ObtenirFiltreDeJoueur(); var joueur = filtreJoueur.FiltrerParLicense(int.Parse(m)).OrdonnerParDefaut(); if (joueur.Count() == 0) { Console.WriteLine("La license " + m + " n'existe pas. Le joueur n'a pas été ajouteé"); } else { joueurs.Add(joueur.First()); } } createurCollectif .DontLesMembresSont(joueurs); } createurCollectif.Creer(); return(0); } catch (CLIExcepetion e) { Console.WriteLine(e.Message); return(1); } catch (DuplicationException e) { Console.WriteLine("Un collectif porte deja ce nom"); return(1); } catch (ElementNonExistantException e) { Console.WriteLine(e); return(1); } }
public int Parse(string[] args) { return (Parser .Default .ParseArguments < CreerCollectif, ModifierContactJoueur, AjouterPersonnel, ListerClubs, ListerJoueurs, SynchroniserParCSV, ImporterCompetition>(args) .MapResult( (CreerCollectif cmd) => cmd.Run(gestionaireCollectifs, gestionaireJoueurs), (ModifierContactJoueur cmd) => cmd.Run(gestionaireJoueurs), (AjouterPersonnel cmd) => cmd.Run(gestionaireClubs), (ListerClubs cmd) => cmd.Run(gestionaireClubs.ObtenirFiltreDeClub()), (ListerJoueurs cmd) => cmd.Run(gestionaireJoueurs.ObtenirFiltreDeJoueur()), (SynchroniserParCSV cmd) => cmd.Run((AccesseurPoonaParFichierCSV)accesseurPoona, gestionaireClubs, gestionaireJoueurs), (ImporterCompetition cmd) => cmd.Run((importeurCompetition)), errs => 1)); }