Ejemplo n.º 1
0
        public AlbumDiscProperties(Album album, AlbumDiscPropertiesContract contract)
        {
            ParamIs.NotNull(() => album);

            Album = album;
            CopyContentFrom(contract);
        }
Ejemplo n.º 2
0
        public virtual void CopyContentFrom(AlbumDiscPropertiesContract contract)
        {
            ParamIs.NotNull(() => contract);

            DiscNumber = contract.DiscNumber;
            MediaType  = contract.MediaType;
            Name       = contract.Name;
        }
Ejemplo n.º 3
0
        public AlbumDisc(int discNumber, IEnumerable <SongInAlbumContract> songs, AlbumDiscPropertiesContract discProperties)
        {
            DiscNumber = discNumber;
            Songs      = songs.ToArray();

            IsVideo     = discProperties != null && discProperties.MediaType == DiscMediaType.Video;
            Name        = discProperties != null ? discProperties.Name : null;
            TotalLength = Songs.All(s => s.Song != null && s.Song.LengthSeconds > 0) ? TimeSpan.FromSeconds(Songs.Sum(s => s.Song.LengthSeconds)) : TimeSpan.Zero;
        }