public void OnBeforeAction(object actionDescriptor, HttpContext httpContext, IRouteData routeData) { var startDateTime = DateTime.UtcNow; var typedActionDescriptor = ConvertActionDescriptor(actionDescriptor); var message = new BeforeActionMessage { ActionId = typedActionDescriptor.Id, ActionDisplayName = typedActionDescriptor.DisplayName, ActionName = typedActionDescriptor.ActionName, ActionControllerName = typedActionDescriptor.ControllerName, ActionStartTime = startDateTime, RouteData = routeData.Values?.ToDictionary(x => x.Key, x => x.Value?.ToString()) }; // NOTE: Template data is only available in the TemplateRoute, so we need to try and // promote that type into something we can use var router = routeData.Routers[routeData.Routers.Count - 2]; if (router.GetType().FullName == "Microsoft.AspNetCore.Routing.Route") { var templateRoute = _proxyAdapter.Process <IRouter>("Microsoft.AspNetCore.Routing.Route", router); message.RouteName = templateRoute.Name; message.RoutePattern = templateRoute.RouteTemplate; message.RouteConfiguration = templateRoute.ParsedTemplate?.Parameters?.ToDictionary(x => x.Name, x => new RouteConfigurationData { Default = x.DefaultValue?.ToString(), Optional = x.IsOptional }); } _broker.BeginLogicalOperation(message, startDateTime); _broker.SendMessage(message); }
public void OnBeforeAction(object actionDescriptor, HttpContext httpContext, IRouteData routeData) { var startDateTime = DateTime.UtcNow; var typedActionDescriptor = ConvertActionDescriptor(actionDescriptor); var message = new BeforeActionMessage { ActionId = typedActionDescriptor.Id, ActionDisplayName = typedActionDescriptor.DisplayName, ActionName = typedActionDescriptor.Name, ActionControllerName = typedActionDescriptor.ControllerName, ActionStartTime = startDateTime, RouteData = routeData.Values?.ToDictionary(x => x.Key, x => x.Value?.ToString()) }; // NOTE: Template data is only available in the TemplateRoute, so we need to try and // promote that type into something we can use var router = routeData.Routers[routeData.Routers.Count - 2]; if (router.GetType().FullName == "Microsoft.AspNet.Routing.Template.TemplateRoute") { var templateRoute = _proxyAdapter.Process<IRouter>("Microsoft.AspNet.Routing.Template.TemplateRoute", router); message.RouteName = templateRoute.Name; message.RoutePattern = templateRoute.RouteTemplate; message.RouteConfiguration = templateRoute.ParsedTemplate?.Parameters?.ToDictionary(x => x.Name, x => new RouteConfigurationData { Default = x.DefaultValue?.ToString(), Optional = x.IsOptional }); } _broker.BeginLogicalOperation(message, startDateTime); _broker.SendMessage(message); }
private string GetNameFromRouteContext(IRouteData routeData) { string name = null; if (routeData.Values.Count > 0) { var routeValues = routeData.Values; object controller; routeValues.TryGetValue("controller", out controller); string controllerString = (controller == null) ? string.Empty : controller.ToString(); if (!string.IsNullOrEmpty(controllerString)) { name = controllerString; object action; routeValues.TryGetValue("action", out action); string actionString = (action == null) ? string.Empty : action.ToString(); if (!string.IsNullOrEmpty(actionString)) { name += "/" + actionString; } if (routeValues.Keys.Count > 2) { // Add parameters var sortedKeys = routeValues.Keys .Where(key => !string.Equals(key, "controller", StringComparison.OrdinalIgnoreCase) && !string.Equals(key, "action", StringComparison.OrdinalIgnoreCase) && !string.Equals(key, "!__route_group", StringComparison.OrdinalIgnoreCase)) .OrderBy(key => key, StringComparer.OrdinalIgnoreCase) .ToArray(); if (sortedKeys.Length > 0) { string arguments = string.Join(@"/", sortedKeys); name += " [" + arguments + "]"; } } } else { object page; routeValues.TryGetValue("page", out page); string pageString = (page == null) ? string.Empty : page.ToString(); if (!string.IsNullOrEmpty(pageString)) { name = pageString; } } } return(name); }
public AreaControllerRunner(IPageContext pageContext, IRouteData routeData, IViewContextProvider viewContextProvider, AreaRouteData areaRouteData) : base(areaRouteData.Controller, areaRouteData.Action) { _pageContext = pageContext; _routeData = routeData; _viewContextProvider = viewContextProvider; Area = areaRouteData.Area; UseChildActionBehavior = areaRouteData.UseChildActionBehavior; }
public Task ExecuteAsync(IOwinContext context, IRouteData routeData) { var requestContext = new RequestContext(context, routeData); IActionInvokerFactory invokerFactory = _serviceProvider.GetService <IActionInvokerFactory>(); var invoker = invokerFactory.CreateInvoker(requestContext); return(invoker.InvokeActionAsync()); }
public Task ExecuteAsync(IOwinContext context, IRouteData routeData) { var requestContext = new RequestContext(context, routeData); IActionInvokerFactory invokerFactory = _serviceProvider.GetService<IActionInvokerFactory>(); var invoker = invokerFactory.CreateInvoker(requestContext); return invoker.InvokeActionAsync(); }
public virtual void OnActionSelected( IHttpContext httpContext, IRouteData routeData, IActionDescriptor actionDescriptor) { ActionSelected = new OnActionSelectedEventData() { ActionDescriptor = actionDescriptor, HttpContext = httpContext, RouteData = routeData, }; }
public void GlobalSetupGetPoint() { _routeDataMock = new Mock <IRouteData>(); SetupData(); _routeData = _routeDataMock.Object; _deliveryController = new DeliveryController( new GetRouteByPointOriginAndDestinationQuery(_routeData), new GetBestTimeByPointOriginAndDestinationQuery(_routeData), new GetBestCostByPointOriginAndDestinationQuery(_routeData)); }
public RequestContext(IOwinContext context, IRouteData routeData) { if (context == null) { throw new ArgumentNullException("context"); } if (routeData == null) { throw new ArgumentNullException("routeData"); } HttpContext = context; RouteData = routeData; }
public void OnBeforeAction(HttpContext httpContext, IRouteData routeData) { var telemetry = httpContext.Features.Get <RequestTelemetry>(); if (telemetry != null && string.IsNullOrEmpty(telemetry.Name)) { string name = this.GetNameFromRouteContext(routeData); if (!string.IsNullOrEmpty(name)) { name = httpContext.Request.Method + " " + name; telemetry.Name = name; } } }
public void GlobalSetupGetUser() { _routeDataMock = new Mock <IRouteData>(); _pointDataMock = new Mock <IPointData>(); _routeBase = routesData(_routeCode); _routeData = _routeDataMock.Object; _pointData = _pointDataMock.Object; _routesController = new RoutesController( new GetRoutesByFromPointCodeQuery(_routeData), new SaveRouteCommand(_routeData), new UpdateRouteCommand(_routeData), new DeleteRouteCommand(_routeData)); }
public void GlobalSetupGetPoint() { _pointDataMock = new Mock <IPointData>(); _routeDataMock = new Mock <IRouteData>(); _pointBase = PointsData(_pointCode); _pointData = _pointDataMock.Object; _routeData = _routeDataMock.Object; _pointsController = new PointsController( new GetPointByCodeQuery(_pointData), new SavePointCommand(_pointData), new UpdatePointCommand(_pointData), new DeletePointCommand(_pointData, _routeData)); }
public IRouteData GetData(string uri, string method, Func<RouteData> factory) { if (string.IsNullOrEmpty(this.Uri) && string.IsNullOrEmpty(this.Method)) { this.Uri = uri; this.Method = method; } if (this.Method != method || this.Uri != uri) { throw new InvalidOperationException("Attempted to use a routedata provider that had already been evaluated for a different url or method"); } if (this.data == null) { this.data = this.routeWalker.WalkRoute(this.Uri, this.Method, factory()); } return this.data; }
public static IRouter CreateData(IRouteData <IRenderingController> routeData) { return(new TempRouter(routeData)); }
public OwinRouteDataProvider(IRouteData data) { this.data = data; }
public DeleteRouteCommand(IRouteData routeData) { _routeData = routeData; }
public ViewContext(IOwinContext context, IRouteData routeData, ViewData viewData) : base(context, routeData) { ViewData = viewData; }
public IRouteData GetData(IDictionary <string, object> environment, Func <RouteData> factory) { return(this.data ?? (this.data = this.routeWalker.WalkRoute(environment, factory()))); }
public WebApiRouteDataAdapter(IRouteData routeData) { this.routeData = routeData; }
public TestAreaControllerRunner(IPageContext pageContext, IRouteData routeData, IViewContextProvider viewContextProvider, AreaRouteData areaRouteData) : base(pageContext, routeData, viewContextProvider, areaRouteData) { }
public TempRouter(IRouteData <IRenderingController> routeData) { this.routeData = routeData; this.otherKlazzez = new IClass <INonRenderingController> [0]; }
public IRouteData GetData(IDictionary<string, object> environment, Func<RouteData> factory) { return this.data ?? (this.data = this.routeWalker.WalkRoute(environment, factory())); }
public GetRouteByPointOriginAndDestinationQuery(IRouteData routeData) { _routeData = routeData; }
public SaveRouteCommand(IRouteData routeData) { _routeData = routeData; }
public DeletePointCommand(IPointData pointData, IRouteData routeData) { _pointData = pointData; _routeData = routeData; }
public UpdateRouteCommand(IRouteData routeData) { _routeData = routeData; }
public RouteManager() { this.routeData = dataFactory.CreateRouteData(); this.backupData = dataFactory.CreateBackupData(); }
public GetRoutesByFromPointCodeQuery(IRouteData routeData) { _routeData = routeData; }