public IWindsorContainer Build() { var container = new WindsorContainerEx(); container.AddSupportForEmptyCollections(); InstallFacilities(container); InstallFeaturePrerequisites(container); var assembliesProvider = container.Resolve <IAssembliesProvider>(); var configValueProvider = container.Resolve <IConfigValueProvider>(); InstallPlugins(); InstallCoreFeatures(container); InstallFeatures(container); ApplyHttpSpecific(container); FinalizeContainer(container); return(container); void InstallPlugins() { var pluginFolder = configValueProvider.GetValue("plugin:folder"); _logger.Debug($"Loading plugins from folder {pluginFolder}."); assembliesProvider.LoadPluginAssemblies(pluginFolder); } }
public static WindsorContainerEx GetWindsorContainer() { var container = new WindsorContainerEx(); container.AddSupportForEmptyCollections(); container.Register( Component .For <ISchoolYearContextProvider>() .ImplementedBy <StubCurrentSchoolYearContextProvider>()); container.Register( Component .For <IETagProvider>() .ImplementedBy <StubEtagProviderSinceWeReallyDontCareWhatTheValueIs>()); container.Register( Classes.FromThisAssembly() .BasedOn(typeof(IStep <,>))); return(container); }