public bool TryMatch(string urlPath, string queryString, ref ParameterQuery query) { var urlSegments = urlPath.Trim('/').Split('/'); if (segments.Length != urlSegments.Length) { return(false); } for (int i = 0; i < segments.Length; i++) { if (!segments[i].DoesMatch(urlSegments[i])) { return(false); } } for (int i = 0; i < segments.Length; i++) { segments[i].Match(urlSegments[i], ref query); } var queryCollection = System.Web.HttpUtility.ParseQueryString(queryString); foreach (var q in queries) { q.Match(queryCollection, ref query); } return(true); }
public ActionResult Post([FromBody] ParameterQuery query) { _logger.LogInformation("Get Parameters => Random response"); var result = new ParameterResponse(); var engine = new Random(); foreach (var v in query.Parameter) { result.Parameters[v] = engine.Next(0, 100); } return(Ok(result)); }
private async Task ResolveParametersChange() { var query = new ParameterQuery(); query.Parameter.AddRange(Enumerable.Range(0, 17)); query.Parameter.AddRange(Enumerable.Range(20, 60)); query.Parameter.Add(255); var parameters = await server.Value.GetParameters(query); lock (locker) { data.UpdateParameters(parameters.Parameters); server_data.UpdateParameters(parameters.Parameters); } }
public async Task <ParameterResponse> GetParameters(ParameterQuery parameter) { NotifyFunctionCalled(); await Task.Delay(100); var result = new ParameterResponse(); var engine = new Random(); foreach (var v in parameter.Parameter) { result.Parameters[v] = engine.Next(0, 100); } return(result); }
protected override void Context() { _compartment = A.Fake <Compartment>(); A.CallTo(() => _compartment.OrganName).Returns("MyParentOrgan"); _compartment.Name = "MyComp"; var containerPath = new ObjectPath(new[] { _compartment.OrganName, _compartment.Name }).ToString(); _containerPathRetriever = A.Fake <IEntityPathResolver>(); A.CallTo(() => _containerPathRetriever.PathFor(_compartment)).Returns(containerPath); _originData = new OriginData(); _originData.Population = new SpeciesPopulation(); var distributionDefinition = new ParameterDistributionMetaData(); var rateDefinition = new ParameterRateMetaData(); var valueDefinition = new ParameterValueMetaData(); distributionDefinition.ParameterName = "tutu"; var distributionRepository = A.Fake <IParameterDistributionRepository>(); A.CallTo(() => distributionRepository.AllFor(containerPath)).Returns(new List <ParameterDistributionMetaData> { distributionDefinition }); var rateRepository = A.Fake <IParameterRateRepository>(); A.CallTo(() => rateRepository.AllFor(containerPath)).Returns(new List <ParameterRateMetaData> { rateDefinition }); var valueRepository = A.Fake <IParameterValueRepository>(); A.CallTo(() => valueRepository.AllFor(containerPath)).Returns(new List <ParameterValueMetaData> { valueDefinition }); sut = new ParameterQuery(distributionRepository, valueRepository, rateRepository, _containerPathRetriever); }
/// <summary> /// Instructs firebase to send data lower or equal to the <see cref="value"/>. This must be preceded by an OrderBy query. /// </summary> /// <param name="child"> Current node. </param> /// <param name="value"> Value to start at. </param> /// <returns> The <see cref="FilterQuery"/>. </returns> public static FilterQuery EndAt(this ParameterQuery child, double value) { return(child.EndAt(() => value)); }
/// <summary> /// Instructs firebase to send data equal to the <see cref="value"/>. This must be preceded by an OrderBy query. /// </summary> /// <param name="child"> Current node. </param> /// <param name="value"> Value to start at. </param> /// <returns> The <see cref="FilterQuery"/>. </returns> public static FilterQuery EqualTo(this ParameterQuery child, string value) { return(child.EqualTo(() => value)); }
/// <summary> /// Instructs firebase to send data greater or equal to the <see cref="value"/>. This must be preceded by an OrderBy query. /// </summary> /// <param name="child"> Current node. </param> /// <param name="value"> Value to start at. </param> /// <returns> The <see cref="FilterQuery"/>. </returns> public static FilterQuery StartAt(this ParameterQuery child, string value) { return(child.StartAt(() => value)); }
/// <summary> /// Limits the result to last <see cref="count"/> items. /// </summary> /// <param name="child"> Current node. </param> /// <param name="count"> Number of elements. </param> /// <returns> The <see cref="FilterQuery"/>. </returns> public static FilterQuery LimitToLast(this ParameterQuery child, int count) { return(child.LimitToLast(() => count)); }
public void Match(NameValueCollection queryString, ref ParameterQuery query) { query[name] = queryString[name] ?? defaultValue; }
public void Match(string part, ref ParameterQuery query) { query[name] = part; }
public void Match(string part, ref ParameterQuery query) { }
public Task <ParameterResponse> GetParameters(ParameterQuery parameter) { return(SendJsonQuery <ParameterResponse, ParameterQuery>(parameter, parametersSite)); }