public SpringServiceProviderFactory(Action <OptionsBuilder> configFunc) { var memConfig = new OptionsBuilder(); configFunc?.Invoke(memConfig); if (memConfig.ConfigLocations.Any() == false) { memConfig.AddConfigLocation(@".\Oragon.Spring.xml"); } this.config = memConfig; }
public static void RegisterBridges(AbstractApplicationContext applicationContext, OptionsBuilder config, IServiceCollection services) { var serviceProvider = services.BuildServiceProvider(); foreach (var replica in config.Replications) { if (replica.Singleton) { var singletonInstance = serviceProvider.GetService(replica.Type); applicationContext.ObjectFactory.RegisterSingleton(replica.Name, singletonInstance); } else { throw new NotImplementedException("Non singleton replica is not working yet"); } } }
internal static void Adapt(IServiceCollection services, AbstractApplicationContext applicationContext, OptionsBuilder config) { RegisterServices(services, applicationContext); RegisterDefaults(services, applicationContext); //RegisterBridges(applicationContext, config); }