public RegisterRouteResolver(IUrlHelper urlHelper, IRouteKeyFactory routeKeyFactory, IRouteRegister routeRegister, HypermediaUrlConfig hypermediaUrlConfig = null) { this.RouteRegister = routeRegister; this.urlHelper = urlHelper; this.hypermediaUrlConfig = hypermediaUrlConfig ?? new HypermediaUrlConfig(); this.routeKeyFactory = routeKeyFactory; }
public RegisterRouteResolver(IUrlHelper urlHelper, IRouteKeyFactory routeKeyFactory, IRouteRegister routeRegister, HypermediaExtensionsOptions hypermediaOptions, IHypermediaUrlConfig hypermediaUrlConfig = null) { this.RouteRegister = routeRegister; this.urlHelper = urlHelper; this.hypermediaUrlConfig = hypermediaUrlConfig ?? new HypermediaUrlConfig(); this.routeKeyFactory = routeKeyFactory; this.returnDefaultRouteForUnknownHto = hypermediaOptions.ReturnDefaultRouteForUnknownHto; this.defaultRouteSegmentForUnknownHto = hypermediaOptions.DefaultRouteSegmentForUnknownHto; }
public StyxHost(Uri location, IHostConfiguration hostConfiguration = null, ILogger logger = null, IBootstrapper bootstrapper = null) { if (location == null) throw new ArgumentNullException("location"); hostConfiguration = hostConfiguration ?? new HostConfiguration(); hostConfiguration.Port = location.Port; hostConfiguration.Scheme = location.Scheme; logger = logger ?? new DebuggerLogger(); bootstrapper = bootstrapper ?? new TinyIoCBootstrapper(hostConfiguration, logger); _hostConfiguration = bootstrapper.HostConfiguration; _logger = bootstrapper.Logger; _engine = bootstrapper.Engine; _routeRegister = bootstrapper.RouteRegister; _listenerSocket = bootstrapper.SocketListener; }
/// <summary> /// Adds the Hypermedia Extensions. /// by default a Siren Formatters is added and /// the entry assembly is crawled for Hypermedia route attributes /// </summary> /// <param name="options">The options object of the MVC component.</param> /// <param name="alternateRouteRegister">If you wish to use another RoutRegister pass it here, also if you wish another assembly to be crawled.</param> /// <param name="alternateQueryStringBuilder">Provide an alternate QueryStringBuilder used for building URL's.</param> /// <param name="hypermediaUrlConfig">Configures the URL used in Hypermedia responses.</param> /// <param name="hypermediaConverterConfiguration">Configures the creation of Hypermedia documents.</param> public static void AddHypermediaExtensions( this MvcOptions options, IRouteRegister alternateRouteRegister = null, IQueryStringBuilder alternateQueryStringBuilder = null, IHypermediaUrlConfig hypermediaUrlConfig = null, IHypermediaConverterConfiguration hypermediaConverterConfiguration = null) { var routeRegister = alternateRouteRegister ?? new AttributedRoutesRegister(); var routeResolverFactory = new RegisterRouteResolverFactory(routeRegister); var routeKeyFactory = new RouteKeyFactory(routeRegister); var queryStringBuilder = alternateQueryStringBuilder ?? new QueryStringBuilder(); var hypermediaQueryLocationFormatter = new HypermediaQueryLocationFormatter(routeResolverFactory, routeKeyFactory, queryStringBuilder, hypermediaUrlConfig); var hypermediaEntityLocationFormatter = new HypermediaEntityLocationFormatter(routeResolverFactory, routeKeyFactory, hypermediaUrlConfig); var sirenHypermediaConverterFactory = new SirenHypermediaConverterFactory(queryStringBuilder, hypermediaConverterConfiguration?.SirenConverterConfiguration); var sirenHypermediaFormatter = new SirenHypermediaFormatter(routeResolverFactory, routeKeyFactory, sirenHypermediaConverterFactory, hypermediaUrlConfig); options.OutputFormatters.Insert(0, hypermediaQueryLocationFormatter); options.OutputFormatters.Insert(0, hypermediaEntityLocationFormatter); options.OutputFormatters.Insert(0, sirenHypermediaFormatter); }
public RouteKeyFactory(IRouteRegister routeRegister) { this.routeRegister = routeRegister; }
public RegisterRouteResolverFactory(IRouteRegister routeRegister, HypermediaExtensionsOptions hypermediaOptions) { this.routeRegister = routeRegister; this.hypermediaOptions = hypermediaOptions; }
public RankedRouteResolver(IRouteRegister routeRegister, IEnumerable<IRankedRoutePredicate> rankedRoutePredicates, ILogger logger) { _routeRegister = routeRegister; _rankedRoutePredicates = rankedRoutePredicates; _logger = logger; }
public RegisterRouteResolverFactory(IRouteRegister routeRegister) { this.routeRegister = routeRegister; }