public SamplePlaylistViewModel() : base(new MockPlaylistView()) { var musicFiles = new[] { new SampleMusicFile(new MusicMetadata(new TimeSpan(0, 3, 45), 320000) { Artists = new[] { @"Culture Beat" }, Title = @"Serenity (Epilog)", }, @"C:\Users\Public\Music\Dancefloor\Culture Beat - Serenity"), new SampleMusicFile(new MusicMetadata(new TimeSpan(0, 2, 2), 320000) { Artists = new[] { "First artist", "Second artist" }, Title = "This track has a very long title. Let's see how the UI handles this.", }, ""), new SampleMusicFile(new MusicMetadata(new TimeSpan(1, 33, 0), 320000) { Artists = new string[0], Title = "", }, @"C:\Users\Public\Music\Dancefloor\Culture Beat - Serenity"), new MusicFile(x => { throw new InvalidOperationException("Sample exception."); }, @"C:\corruptfile.mp3") }; var playlistManager = new PlaylistManager(); playlistManager.AddItems(musicFiles.Select(x => new PlaylistItem(x))); PlaylistManager = playlistManager; playlistManager.CurrentItem = playlistManager.Items.First(); }
internal static bool BootstrapLibrary() { if (String.IsNullOrWhiteSpace(SecretKey)) { return(true); } BroadcastManager.Init(); ChatManager.Init(); PlaylistManager.Init(); QueueManager.Init(); SettingsManager.Init(); UserManager.Init(); SuggestionManager.Init(); StatisticsManager.Init(); // ModuleManager should always load last. ModuleManager.Init(); using (var s_Db = Database.GetConnection()) if (s_Db.SingleById <CoreSetting>("gsun") == null || s_Db.SingleById <CoreSetting>("gspw") == null) { return(false); } UserManager.Authenticate(); return(true); }
public void DeserializeDerivedPlaylist() { string playlistDir = Path.Combine(OutputPath, "DeserializeDerivedPlaylist"); IPlaylistHandler handler = new LegacyPlaylistHandler(); if (Directory.Exists(playlistDir)) { Directory.Delete(playlistDir, true); } Assert.IsFalse(Directory.Exists(playlistDir)); PlaylistManager manager = new PlaylistManager(playlistDir, handler); var songs = CreateSongArray <LegacyPlaylistSong>("Legacy_", "LegacyAuthor_", 1000, Identifier.LevelId | Identifier.Hash | Identifier.Key); IPlaylist? playlist = manager.CreatePlaylist("5LegacySongs", "Five Legacy Songs", "TestAuthor", string.Empty, "Test Description"); foreach (var song in songs) { playlist.Add(song); } playlist.RaisePlaylistChanged(); manager.RegisterPlaylist(playlist); manager.StoreAllPlaylists(); manager = new PlaylistManager(playlistDir, handler); playlist = manager.GetHandler <LegacyPlaylistHandler>()?.Deserialize <DerivedLegacyPlaylist>(File.OpenRead(Path.Combine(playlistDir, "5LegacySongs.bplist"))); if (Directory.Exists(playlistDir)) { Directory.Delete(playlistDir, true); } }
public MainPage() { this.InitializeComponent(); this.NavigationCacheMode = Windows.UI.Xaml.Navigation.NavigationCacheMode.Enabled; player = new MediaPlayer(); songs = new ObservableCollection <Song>(); playlistManager = new PlaylistManager(); playlists = new ObservableCollection <Playlist>(playlistManager.Playlists.Values); SongManager.GetAllSongs(songs); menuItems = new List <MenuItem>(); //Load Pane menuItems.Add(new MenuItem { IconFile = "Assets/Icons/adele.png", Category = SongCategory.Adele }); menuItems.Add(new MenuItem { IconFile = "Assets/Icons/Justin.png", Category = SongCategory.Justin }); menuItems.Add(new MenuItem { IconFile = "Assets/Icons/sia.png", Category = SongCategory.Sia }); menuItems.Add(new MenuItem { IconFile = "Assets/Icons/taylor.png", Category = SongCategory.Taylor }); }
private void Application_Launching(object sender, LaunchingEventArgs e) { this.RemoveCurrentDeactivationSettings(); Logger.Instance.Info("App.Application_Launching check 1"); this.PerformInitialization(); Logger.Instance.Info("App.Application_Launching check 2"); this.RestoreState(true); Logger.Instance.Info("App.Application_Launching check 3"); PushNotificationsManager.Instance.Initialize(); Logger.Instance.Info("App.Application_Launching check 5"); PlaylistManager.Initialize(); Logger.Instance.Info("App.Application_Launching check 6"); //AudioCacheManager.Instance.ClearCache(null); //Logger.Instance.Info("App.Application_Launching check 7"); BaseDataManager.Instance.NeedRefreshBaseData = true; App._uriMapper.NeedHandleActivation = true; ContactsManager.Instance.EnsureInSyncAsync(false); ContactsSyncManager.Instance.Sync(null); ShareLaunchingEventArgs launchingEventArgs = e as ShareLaunchingEventArgs; if (launchingEventArgs == null) { return; } this.ShareOperation = launchingEventArgs.ShareTargetActivatedEventArgs.ShareOperation; }
public void PreviousAndNext() { var manager = new PlaylistManager(); manager.AddAndReplaceItems(threeItems); Assert.IsFalse(manager.CanPreviousItem); Assert.IsFalse(manager.CanNextItem); AssertHelper.PropertyChangedEvent(manager, x => x.CanNextItem, () => manager.CurrentItem = threeItems[0]); Assert.IsFalse(manager.CanPreviousItem); Assert.IsTrue(manager.CanNextItem); AssertHelper.PropertyChangedEvent(manager, x => x.CanPreviousItem, () => manager.NextItem()); Assert.AreEqual(threeItems[1], manager.CurrentItem); Assert.IsTrue(manager.CanPreviousItem); Assert.IsTrue(manager.CanNextItem); AssertHelper.PropertyChangedEvent(manager, x => x.CanNextItem, () => manager.NextItem()); Assert.AreEqual(threeItems[2], manager.CurrentItem); Assert.IsTrue(manager.CanPreviousItem); Assert.IsFalse(manager.CanNextItem); AssertHelper.PropertyChangedEvent(manager, x => x.CanNextItem, () => manager.PreviousItem()); Assert.AreEqual(threeItems[1], manager.CurrentItem); Assert.IsTrue(manager.CanPreviousItem); Assert.IsTrue(manager.CanNextItem); }
public PlayManager(ConfBot config, Player playerConnection, PlaylistManager playlistManager, ResourceResolver resourceResolver) { confBot = config; this.playerConnection = playerConnection; this.playlistManager = playlistManager; this.resourceResolver = resourceResolver; }
public void SongIsCorrectlyAddedToPlaylist() { // Setup some testdata var playlistName = "Sjoerds playlist"; var song = new Song() { Artist = "Robbie Williams", Name = "Angels" }; IPlaylistManager playlistManager = new PlaylistManager(); var currentPlaylists = playlistManager.GetPlaylists(); // Controleer of playlist leeg is Assert.IsTrue(currentPlaylists.Count() == 0); // Voeg playlist toe playlistManager.AddPlaylist(playlistName); // Controleer of de playlist is toegevoegd Assert.IsTrue(currentPlaylists.Count() == 1); // Voeg een song toe aan de playlist playlistManager.AddSongToPlaylist(playlistName, song); // Ophalen van de songs in de playlist var songsInPlaylist = playlistManager.GetPlaylists().Where(x => x.Name == playlistName).FirstOrDefault().Songs; // Controleer of de song is toegevoegd Assert.IsTrue(songsInPlaylist.Count() == 1); }
public void ResetNextWithShuffle() { var manager = new PlaylistManager(); manager.AddAndReplaceItems(threeItems); manager.Shuffle = true; manager.CurrentItem = threeItems[0]; for (int i = 0; i < 2; i++) { Assert.IsTrue(manager.CanNextItem); manager.NextItem(); } Assert.IsFalse(manager.CanNextItem); manager.Reset(); for (int i = 0; i < 2; i++) { Assert.IsTrue(manager.CanNextItem); manager.NextItem(); } Assert.IsFalse(manager.CanNextItem); }
protected override void Dispose(bool disposing) { if (disposing) { } if (!IsInvalid) { if (_callbacks != null) { _callbacks.Dispose(); _callbacks = null; } try { lock (Spotify.Mutex) { Spotify.sp_playlist_release(Handle); } } catch { } finally { PlaylistTrackManager.RemoveAll(this); PlaylistManager.Remove(Handle); Handle = IntPtr.Zero; Debug.WriteLine("Playlist disposed"); } } base.Dispose(disposing); }
public void RemoveFromPlaylist(Song item, int position) { PlaylistManager.RemoveTrackFromPlaylistDialog(this.item, item, position, () => { if (position == 0) { adapter.NotifyItemChanged(0); } else { adapter.NotifyItemRemoved(position); } }, () => { adapter.NotifyItemChanged(position); }, () => { if (position == 0) { adapter.NotifyItemChanged(position); } else { adapter.NotifyItemInserted(position); } }); }
private void button1_Click(object sender, EventArgs e) { PlaylistManager playlistManager = new PlaylistManager(); playlistManager.Show(); //Trace.WriteLine(TypeDescriptor.GetComponentName(this.btnProcess)); }
public PlayManager(ConfBot config, IPlayerConnection playerConnection, PlaylistManager playlistManager, ResourceFactory resourceFactory) { confBot = config; this.playerConnection = playerConnection; this.playlistManager = playlistManager; this.resourceFactory = resourceFactory; }
public void MultipleExtensions_NotDefault() { string playlistDir = Path.Combine(OutputPath, "MultipleExtensions_NotDefault"); IPlaylistHandler expectedHandler = new LegacyPlaylistHandler(); if (Directory.Exists(playlistDir)) { Directory.Delete(playlistDir, true); } Assert.IsFalse(Directory.Exists(playlistDir)); PlaylistManager manager = new PlaylistManager(playlistDir, new MockPlaylistHandler()); Assert.IsNull(manager.GetHandlerForExtension("bplist")); Assert.IsTrue(manager.RegisterHandler(expectedHandler)); Assert.IsTrue(Directory.Exists(playlistDir)); Assert.AreEqual(typeof(MockPlaylistHandler), manager.DefaultHandler?.GetType()); Assert.AreEqual(expectedHandler, manager.GetHandlerForExtension("bplist")); Assert.AreEqual(expectedHandler, manager.GetHandlerForExtension("JsOn")); if (Directory.Exists(playlistDir)) { Directory.Delete(playlistDir, true); } }
/// <summary> /// Invoked when the user clicks on Delink. /// </summary> /// <param name="sender">The sender of the event</param> /// <param name="e">The event data</param> private void Delink_Click(object sender, RoutedEventArgs e) { ThreadStart cloudThread = delegate() { Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { CloudBrowserIsLoading = true; CloudControlsAreVisible = false; })); ServiceManager.Delink(); Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { for (int i = 0; i < SettingsManager.Playlists.Count; i++) { var p = SettingsManager.Playlists[i]; if (p.ID > 0) { PlaylistManager.RemovePlaylist(p.ID); i--; } } })); }; Thread cl_thread = new Thread(cloudThread); cl_thread.Name = "Cloud delink thread"; cl_thread.Priority = ThreadPriority.Lowest; cl_thread.Start(); }
private void Application_Activated(object sender, ActivatedEventArgs e) { Logger.Instance.Info("App.Application_Activated check 1, InstancePreserved=" + e.IsApplicationInstancePreserved.ToString()); if (!e.IsApplicationInstancePreserved) { this.RestoreSessionType(); } if (e.IsApplicationInstancePreserved) { this.StartState = StartState.Reactivated; if (!ConversationsViewModel.IsInstanceNull) { ConversationsViewModel.Instance.NeedRefresh = true; } NetworkStatusInfo.Instance.RetrieveNetworkStatus(); } else { this.PerformInitialization(); this.StartState = StartState.TombstonedThenRessurected; this.RestoreState(false); } Logger.Instance.Info("App.Application_Activated check 3"); PushNotificationsManager.Instance.Initialize(); Logger.Instance.Info("App.Application_Activated check 4"); PlaylistManager.Initialize(); Logger.Instance.Info("App.Application_Activated check 5"); ContactsManager.Instance.EnsureInSyncAsync(false); BaseDataManager.Instance.NeedRefreshBaseData = true; App._uriMapper.NeedHandleActivation = true; }
public void FromParent() { string playlistsPath = Path.Combine(OutputPath, "FromParent"); Directory.CreateDirectory(playlistsPath); string subDirectory = Path.Combine(playlistsPath, "ChildFolder"); Directory.CreateDirectory(subDirectory); string parentPlaylist = "5LegacySongs.bPlist"; string parentPlaylistPath = Path.Combine(playlistsPath, parentPlaylist); string childPlaylist = "MDBB.blist"; string childPlaylistPath = Path.Combine(subDirectory, childPlaylist); if (!File.Exists(parentPlaylistPath)) { File.Copy(Path.Combine(TestTools.DataFolder, "GetPlaylistTests", parentPlaylist), parentPlaylistPath); } if (!File.Exists(childPlaylistPath)) { File.Copy(Path.Combine(TestTools.DataFolder, "BlisterPlaylists", childPlaylist), childPlaylistPath); } PlaylistManager manager = new PlaylistManager(playlistsPath, new LegacyPlaylistHandler(), new BlistPlaylistHandler()); Assert.IsTrue(manager.HasChildren); PlaylistManager childManager = manager.GetChildManagers().First(); childManager.SupportsExtension("bplist"); IPlaylistHandler?handler = childManager.GetHandlerForExtension("bplist"); Assert.IsNotNull(handler); handler = childManager.GetHandler <LegacyPlaylistHandler>(); Assert.IsNotNull(handler); string[] supportedExtensions = childManager.GetSupportedExtensions(); Assert.AreEqual(3, supportedExtensions.Length); }
public void Should_AddSongsToPlaylistAndReturnHowAdded_When_CalledUpdatePlaylist() { //Arrange Playlist playlistToUpdate = new Playlist(1, "Testing"); // its empty at the beginning. Song song1 = new Song(1, "The Weeknd", "The Hills", GenreName.Pop, 2015, 1, ""); Song song2 = new Song(2, "Alicja Majewska", "Żyć się chce", GenreName.Pop, 2019, 1, ""); Song song3 = new Song(3, "Selah Sue", "Crazy Vibes", GenreName.Jazz, 2011, 1, ""); List <Song> allSongs = new List <Song>(); allSongs.Add(song1); allSongs.Add(song2); allSongs.Add(song3); List <int> chosedSongIds = new List <int>(); chosedSongIds.Add(1); chosedSongIds.Add(3); //add ids of song1, song3. var playlistServiceMock = new Mock <IPlaylistService>(); var songServiceMock = new Mock <ISongService>(); songServiceMock.Setup(m => m.GetAllItems()).Returns(allSongs); playlistServiceMock.Setup(m => m.GetPlaylistById(1)).Returns(playlistToUpdate); playlistServiceMock.Setup(m => m.ReturnSongsAsidePlaylist(allSongs, playlistToUpdate)).Returns(allSongs); var playlistManager = new PlaylistManager(new MenuView(), songServiceMock.Object, playlistServiceMock.Object); //Act var result1 = playlistManager.UpdatePlaylist(1, chosedSongIds); //Assert result1.Should().BeOfType(typeof(int)); result1.Should().Be(2); playlistToUpdate.Content.Should().HaveCount(2); playlistToUpdate.Content.Should().Contain(song1); playlistToUpdate.Content.Should().Contain(song3); playlistToUpdate.Content.Should().NotContain(song2); }
public void ProcessJob(JobResult job) { if (job.Successful) { HistoryManager.TryUpdateFlag(job.Song, HistoryFlag.Downloaded); var recentPlaylist = Config.RecentPlaylistDays > 0 ? PlaylistManager.GetPlaylist(BuiltInPlaylist.BeatSyncRecent) : null; recentPlaylist?.TryAdd(job.Song); } else if (job.DownloadResult.Status != DownloadResultStatus.Success) { if (job.DownloadResult.HttpStatusCode == 404) { // Song isn't on Beat Saver anymore, keep it in history so it isn't attempted again. Logger.log?.Debug($"Setting 404 flag for {job.Song.ToString()}"); if (!HistoryManager.TryUpdateFlag(job.Song, HistoryFlag.NotFound)) { Logger.log?.Debug($"Failed to update flag for {job.Song.ToString()}"); } PlaylistManager.RemoveSongFromAll(job.Song); } else { // Download failed for some reason, remove from history so it tries again. HistoryManager.TryRemove(job.Song.Hash); } } else if (job.ZipResult?.ResultStatus != ZipExtractResultStatus.Success) { // Unzipping failed for some reason, remove from history so it tries again. HistoryManager.TryRemove(job.Song.Hash); } }
public void Should_ReturnZero_When_CalledUpdatePlaylistWithEmptySongIds() { //Arrange Playlist playlistToUpdate = new Playlist(1, "Testing"); // its empty at the beginning. Song song1 = new Song(1, "The Weeknd", "The Hills", GenreName.Pop, 2015, 1, ""); Song song2 = new Song(2, "Alicja Majewska", "Żyć się chce", GenreName.Pop, 2019, 1, ""); Song song3 = new Song(3, "Selah Sue", "Crazy Vibes", GenreName.Jazz, 2011, 1, ""); List <Song> allSongs = new List <Song>(); allSongs.Add(song1); allSongs.Add(song2); allSongs.Add(song3); var playlistServiceMock = new Mock <IPlaylistService>(); var songServiceMock = new Mock <ISongService>(); songServiceMock.Setup(m => m.GetAllItems()).Returns(allSongs); playlistServiceMock.Setup(m => m.GetPlaylistById(1)).Returns(playlistToUpdate); playlistServiceMock.Setup(m => m.ReturnSongsAsidePlaylist(allSongs, playlistToUpdate)).Returns(allSongs); var playlistManager = new PlaylistManager(new MenuView(), songServiceMock.Object, playlistServiceMock.Object); //Act var result = playlistManager.UpdatePlaylist(1, new List <int>()); //Assert result.Should().BeOfType(typeof(int)); result.Should().Be(0); }
public static void BroadcastTrackIfNeeded(BackgroundAudioPlayer player, List <AudioObj> playlist = null, PlaybackSettings settings = null, bool allowCache = false, bool bypassChecks = false) { try { if (!bypassChecks && (player.PlayerState != Microsoft.Phone.BackgroundAudio.PlayState.Playing || (DateTime.Now - AudioTrackHelper._lastTimeBroadcastAttempt).TotalSeconds < 3.0)) { return; } AudioTrackHelper._lastTimeBroadcastAttempt = DateTime.Now; if (settings == null) { settings = PlaylistManager.ReadPlaybackSettings(allowCache); if (!settings.Broadcast) { return; } } AudioTrack track = player.Track; if (track == null || track.GetTagId() == null) { return; } AudioTrackHelper.EnsureAppGlobalStateInitialized(); AudioService.Instance.StatusSet("", track.GetTagId(), (Action <BackendResult <long, ResultCode> >)(res => {})); } catch (Exception ex) { Logger.Instance.Error("Broadcast track failed", ex); } }
/// <summary> /// Initializes the playlist generation module /// </summary> public void Initialize() { // create playlist generation manager, load it and register with container PlaylistManager playlistGenerationManager = Container.Resolve <PlaylistManager>(); playlistGenerationManager.Load(PlaylistGeneratorsXMLFile); Container.RegisterInstance <PlaylistManager>(playlistGenerationManager); // save the generators on exit Application.Current.Exit += (sender, e) => { try { playlistGenerationManager.Save(PlaylistGeneratorsXMLFile); } catch { } }; // create playlist generation view model PlaylistGenerationViewModel playlistGenerationVM = Container.Resolve <PlaylistGenerationViewModel>(); playlistGenerationManager.GeneratorAdded += playlistGenerationVM.OnGeneratorAdded; // set selected if first tab in tabs region if (!RegionManager.Regions["TabsRegion"].Views.Any()) { playlistGenerationVM.IsSelected = true; } // register view RegionManager.RegisterViewWithRegion("TabsRegion", () => playlistGenerationVM); }
public void GetData(GenericCollectionViewModel <List <AudioObj>, AudioHeader> caller, int offset, int count, Action <BackendResult <List <AudioObj>, ResultCode> > callback) { Playlist playlist = PlaylistManager.LoadTracksFromIsolatedStorage(true); if (playlist.Tracks == null) { playlist.Tracks = (new List <AudioObj>()); } List <AudioObj> resultData = playlist.Tracks; if (this.Shuffle) { resultData = new List <AudioObj>(); List <int> .Enumerator enumerator = playlist.ShuffledIndexes.GetEnumerator(); try { while (enumerator.MoveNext()) { int current = enumerator.Current; resultData.Add(playlist.Tracks[current]); } } finally { enumerator.Dispose(); } } callback(new BackendResult <List <AudioObj>, ResultCode>(ResultCode.Succeeded, resultData)); }
public void TestSearchAndAddTrack() { UserManager userManager = (UserManager)DbInitializer.CreateUserManager(); PlaylistManager playlistManager = (PlaylistManager)DbInitializer.CreatePlaylistManager(); var user = userManager.ReadUser("*****@*****.**"); var playlistje = playlistManager.CreatePlaylistForUser("testPlaylist", "teste", "tesje", 2, true, null, user); var result = controller.SearchTrack("kshmr - bazaar"); var tracks = result.Data as List <Track>; Assert.IsNotNull(tracks); Assert.IsTrue(tracks.Any(t => t.Title.ToString().ToLower().Contains("bazaar"))); var addTrackResult = controller.AddTrack(playlistje.Id, tracks.First().TrackSource.TrackId); Assert.IsNotNull(addTrackResult as JsonResult); // if the result is a JsonResult, the track is added successfully var playlistResult = controller.View(playlistje.Key) as ViewResult; Assert.IsNotNull(playlistResult); playlistje = playlistResult.Model as Playlist; Assert.IsNotNull(playlistje); Assert.AreEqual(1, playlistje.PlaylistTracks.Count); }
public void TotalDurationWithMetadataLoading() { var manager = new PlaylistManager(); Assert.AreEqual(TimeSpan.Zero, manager.TotalDuration); var firstFile = new MockMusicFile(new MusicMetadata(TimeSpan.FromSeconds(10), 0), ""); manager.AddAndReplaceItems(new[] { new PlaylistItem(firstFile) }); var secondMetadata = new MusicMetadata(TimeSpan.FromSeconds(20), 0); var secondFile = new MusicFile(async x => { await Task.Delay(10); return(secondMetadata); }, ""); manager.AddItems(new[] { new PlaylistItem(secondFile) }); Assert.IsTrue(manager.IsTotalDurationEstimated); Assert.AreEqual(TimeSpan.FromSeconds(20), manager.TotalDuration); AssertHelper.PropertyChangedEvent(manager, x => x.TotalDuration, () => secondFile.GetMetadataAsync().GetResult()); Assert.IsFalse(manager.IsTotalDurationEstimated); Assert.AreEqual(TimeSpan.FromSeconds(30), manager.TotalDuration); var thirdFile = new MockMusicFile(new MusicMetadata(TimeSpan.FromSeconds(30), 0), ""); AssertHelper.PropertyChangedEvent(manager, x => x.TotalDuration, () => manager.AddItems(new[] { new PlaylistItem(thirdFile) })); Assert.AreEqual(TimeSpan.FromSeconds(60), manager.TotalDuration); }
//load pl public static IList <Test> LoadPlaylist(Project project, string playlistpath) { IList <Test> test_list = null; try { PlaylistManager pl_manager = new PlaylistManager(project); pl_manager.LoadPlaylist(playlistpath); if (pl_manager.IsPlaylistLoaded() == true) { Log(String.Format("Playlist loaded:- {0}", playlistpath)); } else { Log("Error loading playlist"); } test_list = project.GetTests(); Log(String.Format("{0} tests found", test_list.Count.ToString())); } catch (Exception e) { Console.WriteLine("Exception:-{0}", e.ToString()); } return(test_list); }
protected override void OnInitialize() { base.OnInitialize(); musicFileContext = Container.GetExportedValue <MockMusicFileContext>(); musicFiles = new ObservableCollection <MusicFile>() { musicFileContext.Create(@"C:\Users\Public\Music\Dancefloor\Culture Beat - Serenity.wav"), musicFileContext.Create(@"C:\Culture Beat - Serenity - Epilog.wma"), }; selectionService = Container.GetExportedValue <SelectionService>(); selectionService.Initialize(musicFiles); playlistManager = new PlaylistManager(); controller = Container.GetExportedValue <PlaylistController>(); controller.PlaylistSettings = new PlaylistSettings(); controller.PlaylistManager = playlistManager; controller.Initialize(); controller.Run(); shellService = Container.GetExportedValue <ShellService>(); var view = shellService.PlaylistView; viewModel = ViewHelper.GetViewModel <PlaylistViewModel>((IView)view); }
/// <summary> /// Load the master playlist and find the three playlists used to render the gui /// default will be default playlist that starts playing /// channels will render all channels as selectable buttons /// homecontrol will be rendered in a browser control /// </summary> private void LoadMasterPlaylist() { // Get master playlist from configuration string master = Properties.Settings.Default.MasterPlaylist; if (string.IsNullOrWhiteSpace(master)) { throw new Exception("Master playlist not found in AllInOnePlayer.exe.config"); } this.MasterPlaylist = PlaylistManager.Create(new Uri(this.AbsolutePaths(master)), true, "master", false); // Get default playlist from master playlist ZonePlaylist list; this.TryGetPlaylistItem(this.MasterPlaylist.PlayList.Where(playList => playList.ItemName.ToLower().CompareTo(NameDefaultPlaylist) == 0).FirstOrDefault(), out list); this.DefaultPlaylist = list; // Get channel playlist from master playlist this.TryGetPlaylistItem(this.MasterPlaylist.PlayList.Where(playList => playList.ItemName.ToLower().CompareTo(NameChannelPlaylist) == 0).FirstOrDefault(), out list); this.ChannelPlaylist = list; // Get homecontrol playlist from master playlist this.TryGetPlaylistItem(this.MasterPlaylist.PlayList.Where(playList => playList.ItemName.ToLower().CompareTo(NameHomeControlPlaylist) == 0).FirstOrDefault(), out list); this.HomeControlPlaylist = list; }
public bool createPlaylist(string _title, string _description) { if (!String.IsNullOrEmpty(_title)) { m_newKey = PlaylistManager.createNewPlaylist(_title.Trim(), _description.Trim(), PlaylistManager.PLTypes.Simple); if (!String.IsNullOrEmpty(m_newKey)) { List <Track> currentList = PlaylistManager.currentTrackList; PlaylistManager.currentTrackList = new List <Track>(); var entries = from entry in m_importFile.Entries where entry.Matched select entry; foreach (ImportEntry importEntry in entries) { PlaylistManager.addTrack(m_newKey, importEntry.Key, importEntry.TrackType); } PlaylistManager.currentTrackList = currentList; m_importFile = null; return(true); } } return(false); }
private void Awake() { _instance = this; _dropdown = FindObjectOfType <Dropdown>(); playButton = GameObject.Find("Play Button"); }
public SpShell(AutoResetEvent aSpotifyEvent, string aUsername, string aPassword, string aBlob, bool aSelftest, ConsoleReader aReader, byte[] aAppKey) { iReader = aReader; iSpotifyEvent = aSpotifyEvent; SpotifySessionConfig config = new SpotifySessionConfig(); config.ApiVersion = 12; config.CacheLocation = aSelftest ? "" : "tmp"; config.SettingsLocation = aSelftest ? "" : "tmp"; config.ApplicationKey = aAppKey; config.UserAgent = "spshell#"; config.Listener = this; try { iSession = SpotifySession.Create(config); } catch (SpotifyException e) { Console.Error.WriteLine("Failed to create session: {0}", e.Message); throw; } iBrowser = new Browser(iSession, this, aReader); iSearcher = new Searcher(iSession, aReader); iTopLister = new TopLister(iSession, aReader); iMessaging = new Messaging(iSession, aReader, iBrowser); iStarManager = new StarManager(iSession, aReader, iBrowser); iPlaylistManager = new PlaylistManager(iSession, aReader, iBrowser); iCommands = new ConsoleCommandDictionary(CmdDone) { { "log", CmdLog, "Enable/Disable logging to console (default off)" }, { "logout", CmdLogout, "Logout and exit app" }, { "exit", CmdLogout, "Logout and exit app" }, { "quit", CmdLogout, "Logout and exit app" }, { "browse", iBrowser.CmdBrowse, "Browse a Spotify URL" }, { "search", iSearcher.CmdSearch, "Search" }, { "whatsnew", iSearcher.CmdWhatsNew, "List new albums" }, { "toplist", iTopLister.CmdTopList, "Browse toplists" }, { "post", iMessaging.CmdPost, "Post track to a user's inbox" }, { "inbox", iMessaging.CmdInbox, "View inbox" }, { "star", iStarManager.CmdStar, "Star a track" }, { "unstar", iStarManager.CmdUnstar, "Unstar a track" }, { "starred", iStarManager.CmdStarred, "List all starred tracks" }, { "playlists", iPlaylistManager.CmdPlaylists, "List playlists" }, { "playlist", iPlaylistManager.CmdPlaylist, "List playlist contents" }, { "set_autolink", iPlaylistManager.CmdSetAutolink, "Set autolinking state" }, { "add_folder", iPlaylistManager.CmdAddFolder, "Add playlist folder" }, { "update_subscriptions", iPlaylistManager.CmdUpdateSubscriptions, "Update playlist subscription info" }, { "add", iPlaylistManager.CmdAddTrack, "Add track to playlist" }, { "offline", iPlaylistManager.CmdPlaylistOffline, "Set offline mode for a playlist" }, }; iCommands.Add("help", iCommands.CmdHelp, "This help"); try { if (aUsername == null) { iSession.Relogin(); var reloginname = iSession.RememberedUser(); Console.Error.WriteLine("Trying to relogin as user {0}", reloginname); } else { iSession.Login(aUsername, aPassword, true, aBlob); } } catch (SpotifyException e) { if (e.Error == SpotifyError.NoCredentials) { Console.Error.WriteLine("No stored credentials"); throw; } } }