static internal AlbumStatus GetAvailableAlbumFromTrackDescriptor(AlbumDescriptorDecorator TD)
 {
     return TD.ImportContext.FindAlbumOrCreate(TD, () => new Album(TD));
 }
        private Album(AlbumDescriptorDecorator add, bool InjectImages=false)
            : this(add.ImportContext)
        {
            _Name = add.CorrectName;
            _Genre = add.MainGenre;

            _TracksNumber = add.TracksNumber;
            _DateAdded = DateTime.Now;
            _Year = add.Year;
            _Maturity = add.Maturity;

            CDIDs = add.IDs;

            if (InjectImages)
                this.ImportImageFromDescriptor(add.Wrapped as IFullAlbumDescriptor);

            if (add.Artists != null)
            {
                ArtistHandler.ModelCollection.AddCollection(add.Artists);
            }

            
        }
 internal TrackDescriptorDecorator(ITrackDescriptor itd, IImportContext ims)
 {
     _TD = itd;
     _Session = ims;
     _Al = new AlbumDescriptorDecorator(_TD.AlbumDescriptor, ims);
 }