Example #1
0
        public List <Track> Load(bool append, bool restore = false)
        {
            string path = InternalStorageHelper.InternalPlaylistAllLocation;

            System.IO.Directory.CreateDirectory(path);
            using (IXmlParsable parser = new JsonPlaylistParser(path, "All.json"))
            {
                List <Track> tracks = null;
                if (!append)
                {
                    tracks = JsonCacheParser.Read();
                }
                if (tracks == null)
                {
                    List <Paths> songs = SearchForSongs();
                    if (restore)
                    {
                        if (System.IO.File.Exists(Path.Combine(path, "All.json")))
                        {
                            File.Delete(Path.Combine(path, "All.json"));
                        }
                    }
                    parser.AddItems(songs);
                    tracks = TrackFinder.ConvertPathsToTracks(songs);
                    CacheSongs(tracks);
                }

                return(tracks);
            }
        }
Example #2
0
        /// <summary>
        /// Retuns custom adapter from either the tracks given or the tracks from cache
        /// </summary>
        /// <returns></returns>
        public BaseAdapter GetAdapter()
        {
            if (AllTracks == null)
            {
                AllTracks = JsonCacheParser.Read();
            }

            return(new SongAdapter(Context, AllTracks));
        }
Example #3
0
 private List <Track> GetAllTracks()
 {
     return(JsonCacheParser.Read());
 }
Example #4
0
 private void CacheSongs(List <Track> tracks)
 {
     JsonCacheParser.Write(tracks);
 }
Example #5
0
        private List <Track> GetTracks()
        {
            List <Track> tracks = JsonCacheParser.Read();

            return(tracks);
        }