public IDisposable Load() { var facility = new BottlesServicePackageFacility(); PackageRegistry.LoadPackages(x => x.Facility(facility)); PackageRegistry.AssertNoFailures(); _services = facility.Services(); if (!_services.Any()) { throw new ApplicationException("No services were detected. Shutting down."); } var tasks = _services.Select(x => x.ToTask()).ToArray(); _services.Each(x => EventAggregator.Messaging.AddListener(x)); tasks.Each(x => x.Start()); Task.WaitAll(tasks); return this; }
public IDisposable Load() { var facility = new BottlesServicePackageFacility(); PackageRegistry.LoadPackages(x => x.Facility(facility)); PackageRegistry.AssertNoFailures(); _services = facility.Services(); if (!_services.Any()) { throw new ApplicationException("No services were detected. Shutting down."); } var tasks = _services.Select(x => x.ToTask()).ToArray(); _services.Each(x => EventAggregator.Messaging.AddListener(x)); tasks.Each(x => x.Start()); Task.WaitAll(tasks); return(this); }