public iTunesFile CurrentTrack() { if ((CurrentTrackIndex < 1) || (CurrentTrackIndex > Tracks.Count)) CurrentTrackIndex = 1; var track = new iTunesFile(); return track.Load(CurrentTrackIndex, Tracks) ? track : null; }
private void UpdateWindowsFile(iTunesFile iTunesTrack, WindowsFile windowsFile) { //windowsFile.OriginalTitle = windowsFile.Title; //windowsFile.OriginalArtist = windowsFile.Artist; //windowsFile.OriginalAlbum = windowsFile.Album; windowsFile.OriginalRating = windowsFile.Rating; var newWindowsRating = RatingConverter.AsWindowsRating(iTunesTrack.Rating); if (windowsFile.OriginalRating == newWindowsRating) return; //windowsFile.Title = iTunesTrack.Title; //windowsFile.Artist = iTunesTrack.Artist; //windowsFile.Album = iTunesTrack.Album; windowsFile.Rating = newWindowsRating; ValidateFileUpdate(newWindowsRating, iTunesTrack, windowsFile); }
private void ValidateTrackUpdate(int expectedRating, iTunesFile iTunesTrack, WindowsFile windowsFile) { var actualRating = iTunesTrack.Rating; if (actualRating == expectedRating) { System.Console.WriteLine( string.Format("Updated:{0}=>{1}\tSource:{2}\t{3}[{4}] : {5}", iTunesTrack.OriginalSimpleRating, iTunesTrack.SimpleRating, windowsFile.SimpleRating, iTunesTrack.Artist, iTunesTrack.Album, iTunesTrack.Title)); UpdatedTracks++; } else { var colour = System.Console.ForegroundColor; System.Console.ForegroundColor = ConsoleColor.Yellow; System.Console.WriteLine( string.Format("Failure:{0}=>{1}\tSource:{2}\t{3}[{4}] : {5}", iTunesTrack.OriginalSimpleRating, iTunesTrack.SimpleRating, windowsFile.SimpleRating, iTunesTrack.Artist, iTunesTrack.Album, iTunesTrack.Title)); System.Console.ForegroundColor = colour; ErrorTracks++; } }
private void RenameWindowsFiles(iTunesFile iTunesTrack, WindowsFile windowsFile) { var originalLocation = System.IO.Path.GetFileName(iTunesTrack.Location); iTunesTrack.Location = windowsFile.UpdateFileName(); var updatedLocation = System.IO.Path.GetFileName(iTunesTrack.Location); if (updatedLocation != originalLocation) { RenamedTracks++; Console.WriteLine(string.Format("Renamed: {0} => {1}", originalLocation, updatedLocation)); } }
private void UpdateiTunesTrack(iTunesFile iTunesTrack, WindowsFile windowsFile) { //iTunesTrack.OriginalTitle = iTunesTrack.Title; //iTunesTrack.OriginalAlbum = iTunesTrack.Album; //iTunesTrack.OriginalArtist = iTunesTrack.Artist; iTunesTrack.OriginalRating = iTunesTrack.Rating; var newiTunesRating = RatingConverter.AsiTunesRating(windowsFile.Rating); if (iTunesTrack.OriginalRating == newiTunesRating) return; //iTunesTrack.Title = windowsFile.Title; //iTunesTrack.Album = windowsFile.Album; //iTunesTrack.Artist = windowsFile.Artist; iTunesTrack.Rating = newiTunesRating; ValidateTrackUpdate(newiTunesRating, iTunesTrack, windowsFile); }
private void MissingLocation(iTunesManager manager, iTunesFile iTunesTrack) { if (!_options.LogInformationMessages) return; System.Console.ForegroundColor = InformationColour; System.Console.WriteLine(string.Format("Removed Track from iTunes (Invalid Location)\t{0}[{1}] : {2}", iTunesTrack.Artist, iTunesTrack.Album, iTunesTrack.Title)); System.Console.ForegroundColor = _defaultColour; iTunesTrack.RemoveTrack(); manager.CurrentTrackIndex--; }
private bool IsTrackValid(iTunesManager manager, iTunesFile iTunesTrack) { if (null == iTunesTrack) { SkippedTracks++; InvalidIndex(manager.CurrentTrackIndex); return false; } if (!iTunesTrack.IsValidKind()) { SkippedTracks++; InvalidTrackKind(iTunesTrack); return false; } if (!iTunesTrack.HasLocation()) { MissingLocation(manager, iTunesTrack); return false; } if (!iTunesTrack.IsValidLocation()) { SkippedTracks++; InvalidLocation(manager, iTunesTrack); return false; } if (!iTunesTrack.IsValidExtention()) { SkippedTracks++; InvalidExtention(iTunesTrack); return false; } return true; }
private void InvalidTrackKind(iTunesFile iTunesTrack) { if (!_options.LogWarningMessages) return; System.Console.ForegroundColor = WarningColour; System.Console.WriteLine(string.Format("Skipping\tInvalid Track Kind:{0}", iTunesTrack.Kind)); System.Console.ForegroundColor = _defaultColour; }
private void DisplayFileInformaiton(iTunesFile iTunesTrack, WindowsFile windowsFile) { System.Console.WriteLine( string.Format("Windows:{0}\tiTunes:{1}\t{2} [{3}] - {4}", windowsFile.SimpleRating, iTunesTrack.SimpleRating, iTunesTrack.Artist, iTunesTrack.Album, iTunesTrack.Title)); }
private void DeleteTrackAndFile(iTunesManager manager, iTunesFile iTunesTrack) { var location = iTunesTrack.Location; var deleted = !System.IO.File.Exists(location); if (!deleted) deleted = DeleteWindowsFile(location); if (!deleted) return; iTunesTrack.RemoveTrack(); System.Console.WriteLine(string.Format("Deleted:\t{0}", location)); manager.CurrentTrackIndex--; DeletedTracks++; }