package API;

public interface Requete extends MonPrint {
    /**
     * Recuperer l'id de l'etudiant
     *
     * @return l'id de l'etudiant a l'origine du message
     * */
    public int getEtuId();

    /**
     * Recuperer le message
     * */
    public String getMessage();

    /**
     * Recuperer l'id d'un message
     *
     * @return l'id du message
     * */
    public int getIdMessage();

    /**
     * Recuperer le type de la requete
     *
     * @return le type de la requete 2 ou 1
     * */
    public int getType();

    /**
     * Recuperer le groupe que l'etudiant veut rejoindre
     * */
    public int getWitchGroupe();

    /**
     * Recuperer le statut de la requete
     * */
    public String getStatut();

    /**
     * @see MonPrint
     * NB. On n'utilise le mécanisme des méthodes par défaut pour donner du code dans une interface. C'est un petit peu laid et à contre-emploi mais pratique ici.
     */
    public default String monPrint() {
        return null;
    }
}
