public static IServiceCollection AddCronus(this IServiceCollection services, CronusServicesProvider cronusServicesProvider) { services.AddTenantSupport(); services.AddCronusHostOptions(); services.AddDefaultSubscribers(); var discoveryFinder = new DiscoveryScanner(cronusServicesProvider); discoveryFinder.Discover(); return(services); }
/// <summary> /// // Adds Cronus core services /// </summary> public static IServiceCollection AddCronus(this IServiceCollection services, CronusServicesProvider cronusServicesProvider) { services.AddTenantSupport(); services.AddCronusHostOptions(); services.AddDefaultSubscribers(); var discoveryFinder = new DiscoveryScanner(); var discoveryContext = new DiscoveryContext(AssemblyLoader.Assemblies.Values, cronusServicesProvider.Configuration); var discoveryResults = discoveryFinder.Scan(discoveryContext); foreach (var result in discoveryResults) { cronusServicesProvider.HandleDiscoveredModel(result); } return(services); }