![JAR search and dependency download from the Maven repository](/logo.png)
com.evasion.module.travel.ITravelModule Maven / Gradle / Ivy
/*
* To change this template, choose Tools | Templates and open the template in
* the editor.
*/
package com.evasion.module.travel;
import com.evasion.entity.booktravel.BookTravel;
import com.evasion.entity.booktravel.Itinerary;
import com.evasion.entity.booktravel.RoadMap;
import com.evasion.entity.booktravel.exception.BookTravelServiceException;
import com.evasion.entity.content.Comment;
import com.evasion.entity.content.Contribution;
import com.evasion.exception.EvasionException;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
*
* @author sebastien
*/
public interface ITravelModule {
/**
* Trouver un carnet de voyage a partir de son ID. Cette methode ne remonte
* pas les elements en lazy loading tels que les feuilles de route.
*
* @param id identifiant technique du carnet de voyage.
* @return le carnet de voyage correspondant a l'ID technique demande.
* @throws EvasionException
*/
BookTravel findBooktravelWithoutRoadMap(Long id)
throws EvasionException;
/**
* Trouver les couples id,titre d'un auteur.
*
* @param username username de l'auteur
* @return map des clé, titre des booktravel de l'auteur passé en paramètre
* @throws EvasionException
*/
Map findBooktravelForUser(String username)
throws EvasionException;
/**
* Trouver les N dernier carnet de voyage créé.
* @param nbr nombre max d'enregistrment retourné.
* @return map des clé, titre des N dernier booktravel créé.
*/
Map lastBookTravel(int nbr);
/**
* Creer un carnet de voyage.
*
* @param booktravel le carnet de voyage a creer.
* @return le carnet de voyage persiste.
* @throws EvasionException
*/
BookTravel createOrUpdateBookTravel(BookTravel booktravel)
throws EvasionException;
/**
* Créer une feuille de route au sein d'un carnet de voyage.
*
* @param idBookTravel identifiant technique du carnet de voyage;
* @param contribution récit de la feuille de route;
* @param itinerary itineraire de la feuille de route;
* @throws EvasionExceptions
*/
void createRoadMap(final Long idBookTravel,
final Contribution contribution, final Itinerary itinerary)
throws EvasionException;
/**
* Renvoi les n plus récente feuille de route d'un carnet de voyage.
*
* @param idBookTravel identifiant technique du carnet de voyage.
* @param size nombre d'élément à remonter.
* @return liste des feuilles de route.
*/
List findNewestRoadMap(Long idBookTravel, int size);
/**
* Renvoi une feuille de route à partir de son Id technique. Récupère
* également les commentaire associé.
*
* @param id identifiant technique de la feuille de route.
* @return la feuille de route; null si non trouvé en base
* @throws BookTravelServiceException
*/
RoadMap findRoadMapById(Long id) throws EvasionException;
/**
* Créer un commentaire sur une feuille de route.
*
* @param roadMap feuille de route.
* @param commentaireNew commentaire à créer.
* @return
* true
si création réussi;
* false
sinon
*/
boolean createCommentOnRoadMap(RoadMap roadMap, Comment commentaireNew) throws EvasionException;
/**
* Renvoi une Map des titres et Id des roadmap Compris entre 2 date.
* L'interval est limiter à 1 ans.
*
* @param idBookTravel identifiant du bookTravel;
* @param dateDebutt date de début de la recherche
* @param dateFin date de fin de la recherche;
* @return Liste des feuilles de route correspondat à la recherche.
*/
List getArchiveRoadMapBetweenDate(Long idBookTravel, Date dateDebut, Date dateFin);
/**
* Renvoi la liste des étapes du voyage.
* @param idBookTravel identifiant du booktravel.
* @return liste des étapes.
*/
List getBookTravelStep(Long idBookTravel);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy