public ImporterViewModel(IMusicSession iSession)
        {
            Continue = false;
            _Session = iSession;
            _IMusicSettings = _Session.Setting;
            Option = _IMusicSettings.MusicImporterExporter.LastImportType;

            UpdateBuilder();

            OK = Register(RelayCommand.Instanciate(
                Commit,
                () => (Builder != null) && (Builder.IsValid)
                ));
        }
        internal SettingsViewModel(IMusicSettings iIMusicSettings, IInfraDependencies ims)
        {
            _IMusicSettings = iIMusicSettings;

            _RarFileManagement = new RarFileManagementModelView(_IMusicSettings.RarFileManagement);
            _CollectionFileManagement = new CollectionFileManagement(_IMusicSettings.CollectionFileSettings);
            _EmbeddedMusicSettingsImpl = new EmbeddedMusicSettings(_IMusicSettings.ImageFormatManagerUserSettings);
            _WBM = new WebsiteMusicSettings(_IMusicSettings.WebUserSettings, ims, this);

            _FileCreatedByConvertion = _IMusicSettings.ConverterUserSettings.FileCreatedByConvertion;
            _SourceFileUsedForConvertion = _IMusicSettings.ConverterUserSettings.SourceFileUsedForConvertion;
            _ConvertedFileExtractedFromRar = _IMusicSettings.ConverterUserSettings.ConvertedFileExtractedFromRar;
            _ImportBrokenItunesTrack = _IMusicSettings.iTunesSetting.ImportBrokenTrack;

            CommitChanges = RelayCommand.Instanciate(DoCommitChanges);
            CloseWindow = RelayCommand.Instanciate(DoCloseWindow);
            EditRarPassword = RelayCommand.Instanciate(DoEditRarPassword);
        }
        private MusicSessionImpl(ISessionBuilder isb,IMainWindowHwndProvider mp)
        {
            _IMW = mp;
            _AllAlbums = new AlbumCollection(this);
            _AllArtists = new ArtistCollection(this);
            _AllTracks = new TrackCollection(this);
            _MusicFolderHelper = isb.Folders;
            _ISF = isb.GetNhibernateConfiguration(DBFactoryBuilder.GetConfiguration).BuildSessionFactory();
 
            _ISFact = isb.SettingFactory;
            _CleanOnOpen = isb.DBCleanOnOpen;
            _SessionCose = isb.OnSessionClose;
            this.Dependencies = isb.InfraTools;

            TraceListener = new ApplicationTraceListener();

            _MusicConverter = new Lazy<IMusicConverter>(isb.MusicConverterBuilder);

            Trace.Listeners.Add(TraceListener);
        }