public virtual IRebelApplicationContext Start()
{
LogHelper.TraceIfEnabled<RebelWebApplication>("Start called. Product info: {0} build {1}", () => RebelWebApplication.ProductVersionInfo, () => RebelWebApplication.ProductVersion);
using (var bootManager = CreateBootManager())
{
bootManager
.AddAppErrorHandler(OnApplicationError)
.InitializeContainer(() => _containerBuilder)
.AddContainerBuildingHandler(OnContainerBuilding)
.AddContainerBuildingCompleteHandler(OnContainerBuildingComplete)
.SetMvcResolverFactory(_mvcResolverFactory)
.MvcAreaRegistration(_registerAreas)
.MvcCustomRouteRegistration(_registerCustomRoutes)
.MvcDefaultRouteRegistration(_registerDefaultRoutes)
.MvcGlobalFilterRegistration(_registerFilters);
_appContext = Boot(bootManager);
_isStarted = true;
}
return AppContext;
}