Exemplo n.º 1
0
        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++;
            }
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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));
            }
        }
Exemplo n.º 5
0
        private void ProcessTrack(iTunesManager manager)
        {
            iTunesFile iTunesTrack = null;

            try
            {
                iTunesTrack = manager.CurrentTrack();
                if (!IsTrackValid(manager, iTunesTrack)) return;

                if (iTunesTrack.Rating == (int)iTunesFile.RatingConstant.One)
                {
                    if (_options.RemoveRatingOneTracks)
                        DeleteTrackAndFile(manager, iTunesTrack);

                    return;
                }

                var windowsFile = new WindowsFile(iTunesTrack.Location);

                if (_options.UpdateWindowsFiles)
                    UpdateWindowsFile(iTunesTrack, windowsFile);
                else if (_options.UpdateiTunesFiles)
                    UpdateiTunesTrack(iTunesTrack, windowsFile);

                if (_options.RenameFiles)
                    RenameWindowsFiles(iTunesTrack, windowsFile);

                if (_options.DisplayInformation)
                    DisplayFileInformaiton(iTunesTrack, windowsFile);

                if (iTunesTrack.Rating == (int)iTunesFile.RatingConstant.Unrated)
                    UnratedTracks++;

                ProcessedTracks++;
            }
            catch (Exception exception)
            {
                if (_options.LogErrorMessages)
                {
                    var location = "Unknown Locaiton";
                    if (null != iTunesTrack) location = iTunesTrack.Location;

                    System.Console.ForegroundColor = ErrorColour;
                    System.Console.WriteLine(string.Format("{0}\t{1}", exception.Message, location));
                    System.Console.ForegroundColor = _defaultColour;
                }

                ErrorTracks++;
            }
        }
Exemplo n.º 6
0
 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));
 }