Example #1
0
        //public override string DirectoryIdentifier(MusicItem musicDir) {
        //    return "" + musicDir.Id;
        //}
        public async override Task <IEnumerable <MusicItem> > Reload(string folder)
        {
            FoldersPimpResponse response = null;

            if (folder == RootFolderKey)
            {
                response = await session.RootContentAsync();
            }
            else
            {
                response = await session.ContentsIn(folder);
            }
            return(Itemize(response));
        }
Example #2
0
        /// <summary>
        /// maps a json response to a list of music items
        /// </summary>
        /// <param name="response">the fetched data</param>
        private List <MusicItem> Itemize(FoldersPimpResponse response)
        {
            var ret = new List <MusicItem>();

            foreach (var folder in response.folders)
            {
                ret.Add(AudioConversions.FolderToMusicItem(folder));
            }
            foreach (var track in response.tracks)
            {
                var uri = session.PlaybackUriFor(track.id);
                ret.Add(TrackToMusicItem(track, uri));
            }
            return(ret);
        }