package crous; public class InterfaceCrous { private MachineCrous m = new MachineCrous(); /** La carte passee en parametre est posee sur le capteur de la * machine. * @param c la carte posee sur la capteur de la machine */ public void poserCarte(CarteCrous c) { try { m.setCarte(c); } catch( CarteDejaPresente e ) { System.out.println("Une carte est deja presente !"); } } /** La carte posee sur le capteur de la machine est retiree. */ public void retirerCarte() { try { m.unsetCarte(); } catch( CarteNonPresente e ) { System.out.println("Aucune carte n'est presente !"); } } /** Debite un repas sur la carte posee sur le capteur. */ public void payerRepas() { try { m.payerRepas(); } catch( CarteNonPresente e ) { System.out.println("Aucune carte n'est presente !"); } catch( CreditInsuffisant e ) { System.out.println("Vous n'avez pas assez de credit sur votre carte."); } catch( CategorieInconnue e ) { System.out.println("Votre categorie ne peut etre reconnue."); } } /** Effectue un paiement de repas gratuit. */ public void payerRepasGratuit() { try { m.payerRepasGratuit(); } catch( CarteNonPresente e ) { System.out.println("Aucune carte n'est presente !"); } catch( CreditInsuffisant e ) { System.out.println("Vous n'avez pas assez de points sur votre carte."); } } public static void main(String args[]) { CarteCrous c = new CarteCrous("bob123", Categorie.passager); InterfaceCrous i = new InterfaceCrous(); System.out.println("Pose carte..."); i.poserCarte(c); System.out.println("Pose carte..."); i.poserCarte(c); System.out.println("Payer repas..."); i.payerRepas(); System.out.println("Payer repas gratuit..."); i.payerRepasGratuit(); System.out.println("Retirer carte..."); i.retirerCarte(); } }