public DashboardRouteAttribute(DashboardRoutes route) { var template = RouteMapper.Dashboard.GetDefinitionForRoute(route); HttpMethods = template.AllowedVerbs; Template = template.Template; Name = template.Name; }
public void AddServices(IServiceCollection services) { var dashboardOptions = new DashboardOptions(); _options?.Invoke(dashboardOptions); services.AddTransient <IStartupFilter, CapStartupFilter>(); services.AddSingleton(dashboardOptions); services.AddSingleton(x => DashboardRoutes.GetDashboardRoutes(x.GetRequiredService <ISerializer>())); services.AddSingleton <IHttpRequester, HttpClientHttpRequester>(); services.AddSingleton <IHttpClientCache, MemoryHttpClientCache>(); services.AddSingleton <IRequestMapper, RequestMapper>(); }
/// <summary> /// Initialize instance of middleware and maps services. /// </summary> /// <param name="provider">Root service provider.</param> /// <param name="loggingService">Shared instance of logging service across the owin pipeline.</param> public DashboardMiddleware(IServiceProvider provider, ILoggingService loggingService) { _basePath = "/" + AutoPocoConfiguration.DashboardPathPrefix; _loggingService = loggingService; var _serviceScope = DashboardServiceProvider.Instance.GetServiceProvider(provider) .GetRequiredService <IServiceScopeFactory>() .CreateScope(); var scopedServiceProvider = _serviceScope.ServiceProvider; _routes = scopedServiceProvider.GetRequiredService <DashboardRoutes>(); _serviceProvider = scopedServiceProvider; }
public void DataDictionaryTableRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, $"/DataDictionary/Table/{id}/tbl1"); var page = new Mock <ObjectDetailsPage>(Mock.Of <IDataDictionaryRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.ListTableDetails(id, "tbl1")).Verifiable(); Services.AddSingleton(page.Object); Context.UriMatch = dispatcher.Item2; dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void DataDictionarySchemaRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, $"/DataDictionary/Schema/{id}"); var page = new Mock <SchemaPage>(Mock.Of <IDataDictionaryRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.ListDbObjects(id)).Verifiable(); Services.AddSingleton(page.Object); Context.UriMatch = dispatcher.Item2; dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void DataDictionaryRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, "/DataDictionary"); var page = new Mock <DataDictionaryPage>(Mock.Of <IConnectorRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.ListConnectors()).Verifiable(); Services.AddSingleton(page.Object); dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void HistoryRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, "/Requests"); var page = new Mock <RequestHistoryPage>(Mock.Of <IRequestHistoryRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.ListRequests()).Verifiable(); Services.AddSingleton(page.Object); dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void WeeklyDashboardRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, "/Weekly"); var page = new Mock <DashboardPage>(Mock.Of <IDashboardRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.WeeklyStats()).Verifiable(); Services.AddSingleton(page.Object); dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void GetConnectorRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, $"/Connectors/Connector/{id}"); var page = new Mock <ConnectorForm>(Mock.Of <IConnectorRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.GetById(id)).Verifiable(); Services.AddSingleton(page.Object); Context.UriMatch = dispatcher.Item2; dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void NewConnectorRoute() { var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, "/Connectors/Connector/New"); var page = new Mock <ConnectorForm>(Mock.Of <IConnectorRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.NewConnector()).Verifiable(); Services.AddSingleton(page.Object); dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
public void SaveConnectorRoute() { SetupContext("post"); var routes = new DashboardRoutes(); var dispatcher = routes.Routes.FindDispatcher(Context, $"/Connectors/Connector/{id}"); var page = new Mock <ConnectorForm>(Mock.Of <IConnectorRepo>(), Mock.Of <ILayoutPage>()); page.Setup(c => c.Save()).Verifiable(); page.Setup(c => c.SetForm(It.IsAny <IDictionary <string, string[]> >())).Verifiable(); Services.AddSingleton(page.Object); Context.UriMatch = dispatcher.Item2; dispatcher.Item1.Dispatch(Context, Logging); page.Verify(); }
protected IActionResult RedirectToRoute(DashboardRoutes route) { return(RedirectToRoute(GetRouteName(route))); }
private string GetRouteName(DashboardRoutes route) { return(RouteMapper.Dashboard.GetDefinitionForRoute(route).Name); }
protected IActionResult RedirectToRoute(DashboardRoutes route, object routeValues) { return(RedirectToRoute(GetRouteName(route), routeValues)); }