public IServiceProvider ConfigureServices(IServiceCollection services) { var builder = new AutofacContainerBuilder(); var providerConfiguration = Configuration.GetSection("Vedaantees").Get <ProviderConfiguration>(); providerConfiguration.ModulesFolder = string.Empty; var bootstrapper = new ProviderBootstrapper(builder, providerConfiguration); bootstrapper.Load(_env); services.AddMvc().AddRazorOptions(options => { options.ViewLocationFormats.Clear(); options.ViewLocationFormats.Add("/Presentation/{0}.cshtml"); }); services.TryAddSingleton <IHttpContextAccessor, HttpContextAccessor>(); services.AddIdentityServer() .AddDeveloperSigningCredential() .AddInMemoryIdentityResources(IdentityServerConfiguration.GetIdentityResources()) .AddInMemoryApiResources(IdentityServerConfiguration.GetApiResources()) .AddInMemoryClients(IdentityServerConfiguration.GetClients(Configuration.GetSection("Clients").Get <List <string> >())); services.AddTransient <IResourceOwnerPasswordValidator, UserStore>() .AddTransient <IProfileService, UserStore>(); builder.RegisterInstance <IConfiguration>(Configuration); builder.Builder.Populate(services); ApplicationContainer = builder.Build(); bootstrapper.InitializeFramework(ApplicationContainer); return(new AutofacServiceProvider(ApplicationContainer)); }
public void NHibernateBootstrapper_Requires_Configuration() { var boot = new ProviderBootstrapper(null, null, new FakeFrameworkContext()); var status = boot.GetInstallStatus(); Assert.AreEqual(InstallStatusType.RequiresConfiguration, status.StatusType); }
public IServiceProvider ConfigureServices(IServiceCollection services) { var builder = new AutofacContainerBuilder(); var providerConfiguration = Configuration.GetSection("Vedaantees").Get <ProviderConfiguration>(); var bootstrapper = new ProviderBootstrapper(builder, providerConfiguration); bootstrapper.Load(_env); builder.Builder.Populate(services); ApplicationContainer = builder.Build(); bootstrapper.InitializeFramework(ApplicationContainer); return(new AutofacServiceProvider(ApplicationContainer)); }
public void TestSendEmailTask() { var containerBuilder = new AutofacContainerBuilder(); var bootstrapper = new ProviderBootstrapper(containerBuilder, MockBuilder.BuildConfiguration()); var methodResult = bootstrapper.Load(new MockHosting()); var container = containerBuilder.Build(); bootstrapper.InitializeFramework(container); var sendEmailTask = container.Resolve <SendEmailTask>(); var result = sendEmailTask.Execute().Result; Assert.AreEqual(result.MethodResultState, MethodResultStates.Successful); }
public void NHibernateBootstrapper_Completed() { var builder = new NHibernateConfigBuilder("data source=:memory:", "unit-tester", SupportedNHDrivers.SqlLite, "thread_static", false); var config = builder.BuildConfiguration(); var boot = new ProviderBootstrapper(config, new ProviderConfigurationSection() { ConnectionStringKey = "data source=:memory:", Driver = SupportedNHDrivers.SqlLite, SessionContext = "thread_static" }, new FakeFrameworkContext()); var status = boot.TryInstall(); Assert.AreEqual(InstallStatusType.Completed, status.StatusType); }
public void NHibernateBootstrapper_Tried_And_Failed() { var localConfig = new ProviderConfigurationSection() { ConnectionStringKey = "This is an invalid conn string", Driver = SupportedNHDrivers.MsSql2008, SessionContext = "web" }; var builder = new NHibernateConfigBuilder(localConfig.ConnectionStringKey, "test", localConfig.Driver, "thread_static", false); var config = builder.BuildConfiguration(); var boot = new ProviderBootstrapper(config, localConfig, new FakeFrameworkContext()); var status = boot.TryInstall(); Assert.AreEqual(InstallStatusType.TriedAndFailed, status.StatusType); }
public void NHibernateBootstrapper_Configure_Application() { //Arrange //create a new web.config file in /plugins for the providers to write to var http = new FakeHttpContextFactory("~/test"); var configFile = new FileInfo(Path.Combine(Environment.CurrentDirectory, "nhibernate.config")); var configMgr = new DeepConfigManager(http.HttpContext); var configXml = DeepConfigManager.CreateNewConfigFile(configFile, true); var installModel = new DatabaseInstallModel() { DatabaseType = DatabaseServerType.MSSQL, DatabaseName = "test", Server = "testserver", Username = "******", Password = "******" }; var boot = new ProviderBootstrapper(null, null, new FakeFrameworkContext()); //Act boot.ConfigureApplication("rw-test", "test", configXml, new BendyObject(installModel)); //Assert Assert.AreEqual(@"<configuration> <configSections> <sectionGroup name=""rebel""> <sectionGroup name=""persistenceProviderSettings""> <section name=""test"" type=""Rebel.Framework.Persistence.NHibernate.Config.ProviderConfigurationSection, Rebel.Framework.Persistence.NHibernate, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"" /> </sectionGroup> </sectionGroup> </configSections> <connectionStrings> <add name=""test.ConnString"" connectionString=""Data Source=testserver; Initial Catalog=test;User Id=testuser;Password=testpass"" providerName=""System.Data.SqlClient"" /> </connectionStrings> <appSettings /> <rebel> <persistenceProviderSettings> <test connectionStringKey=""test.ConnString"" sessionContext=""web"" driver=""MsSql2008"" /> </persistenceProviderSettings> </rebel> </configuration>", configXml.ToString()); }
public IServiceProvider ConfigureServices(IServiceCollection services) { var builder = new AutofacContainerBuilder(); var providerConfiguration = Configuration.GetSection("Vedaantees").Get <ProviderConfiguration>(); var bootstrapper = new ProviderBootstrapper(builder, providerConfiguration); bootstrapper.Load(_env); services.AddMvc(); services.AddHangfire(x => x.UsePostgreSqlStorage(providerConfiguration.SqlStore.ConnectionString)); builder.RegisterInstance <IConfiguration>(Configuration); builder.Builder.Populate(services); ApplicationContainer = builder.Build(); bootstrapper.InitializeFramework(ApplicationContainer); return(new AutofacServiceProvider(ApplicationContainer)); }
public IServiceProvider ConfigureServices(IServiceCollection services) { var builder = new AutofacContainerBuilder(); var providerConfiguration = Configuration.GetSection("Vedaantees").Get <ProviderConfiguration>(); var bootstrapper = new ProviderBootstrapper(builder, providerConfiguration); bootstrapper.Load(_env); LoadApiClientRegistrations(builder, bootstrapper.GetAssemblies); services.AddMvcCore(config => { //Enable this for security. //var policy = new AuthorizationPolicyBuilder() // .RequireAuthenticatedUser() // .Build(); //config.Filters.Add(new AuthorizeFilter(policy)); }) .AddAuthorization() .AddJsonFormatters(); services.AddAuthentication("Bearer") .AddIdentityServerAuthentication(options => { options.Authority = providerConfiguration.SingleSignOnServer; options.RequireHttpsMetadata = false; options.ApiName = "axelius-api"; options.ApiSecret = "guess-thi$-not-di55icult-resource"; }); services.AddCors(options => { options.AddPolicy("default", policy => { policy.WithOrigins(string.Join(',', Configuration.GetSection("Clients").Get <List <string> >())) .AllowAnyHeader() .AllowAnyMethod(); }); }); builder.RegisterInstance(Configuration); builder.Builder.Populate(services); ApplicationContainer = builder.Build(); bootstrapper.InitializeFramework(ApplicationContainer); return(new AutofacServiceProvider(ApplicationContainer)); }
public void InitializeCompletely() { var containerBuilder = new AutofacContainerBuilder(); var bootstrapper = new ProviderBootstrapper(containerBuilder, MockBuilder.BuildConfiguration()); var methodResult = bootstrapper.Load(new MockHosting()); var container = containerBuilder.Build(); bootstrapper.InitializeFramework(container); Assert.AreEqual(methodResult.MethodResultState, MethodResultStates.Successful); Assert.AreNotEqual(container.Resolve <ILogger>(), null); Assert.AreNotEqual(container.Resolve <IDocumentStore>(), null); Assert.AreNotEqual(container.Resolve <IGraphStore>(), null); Assert.AreNotEqual(container.Resolve <ISqlStore>(), null); Assert.AreNotEqual(container.Resolve <IGenerateKey>(), null); Assert.AreNotEqual(container.Resolve <IHashKeys>(), null); Assert.AreNotEqual(container.Resolve <IEmailProvider>(), null); Assert.AreNotEqual(container.Resolve <ITemplateBuilder>(), null); Assert.AreNotEqual(container.Resolve <IBus>(), null); Assert.AreNotEqual(container.Resolve <ICommandService>(), null); Assert.AreNotEqual(container.Resolve <IEventBus>(), null); Assert.AreNotEqual(container.Resolve <IQueryService>(), null); }
public Startup(IHostingEnvironment env) { Configuration = ProviderBootstrapper.BuildConfiguration(env); _env = env; }