private List <Mix> GetMixes(MixFilter mixFilter, MixesViewType viewType, int pageNumber, string userSlug) { MixesRequest mixesRequest = requestFactory.CreateMixesRequest(mixFilter, viewType, pageNumber, userSlug); MixesResponse mixesResponse = requestExecutor.ExecuteMixesRequest(mixesRequest); sessionData.Update(mixesRequest, mixesResponse); return(ExtractMixes(mixesResponse)); }
public void SetUp() { origSched = RxApp.DeferredScheduler; RxApp.DeferredScheduler = new TestScheduler(); requestExecutor = new RequestExecutorStub(); mediaLibraryBrowser = new MediaLibraryBrowser(requestExecutor); mix = new Mix(new MixElement(), 0); mixFilter = new MixFilter(); }
private MixFilter CreateMixFilter(string filterText) { MixFilter mixFilter = new MixFilter(); while (true) { string[] result = StringUtils.GetStringInBetween("[", "]", filterText, false, false); if (result[0].Length == 0) { break; } mixFilter.Tags.Add(result[0]); filterText = filterText.Replace("[" + result[0] + "]", " "); } mixFilter.Query = filterText.Replace(" ", " ").Trim(); return(mixFilter); }
public void ResetFields() { request = null; origSched = RxApp.DeferredScheduler; RxApp.DeferredScheduler = new TestScheduler(); mixFilter = new MixFilter(); requestFactory = new RequestFactory(apiKey: apiKeyValue); mixId = 500; mixSetId = 150000; playToken = "1234509876"; userToken = "abcdefg"; viewType = MixesViewType.Feed; pageNumber = 1; requestFactory.PageSize = 20; }
public MixesRequest(string host, string apiKey, string userToken, MixesViewType view, string userSlug, int pageNumber, int pageSize, MixFilter mixFilter) : base(host, apiKey, pageNumber, pageSize) { this.userToken = userToken; this.viewType = view; this.userSlug = userSlug; this.mixFilter = mixFilter; if (view == MixesViewType.Feed || view == MixesViewType.Liked) { Url = String.Format("{0}users/{1}/mixes.xml?api_key={2}&user_token={3}&view={4}", BaseUri, userSlug, ApiKey, userToken, view.ToString().ToLower()); } else if (view == MixesViewType.Listened || view == MixesViewType.Recommended) { Url = String.Format("{0}mix_sets/{1}.xml?include=mixes&api_key={2}&user_token={3}", BaseUri, view.ToString().ToLower(), ApiKey, userToken); } else { Url = String.Format("{0}mixes.xml?api_key={1}&sort={2}", BaseUri, ApiKey, view.ToString().ToLower()); if (userToken.Length > 0) { Url += "&user_token=" + userToken; } } Url += "&per_page=" + pageSize; Url += "&page=" + pageNumber; if (mixFilter.Tags.Count > 0) { string tags = StringUtils.TagListToString(mixFilter.Tags, "%2B"); Url += "&tags=" + tags; } if (mixFilter.Query.Length > 0) { Url += "&q=" + mixFilter.Query; } }
private void SetBrowserMessage() { MixBrowsingMessage = String.Format("Displaying {0} of {1} mixes", BrowsedMixes.Count, MixesViewTypeAsString); MixFilter mixFilter = mediaLibraryBrowser.SessionData.LastMixesRequest.MixFilter; // 8tracks service deos not filter history adn recommended if (MixesViewTypeAsString.Equals(MixesViewType.Listened.ToString())) { return; } if (MixesViewTypeAsString.Equals(MixesViewType.Recommended.ToString())) { return; } if (mixFilter.Tags.Count > 0) { MixBrowsingMessage += String.Format(", tagged: {0}", StringUtils.TagListToString(mixFilter.Tags)); } if (mixFilter.Query.Length > 0) { MixBrowsingMessage += String.Format(", including \"{0}\"", mixFilter.Query); } }
public List <Mix> GetRecommendedMixes(MixFilter mixFilter, string userSlug) { return(GetMixes(mixFilter, MixesViewType.Recommended, 1, userSlug)); }
public List <Mix> GetHistoryMixes(MixFilter mixFilter, string userSlug) { return(GetMixes(mixFilter, MixesViewType.Listened, 1, userSlug)); }
public List <Mix> GetPopularMixes(MixFilter mixFilter) { return(GetMixes(mixFilter, MixesViewType.Popular, 1)); }
public List <Mix> GetHotMixes(MixFilter mixFilter) { return(GetMixes(mixFilter, MixesViewType.Hot, 1)); }
public List <Mix> GetRecentlyMadeMixes(MixFilter mixFilter) { return(GetMixes(mixFilter, MixesViewType.Recent, 1)); }
private List <Mix> GetMixes(MixFilter mixFilter, MixesViewType viewType, int pageNumber) { return(GetMixes(mixFilter, viewType, pageNumber, String.Empty)); }
public MixesRequest CreateMixesRequest(MixFilter mixFilter, MixesViewType view, int pageNumber) { return(new MixesRequest(baseUri, apiKey, userToken, view, String.Empty, pageNumber, pageSize, mixFilter)); }