Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        public void NHibernateBootstrapper_Requires_Configuration()
        {
            var boot = new ProviderBootstrapper(null, null, new FakeFrameworkContext());

            var status = boot.GetInstallStatus();

            Assert.AreEqual(InstallStatusType.RequiresConfiguration, status.StatusType);
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
        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());
        }
Ejemplo n.º 8
0
        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));
        }
Ejemplo n.º 9
0
        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);
        }
Ejemplo n.º 11
0
 public Startup(IHostingEnvironment env)
 {
     Configuration = ProviderBootstrapper.BuildConfiguration(env);
     _env          = env;
 }