package org.podcastpedia.web.podcasts;
import java.util.List;
import org.podcastpedia.common.domain.Podcast;
import org.podcastpedia.common.exception.BusinessException;
import org.springframework.stereotype.Service;
/**
* Service interface, mainly used to access the DAO layer.
*
* @author amasia
*
*/
@Service("podcastService")
public interface PodcastService {
/**
* Returns a podcast by its id
*
* @param podcastId
* @return
*/
public Podcast getPodcastById(int podcastId) throws BusinessException;
/**
* Retunrs the number of episodes available for the given podcast
* @param podcastId
* @return
*/
public Integer getNumberEpisodesForPodcast(Integer podcastId);
/**
* Return attributes of the podcast given the feed url
*
*
* @param numberOfPodcasts (number of podcasts to be returned)
* @return
*/
public List<Podcast> getPodcastAttributesByFeedUrl(String feedUrl);
public Podcast getPodcastForIdentifier(String identifier) throws BusinessException;
}