public void UpdateMetaData(MetaData metaData)
        {
            //TODO: only update bits if the string being passed is not empty
            _tag.AlbumArtists = new[] { metaData.AlbumArtist };
            _tag.Album = metaData.AlbumName;
            _tag.Performers = metaData.ContributingArtists.ToArray();
            _tag.Genres = new[] { metaData.Genre };
            _tag.Title = metaData.Title;
            _tag.Track = (uint)metaData.TrackNumber.ToTrackNum();
            _tag.Disc = (uint)metaData.DiscNumber.ToDiscNum();

            int year = (int)_tag.Year;
            Int32.TryParse(metaData.Year, out year);
            _tag.Year = (uint)year;
        }
예제 #2
0
        private MetaData CreateMetaDataFromWebDetails(WebTrack webTrack)
        {
            var metaData = new MetaData
                   {
                       AlbumArtist = this.WebAlbum.Artist,
                       AlbumName = this.WebAlbum.Title,
                       ContributingArtists = webTrack.ContributingArtists,
                       DiscNumber = webTrack.DiscNumber,
                       Genre = webTrack.Genre,
                       Title = webTrack.Title,
                       TrackNumber = webTrack.TrackNumber,
                       Year = this.WebAlbum.ReleaseYear
                   };

            //use album artist as song artist if there are no contributing artists
            if (metaData.ContributingArtists.Count() == 0)
                metaData.ContributingArtists.Add(metaData.AlbumArtist);

            return metaData;
        }
예제 #3
0
        public static ExpandedAlbumDetailsViewModel GetAlbumDetailsFrom(MetaData metaData, int trackCount)
        {
            if (metaData == null)
                return null;

            return new ExpandedAlbumDetailsViewModel
            {
                Artist = metaData.AlbumArtist,
                Title = metaData.AlbumName,
                SongCount = trackCount.ToString(),
                Year = metaData.Year
            };
        }
예제 #4
0
 public static ExpandedAlbumDetailsViewModel SetAlbumDetails(MetaData metaData, int trackCount)
 {
     return new ExpandedAlbumDetailsViewModel
            {
                Artist = metaData.AlbumArtist,
                Title = metaData.AlbumName,
                SongCount = trackCount.ToString(),
                Year = metaData.Year
            };
 }
        public void Then_it_should_be_able_to_update_all_the_meta_data()
        {
            var container = ZuneWMATagContainerTestsHelpers.CreateEmptyContainer();

            var metaData = new MetaData
                {
                    AlbumArtist = "bleh",
                    AlbumName = "bleh",
                    ContributingArtists = new List<string> {"bleh", "bleh1", "bleh2"},
                    DiscNumber = "1",
                    Genre = "Pop",
                    Title = "YouTwo",
                    TrackNumber = "3",
                    Year = "2009"
                };

            container.AddMetaData(metaData);

            container.WriteToFile(_path);

            IZuneTagContainer newContainer = ZuneTagContainerFactory.GetContainer(_path);

            MetaData newMetaData = newContainer.ReadMetaData();

            Assert.That(newMetaData.AlbumArtist,Is.EqualTo(metaData.AlbumArtist));
            Assert.That(newMetaData.AlbumName, Is.EqualTo(metaData.AlbumName));
            Assert.That(newMetaData.ContributingArtists.First(), Is.EqualTo(metaData.ContributingArtists.First()));
            Assert.That(newMetaData.ContributingArtists.ElementAt(1), Is.EqualTo(metaData.ContributingArtists.ElementAt(1)));
            Assert.That(newMetaData.ContributingArtists.Last(), Is.EqualTo(metaData.ContributingArtists.Last()));
            Assert.That(newMetaData.DiscNumber, Is.EqualTo(metaData.DiscNumber));
            Assert.That(newMetaData.Genre, Is.EqualTo(metaData.Genre));
            Assert.That(newMetaData.Title, Is.EqualTo(metaData.Title));
            Assert.That(newMetaData.TrackNumber, Is.EqualTo(metaData.TrackNumber));
            Assert.That(newMetaData.Year, Is.EqualTo(metaData.Year));
        }