All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.evasion.ejb.local.BookTravelManagerLocal Maven / Gradle / Ivy

There is a newer version: 2.0.0.2
Show newest version
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.evasion.ejb.local;

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 java.util.List;

/**
 *
 * @author sebastien
 */
public interface BookTravelManagerLocal {

    /**
     * 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 BookTravelServiceException
     */
    BookTravel findBooktravelWithoutRoadMap(Long id)
            throws BookTravelServiceException;

    /**
     * Creer un carnet de voyage.
     * @param booktravel le carnet de voyage a creer.
     * @return le carnet de voyage persiste.
     * @throws BookTravelServiceException
     */
    BookTravel createBookTravel(BookTravel booktravel)
            throws BookTravelServiceException;

    /**
     * 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 BookTravelServiceException
     */
    void createRoadMap(final Long idBookTravel,
            final Contribution contribution, final Itinerary itinerary)
            throws BookTravelServiceException;

    /**
     * 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.
     * @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 BookTravelServiceException;

    /**
     * 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);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy