static internal MusicSessionImpl GetSession(ISessionBuilder isb, IMainWindowHwndProvider imp=null) { return new MusicSessionImpl(isb, imp); }
public static IMusicSession GetSession(IMainWindowHwndProvider imp) { return Implementation.MusicSessionImpl.GetSession(SessionBuilder.FromSettings(), imp); }
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); }