예제 #1
0
        public IList <IItem> ItemsForFavorites(IList <Favorite> favorites)
        {
            if (favorites == null)
            {
                return(null);
            }

            IList <IItem> items = new List <IItem>();

            foreach (Favorite fav in favorites)
            {
                switch (fav.FavoriteItemType)
                {
                case ItemType.AlbumArtist:
                    items.Add(albumArtistRepository.AlbumArtistForId(fav.FavoriteItemId));
                    break;

                case ItemType.Album:
                    items.Add(albumRepository.AlbumForId((int)fav.FavoriteItemId));
                    break;

                case ItemType.Artist:
                    items.Add(artistRepository.ArtistForId(fav.FavoriteItemId));
                    break;

                case ItemType.Folder:
                    items.Add(folderRepository.FolderForId((int)fav.FavoriteItemId));
                    break;

                case ItemType.Genre:
                    items.Add(genreRepository.GenreForId((int)fav.FavoriteItemId));
                    break;

                case ItemType.Playlist:
                    items.Add(playlistRepository.PlaylistForId((int)fav.FavoriteItemId));
                    break;

                case ItemType.Song:
                    items.Add(songRepository.SongForId((int)fav.FavoriteItemId));
                    break;

                case ItemType.Video:
                    items.Add(videoRepository.VideoForId((int)fav.FavoriteItemId));
                    break;
                }
            }

            return(items);
        }