protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines) { InitializeSwaggerMetadata(); base.ApplicationStartup(container, pipelines); pipelines.OnError.AddItemToEndOfPipeline( (ctx, ex) => new OnErrorHooks(_logger) .HandleInternalServerError( ctx, ex, container.Resolve <IResponseNegotiator>(), _env)); pipelines.BeforeRequest += ctx => RequestHooks.RemoveContentTypeHeaderForGet(ctx); pipelines.BeforeRequest += ctx => RequestHooks.ErrorResponseIfContentTypeMissingForPostAndPut(ctx); pipelines.BeforeRequest += ctx => RequestHooks.SetDefaultVersionInUrl(ctx); pipelines.AfterRequest += ctx => { foreach (var corsHeader in HttpResponseHeaders.CorsHeaders) { ctx.Response.Headers.Add(corsHeader.Item1, corsHeader.Item2); } }; ConfigureApplicationRegistrations(container); var dbBootstrapper = container.Resolve <IDbBootstrapper>(); dbBootstrapper.Setup(); }
protected override async void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines) { TinyIoCContainer = container; InitializeSwaggerMetadata(); base.ApplicationStartup(container, pipelines); pipelines.OnError.AddItemToEndOfPipeline( (ctx, ex) => new OnErrorHooks(_logger) .HandleInternalServerError( ctx, ex, container.Resolve <IResponseNegotiator>(), _env)); pipelines.BeforeRequest += ctx => RequestHooks.RemoveContentTypeHeaderForGet(ctx); pipelines.BeforeRequest += ctx => RequestHooks.ErrorResponseIfContentTypeMissingForPostAndPut(ctx); pipelines.BeforeRequest += ctx => RequestHooks.SetDefaultVersionInUrl(ctx); pipelines.AfterRequest += ctx => { foreach (var corsHeader in HttpResponseHeaders.CorsHeaders) { ctx.Response.Headers.Add(corsHeader.Item1, corsHeader.Item2); } }; ConfigureApplicationRegistrations(container); var dbBootstrapper = container.Resolve <IDbBootstrapper>(); dbBootstrapper.Setup(); var appConfig = container.Resolve <IAppConfiguration>(); var groupMigratorService = container.Resolve <GroupMigratorService>(); if (appConfig.MigrateDuplicateGroups) { var migrationResults = await groupMigratorService.MigrateDuplicateGroups(); } if (appConfig.MigrateGroupSource) { await groupMigratorService.MigrateWindowsSourceToDirectory(); } if (appConfig.MigrateGroupIdentityProvider) { await groupMigratorService.MigrateIdentityProvider(); } }