TP-programmation-orientee-o.../TP09/Agenda.java
2023-06-20 21:02:09 +02:00

49 lines
1.5 KiB
Java

public interface Agenda {
/** Le plus petit créneau possible. */
int CRENEAU_MIN = 1;
/** Le plus grand créneau possible. */
int CRENEAU_MAX = 366;
/**
* Obtenir le nom de l'agenda.
* @return le nom de l'agenda
*/
String getNom();
/**
* Enregistrer un rendez-vous dans cet agenda.
*
* @param creneau le créneau du rendez-vous
* @param rdv le rendez-vous
* @throws CreneauInvalideException si le créneau est invalide
* @throws IllegalArgumentException si nom vaut null
* @throws OccupeException si le créneau n'est pas libre
*/
void enregistrer(int creneau, String rdv) throws CreneauInvalideException, IllegalArgumentException, OccupeException;
/**
* Annuler le rendez-vous pris à une creneau donnée.
* Rien ne se passe si le créneau est libre.
* Retourne vrai si l'agenda est modifié (un rendez-vous est annulé),
* faux sinon.
*
* @param creneau créneau du rendez-vous à annuler
* @return vrai si l'agenda est modifié
* @throws CreneauInvalideException si le créneau est invalide
*/
boolean annuler(int creneau) throws CreneauInvalideException;
/**
* Obtenir le rendez-vous pris à une creneau donnée.
*
* @param creneau le créneau du rendez-vous
* @return le rendez-vous à le créneau donnée
* @throws LibreException si pas de rendez-vous à ce créneau
* @throws CreneauInvalideException si le créneau est invalide
*/
String getRendezVous(int creneau) throws CreneauInvalideException, LibreException;
}