public SirenConverter(IHypermediaRouteResolver routeResolver, IQueryStringBuilder queryStringBuilder, HypermediaConverterConfiguration configuration = null) { this.queryStringBuilder = queryStringBuilder; this.routeResolver = routeResolver; this.configuration = configuration ?? DefaultConfiguration; }
internal HttpWrapClientService(IHttpWrapConfiguration configuration, IQueryStringBuilder queryStringBuilder) { _configuration = configuration; _queryStringBuilder = queryStringBuilder; _httpClient = _configuration.GetHttpClient(); _interceptors = new List <IHttpInterceptor>(); }
internal HttwrapClient(IHttwrapConfiguration configuration, IQueryStringBuilder queryStringBuilder) { _configuration = configuration; _queryStringBuilder = queryStringBuilder; _httpClient = _configuration.GetHttpClient(); _interceptors = _configuration.GetInterceptors(); }
public StackExchangeClient(HttpClient httpClient, IQueryStringBuilder queryStringBuilder, JsonSerializer serializer, ILogger logger) { _httpClient = httpClient; _queryStringBuilder = queryStringBuilder; _serializer = serializer; _logger = logger; }
/// <summary> /// Lists all floating IPs for the account. /// </summary> /// <typeparam name="T">The return type.</typeparam> /// <param name="queryString">Options for filtering.</param> /// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param> public virtual async Task <T> ListFloatingIPsAsync <T>(IQueryStringBuilder queryString, CancellationToken cancellationToken = default(CancellationToken)) where T : IEnumerable <IServiceResource> { return(await BuildListFloatingIPsRequest(queryString, cancellationToken) .SendAsync() .ReceiveJson <T>() .PropogateOwnerToChildren(this).ConfigureAwait(false)); }
/// <summary> /// Builds the <see cref="ListFloatingIPsAsync{T}"/> request. /// </summary> /// <param name="queryString">Options for filtering.</param> /// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param> public virtual async Task <PreparedRequest> BuildListFloatingIPsRequest(IQueryStringBuilder queryString, CancellationToken cancellationToken = default(CancellationToken)) { PreparedRequest request = await Endpoint.PrepareGetResourceRequest("floatingips", cancellationToken).ConfigureAwait(false); request.Url.SetQueryParams(queryString?.Build()); return(request); }
public HypermediaQueryLocationFormatter( IRouteResolverFactory routeResolverFactory, IRouteKeyFactory routeKeyFactory, IQueryStringBuilder queryStringBuilder, IHypermediaUrlConfig defaultHypermediaUrlConfig) : base(routeResolverFactory, routeKeyFactory, defaultHypermediaUrlConfig) { this.queryStringBuilder = queryStringBuilder; }
/// <summary> /// Initializes a new instance of the <see cref="Query{TSource}" /> class. /// </summary> public Query(string name, QueryOptions options) { Guard.Argument(name, nameof(name)).NotNull().NotEmpty(); this.Name = name; this.options = options; if (options?.QueryStringBuilderFactory != null) { this.QueryStringBuilder = options.QueryStringBuilderFactory(); } }
/// <summary> /// Builds a <see cref="ListSecurityGroupRulesAsync{T}"/> request. /// </summary> /// <param name="queryString">Options for filtering.</param> /// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param> public async Task <PreparedRequest> BuildListSecurityGroupRulesRequest(IQueryStringBuilder queryString, CancellationToken cancellationToken = default(CancellationToken)) { Url endpoint = await Endpoint.GetEndpoint(cancellationToken).ConfigureAwait(false); var request = endpoint .AppendPathSegments("security-group-rules") .Authenticate(AuthenticationProvider) .PrepareGet(cancellationToken); request.Url.SetQueryParams(queryString?.Build()); return(request); }
public void Build_AllElements_StringMatch() { // Arrange Query query = new Query(); Query subSelect = new Query(); EnumHelper gqlEnumEnabled = new EnumHelper().Enum("ENABLED"); EnumHelper gqlEnumDisabled = new EnumHelper("DISABLED"); List <object> subSelList = new List <object>(new object[] { "subName", "subMake", "subModel" }); Dictionary <string, object> mySubDict = new Dictionary <string, object> { { "subMake", "aston martin" }, { "subState", "ca" }, { "subLimit", 1 }, { "__debug", gqlEnumDisabled }, { "SuperQuerySpeed", gqlEnumEnabled } }; subSelect .Select(subSelList) .Name("subSelect") .Where(mySubDict); List <object> selList = new List <object>(new object[] { "id", subSelect, "name", "make", "model" }); query .Name("test1") .Alias("test1Alias") .Select("more", "things", "in_a_select") .Select(selList) .Comment("A single line Comment"); IQueryStringBuilder queryString = query.Builder; // Act string buildStr = RemoveWhitespace(queryString.Build(query)); // Assert Assert.AreEqual(RemoveWhitespace("test1Alias:test1{#AsinglelineCommentmorethingsin_a_selectidsubSelect(subMake:\"aston martin\",subState:\"ca\",subLimit:1,__debug:DISABLED,SuperQuerySpeed:ENABLED){subNamesubMakesubModel}namemakemodel}"), buildStr); }
/// <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 void Where_ClearQueryString_EmptyQueryString() { // Arrange IQuery query = new Query(); List <object> objList = new List <object>(new object[] { "aa", "bb", "cc" }); EnumHelper enumHaystack = new EnumHelper("HAYstack"); Dictionary <string, object> fromToMap = new Dictionary <string, object> { { "from", 444.45 }, { "to", 555.45 }, }; Dictionary <string, object> nestedListMap = new Dictionary <string, object> { { "from", 123 }, { "to", 454 }, { "recurse", objList }, { "map", fromToMap }, { "name", enumHaystack } }; query .Name("test1") .Select("name") .Where(nestedListMap); IQueryStringBuilder queryString = query.Builder; queryString.AddParams(query); // Act queryString.QueryString.Clear(); // Assert Assert.IsTrue(string.IsNullOrEmpty(queryString.QueryString.ToString())); }
public SirenHypermediaConverterFactory(IQueryStringBuilder queryStringBuilder, HypermediaExtensionsOptions hypermediaExtensionsOptions) { this.queryStringBuilder = queryStringBuilder; this.hypermediaExtensionsOptions = hypermediaExtensionsOptions; }
public SirenHypermediaConverterFactory(IQueryStringBuilder queryStringBuilder, ISirenConverterConfiguration sirenConverterConfiguration = null) { this.queryStringBuilder = queryStringBuilder; this.sirenConverterConfiguration = sirenConverterConfiguration; }
public CourseLandingControllerTests() { fakeApplicationLogger = A.Fake <IApplicationLogger>(ops => ops.Strict()); fakeBuildQueryStringService = A.Fake <IQueryStringBuilder <CourseSearchFilters> >(ops => ops.Strict()); }
public PlacesService(IQueryStringBuilder queryStringBuilder) { _queryStringBuilder = queryStringBuilder; }
protected override void FinalizeSetUp() { _queryStringBuilder = new QueryStringBuilder(); }
public CourseLandingController(IApplicationLogger loggingService, IQueryStringBuilder <CourseSearchFilters> queryStringBuilder) : base(loggingService) { this.queryStringBuilder = queryStringBuilder; }