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); } }
/// <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)); }
private List <Track> GetAllTracks() { return(JsonCacheParser.Read()); }
private void CacheSongs(List <Track> tracks) { JsonCacheParser.Write(tracks); }
private List <Track> GetTracks() { List <Track> tracks = JsonCacheParser.Read(); return(tracks); }