Package association

Class Evenement

java.lang.Object
association.Evenement
All Implemented Interfaces:
Serializable

public class Evenement extends Object implements Serializable
Description d'un événement d'une association : nom, lieu, date, durée, participants et nombre maximum de participants.
Author:
Jarod Martin
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Version de la classe pour la sérialisation.
      See Also:
    • nom

      private String nom
      Nom de l'événement.
    • lieu

      private String lieu
      Lieu de l'événement.
    • date

      private LocalDateTime date
      Date de l'événement.
    • duree

      private int duree
      Durée en minute de l'événement.
    • nbParticipantsMax

      private int nbParticipantsMax
      Nombre maximum de participants.
    • participants

      private Set<InterMembre> participants
      Participants inscrits à l'événement.
  • Constructor Details

    • Evenement

      public Evenement(String nom, String lieu, LocalDateTime date, int duree, int nbParticipantsMax)
      Crée un événement avec les informations essentielles.
      Parameters:
      nom - le nom (non null)
      lieu - le lieu (non null)
      date - la date (avec LocalDateNow non null)
      duree - la durée en minute supérieure à 0
      nbParticipantsMax - le nombre maximum de participants (0 signifie un nombre quelconque)
    • Evenement

      public Evenement(String nom, String lieu, int jour, Month mois, int annee, int heure, int minutes, int duree, int nbParticipantsMax)
      Crée un événement avec les informations essentielles sans passer par un objet LocalDateTime pour la date.
      Parameters:
      nom - le nom (non null)
      lieu - le lieu (non null)
      jour - le jour dans le mois (nombre de 0 à 31)
      mois - le mois dans l'année
      annee - l'année
      heure - l'heure de la journée (nombre entre 0 et 23)
      minutes - les minutes de l'heure (nombre entre 0 et 59)
      duree - la durée (en minutes)
      nbParticipantsMax - le nombre maximum de participants (0 signifie un nombre quelconque)
  • Method Details

    • pasDeChevauchementLieu

      public boolean pasDeChevauchementLieu(Evenement evt)
      Vérifie que l'événement ne chevauche pas un autre événement par rapport au lieu (indépendamment du temps).
      Parameters:
      evt - l'événement (non null) à comparer
      Returns:
      si les deux événements se chevauchent renvoie false, sinon renvoie true s'ils ne se chevauchent pas
    • pasDeChevauchementTemps

      public boolean pasDeChevauchementTemps(Evenement evt)
      Vérifie que l'événement ne chevauche pas un autre événement par rapport au temps (indépendamment du lieu). Un chevauchement a lorsque les dates de début sont comprises entre la date de début et de fin de l'événement à comparer et inversement. Cas particulier, il n'y a pas chevauchement lorsque une date de fin correspond à une date de début.
      Parameters:
      evt - l'événement (non null) à comparer
      Returns:
      si les deux événements se chevauchent renvoie false, sinon renvoie true s'ils ne se chevauchent pas
    • getNom

      public String getNom()
      Renvoie le nom de l'événement.
      Returns:
      le nom de l'événement
    • setNom

      public void setNom(String nom)
      Modifie le nom de l'événement.
      Parameters:
      nom - le nouveau nom (non null)
    • getLieu

      public String getLieu()
      Renvoie le lieu de l'événement.
      Returns:
      le lieu de l'événement
    • setLieu

      public void setLieu(String lieu)
      Modifie le lieu de l'événement.
      Parameters:
      lieu - le nouveau lieu (non null)
    • getDate

      public LocalDateTime getDate()
      Renvoie la date de l'événement.
      Returns:
      la date de l'événement
    • setDate

      public void setDate(LocalDateTime date)
      Modifie la date de l'événement.
      Parameters:
      date - la nouvelle date (objet LocalDateTime non null)
    • setDate

      public void setDate(int jour, Month mois, int annee, int heure, int minutes)
      Modifie la date de l'événement.
      Parameters:
      jour - le jour dans le mois (nombre de 0 à 31)
      mois - le mois dans l'année
      annee - l'année
      heure - l'heure de la journée (nombre entre 0 et 23)
      minutes - les minutes de l'heure (nombre entre 0 et 59)
    • getDuree

      public int getDuree()
      Renvoie la durée en minute de l'événement.
      Returns:
      la durée de l'événement
    • setDuree

      public void setDuree(int duree)
      Modifie la durée de l'événement.
      Parameters:
      duree - la nouvelle durée en minute (supérieure à 0)
    • getNbParticipantsMax

      public int getNbParticipantsMax()
      Renvoie le nombre maximum de participants.
      Returns:
      le nombre maximum de participants
    • setNbParticipantsMax

      public void setNbParticipantsMax(int nbParticipantsMax)
      Modifie le nombre maximum de participants.
      Parameters:
      nbParticipantsMax - le nouveau nombre maximum de participants (0 signifie un nombre quelconque)
    • getParticipants

      public Set<InterMembre> getParticipants()
      Renvoie la liste des participants à l'événement.
      Returns:
      la liste des participants à l'événement
    • ajouterParticipant

      public boolean ajouterParticipant(InterMembre membre)
      Ajouter un membre à l'événement.
      Parameters:
      membre - le membre à ajouter (non null)
      Returns:
      true s'il n'y a pas eu de problème, false si l'évènement est en conflit de calendrier avec un évènement auquel est déjà inscrit le membre ou si le nombre de participants maximum est déjà atteint
    • supprimerParticipant

      public boolean supprimerParticipant(InterMembre membre)
      Supprimer un participant de l'événement.
      Parameters:
      membre - le membre à supprimer (non null)
      Returns:
      si le membre était bien inscrit à l'évènement, renvoie true pour préciser que l'annulation est effective, sinon false si le membre n'était pas inscrit à l'évènement
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object