import java.util.HashMap; import java.util.Map; public class Main { // liste des orchestres private Map tOrchestres = new HashMap(); // liste des musiciens private Map tMusiciens = new HashMap(); // liste des instruments private Map tInstruments = new HashMap(); public static void main(String[] args) { boolean quit = false; Saisie hSaisie = new Saisie(); Factory usine = new Factory(); Main self = new Main(); while (!quit) { // ici on affiche le menu self.afficherMenu(); switch (hSaisie.saisieInt()) { // quitter case 0: quit = true; break; // creer orchestre case 1: self.tOrchestres = usine.creerOrchestre(self.tOrchestres); break; // ajout musicien case 2: self.tMusiciens = usine.creerMusicien(self.tMusiciens); break; // créer instrument case 3: self.tInstruments = usine.creerInstrument(self.tInstruments); break; // suppression orchestre case 4: self.tOrchestres = usine.supprimerOrchestre(self.tOrchestres); break; // suppression musicien case 5: self.tMusiciens = usine.supprimerMusicien(self.tMusiciens, self.tOrchestres); break; // suppression instrument case 6: self.tInstruments = usine.supprimerInstrument(self.tInstruments); break; // affichage liste orchestres case 7: usine.afficherListeOrchestres(self.tOrchestres); break; // affichage liste musiciens case 8: usine.afficherListeMusiciens(self.tMusiciens); break; // afficher liste instruments case 9: usine.afficherListeInstruments(self.tInstruments); break; // associer musiciens/instruments case 10: usine.associerInstrumentMusicien(self.tMusiciens, self.tInstruments); break; // ajouter musiciens dans orchestre case 11: usine.associerMusicienOrchestre(self.tOrchestres, self.tMusiciens); break; // faire jouer un orchestre case 12: self.jouerOrchestre(); break; // faire jouer un musicien case 13: self.jouerMusicien(); break; // faire jouer un instrument case 14: self.jouerInstrument(); break; // accorder un instrument case 15: usine.accorderInstrument(self.tMusiciens); break; default: System.out.println("Commande inconnue"); } } } /* * Affiche le menu principal du main pour tests */ public void afficherMenu() { System.out.println("\n\nMenu\n" + "1- Ajouter un orchestre\n" + "2- Ajouter un musicien\n" + "3- Ajouter un instrument\n" + "4- Supprimer un orchestre\n" + "5- Supprimer un musicien\n" + "6- Supprimer un instrument\n" + "7- Afficher les orchestres\n" + "8- Afficher les musiciens\n" + "9- Afficher les instruments\n" + "10- Associer un instrument à un muscien\n" + "11- Associer un musicien à un orchestre\n" + "12- Faire jouer un orchestre\n" + "13- Faire jouer un musicien\n" + "14- Faire jouer un instrument\n" + "15- Accorder un instrument"); } /* * Faire jouer un orchestre */ public void jouerOrchestre() { Saisie hSaisie = new Saisie(); System.out.println("Veuillez saisir l'id de l'Orchestre :"); int choix = hSaisie.saisieInt(); if (this.tOrchestres.containsKey(choix)) { this.tOrchestres.get(choix).jouer(); } } /* * Appelle la méthode jouer du musicien */ public void jouerMusicien() { Saisie hSaisie = new Saisie(); System.out.println("Veuillez saisir l'id du musicien :"); int choix = hSaisie.saisieInt(); if (this.tMusiciens.containsKey(choix)) { this.tMusiciens.get(choix).jouer(); } } /* * Appelle la méthode jouer de l'instrument */ public void jouerInstrument() { Saisie hSaisie = new Saisie(); System.out.println("Veuillez saisir l'id de l'instrument :"); int choix = hSaisie.saisieInt(); if (this.tInstruments.containsKey(choix)) { this.tInstruments.get(choix).jouer(); } } /* * Cherche dans le tableau d'instruments l'id et passe le lock à false (rend disponible) */ public void unlock(int id) { if (this.tInstruments.get(id) != null) { Instrument tmp = this.tInstruments.get(id); tmp.lock = false; } } /* public void afficherMusicien() { Saisie hSaisie = new Saisie(); System.out.println("Veuillez entrer le numéro du musicien à afficher :"); int num = hSaisie.saisieInt(); Musicien hMusic = this.tMusiciens.get(num); if (hMusic != null) { hMusic.sePresenter(); } } */ }