public Music(IGuildMusicQueueCollection queueCollection, IYoutubeDownloader youtube, IMusicLibrary library, Random rng) { _queueCollection = queueCollection; _youtube = youtube; _library = library; _rng = rng; }
public TrackListingPreviewViewModel(IAudioPlaylist audioPlaylist, IMusicLibrary musicLibrary) { _audioPlaylist = audioPlaylist; _musicLibrary = musicLibrary; _tracks = new List <ITrack>(); LoadTrack = new RelayCommand <ITrack>(DoLoadTrack); RegisterMessageHandlers(); }
public LibraryListingViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist) : base() { _musicLibrary = musicLibrary; _musicLibrary.SongAdded += (o, e) => RefreshTrackListing(); _audioPlaylist = audioPlaylist; ClearSearch = new RelayCommand(() => SearchText = string.Empty); LoadTrack = new RelayCommand <ITrack>(DoLoadTrack); RefreshTrackListing(); }
public AudioCdDriveMonitoringService(IMusicLibrary musicLibrary, AudioFileFormats audioFileFormats) { _musicLibrary = musicLibrary; _audioFileFormats = audioFileFormats; _cdDrives = GetAudioDrives(); if (_cdDrives.Any()) { _pollCdDrivesTimer = new Timer(cdDrivePollingTimeInMs); _pollCdDrivesTimer.Elapsed += (o, e) => PollCdDrives(); } }
private void Process(string libraryId, IMusicLibrary library) { this._libraryRepository.UpdateLastSyncDate(libraryId); Trace.WriteLine(string.Format("Getting songs for '{0}' ... ", libraryId), "SongSpider"); foreach (var song in library.GetSongs()) { this._songRespository.UpsertSong(libraryId, song.ExternalId, song.Artist, song.Title, song.Album, song.Track, song.Year); } Trace.WriteLine(string.Format("Pruning '{0}'", libraryId), "SongSpider"); this._songRespository.PruneSongs(libraryId); Trace.WriteLine(string.Format("Finished pruning library '{0}', pruning", libraryId), "SongSpider"); }
public AudioCdMenuViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist, IAudioCdRippingService cdRippingService) : base() { _musicLibrary = musicLibrary; _audioPlaylist = audioPlaylist; _cdRippingService = cdRippingService; _selectAudioCdDriveDialog = new FolderBrowserDialog(); _selectMp3OutputDialog = new FolderBrowserDialog(); _driveRootRegex = new Regex(DriveRootRegex); _selectAudioCdDriveDialog.Description = AudioCdBrowserPrompt; _selectMp3OutputDialog.Description = Mp3OutputBrowserPrompt; PlayAudioCd = new RelayCommand(DoPlayAudioCd); RipCdToFolder = new RelayCommand(DoRipCdToFolder); }
public AudioPlaylistTests() { _musicLibrary = A.Fake <IMusicLibrary>(); _mediaPlayer = A.Fake <IMediaPlayer>(); A.CallTo(() => _mediaPlayer.LoadFile(A <string> .Ignored, A <MediaPlayerMetadata> .Ignored)).Invokes((o) => _mediaPlayer.Playing = true); _audioPlaylist = new AudioPlaylist(_musicLibrary, _mediaPlayer); _track = A.Fake <ITrack>(); A.CallTo(() => _track.Song).Returns(new Song { FileName = TrackFileName }); _audioPlaylist.Tracks.Add(_track); }
public RecentlyPlayedListingViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist) : base() { _musicLibrary = musicLibrary; _audioPlaylist = audioPlaylist; _tracks = new List <ITrack>(); _listSearchHelper = new ListSearchHelper <ITrack> { Items = _tracks, FilterLambda = (t, s) => t.ToString().ToLower().Contains(s.ToLower()) }; ClearSearch = new RelayCommand(() => SearchText = string.Empty); LoadTrack = new RelayCommand <ITrack>(DoLoadTrack); _musicLibrary.RecentlyPlayedListModified += (o, e) => RefreshRecentlyPlayedFromLibrary(); RefreshRecentlyPlayedFromLibrary(); }
public AudioCdViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist, IAudioCdDriveMonitoringService audioCdDriveMonitor) : base() { _audioPlaylist = audioPlaylist; _audioCdDriveMonitor = audioCdDriveMonitor; _audioCdDriveMonitor.AudioCdInsertedOnLoad += (o, e) => Tracks = e.CdTracks; _audioCdDriveMonitor.AudioCdInserted += (o, e) => { Tracks = e.CdTracks; OfferToLoadCd(e.DriveDirectory); }; _audioCdDriveMonitor.AudioCdEjected += (o, e) => Tracks = new List <ITrack>(); Tracks = new List <ITrack>(); LoadTrack = new RelayCommand <ITrack>(DoLoadTrack); _audioCdDriveMonitor.StartMonitoring(); }
/// <summary> /// Initializes a new instance of the <see cref="MusicFileEngine"/> class. /// </summary> /// <param name="player"> /// The player. /// </param> /// <param name="library">The music library</param> /// <exception cref="ArgumentNullException"> /// Thrown if arguments are null. Don't do that. Except for Path. Path can be null. I don't know why. /// </exception> public MusicFileEngine(IMusicPlayer player, IMusicLibrary library) { this.Library = library; if (player == null) { throw new ArgumentNullException("player"); } if (library == null) { throw new ArgumentNullException("library"); } this.player = player; this.player.PropertyChanged += this.PlayerOnPropertyChanged; this.player.TrackEnded += this.PlayerOnTrackEnded; this.currentlyPlaying = false; }
public AlbumListingViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist) : base() { _musicLibrary = musicLibrary; _audioPlaylist = audioPlaylist; _listSearchHelper = new ListSearchHelper <Services.Album> { FilterLambda = Services.Album.ContainsString, SortResults = true, SortLambda = (a) => a.Data.Name.ToLower() }; _musicLibrary.AlbumAdded += (o, e) => LoadAlbumsFromLibrary(); ClearSearch = new RelayCommand(() => SearchText = string.Empty); LoadAlbum = new RelayCommand <Services.Album>(this.DoLoadAlbum); LoadAlbumsFromLibrary(); }
public PlaylistMenuViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist) : base() { _musicLibrary = musicLibrary; _audioPlaylist = audioPlaylist; _selectFileDialog = new OpenFileDialog(); _saveFileDialog = new SaveFileDialog(); _selectFileDialog.Filter = PlaylistFileFilter; _saveFileDialog.Filter = PlaylistFileFilter; // enable saving playlist when tracks are present _audioPlaylist.TrackListModified += (o, e) => SaveToFileEnabled = audioPlaylist.Tracks.Count > 0; Clear = new RelayCommand(_audioPlaylist.ClearPlaylist); LoadFromFile = new RelayCommand(DoLoadFromFile); SaveToFile = new RelayCommand(DoSaveToFile); ImportPlaylistToLibrary = new RelayCommand(DoPlayListImport); }
/// <summary> /// Create a new playlist instance. All boolean /// playback flow control options default to false. /// </summary> public AudioPlaylist(IMusicLibrary musicLibrary, IMediaPlayer mediaPlayer) { _musicLibrary = musicLibrary; _mediaPlayer = mediaPlayer; Tracks = new ObservableCollection <ITrack>(); Tracks.CollectionChanged += (o, e) => CallTrackModifiedHandler(); _previousTracks = new Stack <int>(); _currentTrackIndexMutex = new Mutex(); SetCurrentTrackIndex(-1); _forward = false; _back = false; Shuffle = false; RepeatAll = false; Repeat = false; }
public FileMenuViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist, AudioFileFormats audioFileFormats) : base() { _musicLibrary = musicLibrary; _audioPlaylist = audioPlaylist; _selectFileDialog = new OpenFileDialog(); _selectFolderDialog = new FolderBrowserDialog(); audioFileFormats.FormatsLoaded += (o, e) => _selectFileDialog.Filter = audioFileFormats.FileDialogFilter; _selectFolderDialog.Description = FolderBrowserPrompt; PlayFile = new RelayCommand(DoPlayFile); PlayFolder = new RelayCommand(DoPlayFolder); AddFilesToLibrary = new RelayCommand(DoAddFilesToLibrary); // todo: add import/export library routines Exit = new RelayCommand(() => Application.Current.Shutdown()); }
public ArtistListingViewModel(IMusicLibrary musicLibrary, IAudioPlaylist audioPlaylist) : base() { _musicLibrary = musicLibrary; _audioPlaylist = audioPlaylist; _listSearchHelper = new ListSearchHelper <Artist> { FilterLambda = (a, s) => a.Name.ToLower().Contains(s.ToLower()), SortResults = true, SortLambda = (a) => a.Name.ToLower() }; _musicLibrary.ArtistAdded += (o, e) => RefreshArtistsFromLibrary(); LoadArtist = new RelayCommand <Artist>(DoLoadArtist); ClearSearch = new RelayCommand(() => SearchText = string.Empty); RefreshArtistsFromLibrary(); }
public Track(IDukeboxSettings settings, IMusicLibrary musicLibrary) { _settings = settings; _musicLibrary = musicLibrary; }
public MusicLibraryController(IMusicLibrary musicLibraryService, TelemetryClient telemetryClient) { _musicLibraryService = musicLibraryService; _telemetryClient = telemetryClient; }
public MusicLibrarySearchService(IMusicLibraryDbContext dukeboxData, IMusicLibrary musicLibrary, SemaphoreSlim dbContextMutex) { _dukeboxData = dukeboxData; _musicLibrary = musicLibrary; _dbContextMutex = dbContextMutex; }
public void Subscribe(IMusicLibrary musicLibrary) { musicLibrariesToBeUpdated.Add(musicLibrary); }