public override async Task GetNumbers(NumbersRequest request, IServerStreamWriter <NumberResult> responseStream, ServerCallContext context) { for (var i = 1; i <= request.Max; i++) { await Task.Delay(100); if (!context.CancellationToken.IsCancellationRequested) { await responseStream.WriteAsync(GetNumber(i)); } } }
public async IAsyncEnumerable <NumberModel> GetAll(int max = 1000) { using var numberschannel = GrpcChannel.ForAddress(_channelUrl); var numbersClient = new Number.NumberClient(numberschannel); var request = new NumbersRequest { Max = max }; using var numberStream = numbersClient.GetNumbers(request); await foreach (var number in numberStream.ResponseStream.ReadAllAsync()) { yield return(new NumberModel { Id = number.Id, Binary = number.Binary, Word = number.Word }); } }
public ActionResult <List <int> > Post([FromBody] NumbersRequest numbersRequest) { try { List <int> result = _numbersService.ExtractNumbers(numbersRequest.numbers); if (numbersRequest.isSort) { result = _numbersService.SortNumbers(result); } if (numbersRequest.isFilter) { result = _numbersService.FilterNumbers(result); } return(Ok(result)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
/// <summary> /// Retrieve all the phone numbers associated with your account that match the provided filter /// </summary> /// <param name="request">Filter for account numbers list</param> /// <param name="credentials">(Optional) Overridden credentials for only this request</param> /// <returns></returns> public static NumbersResponse GetNumbers(NumbersRequest request, Credentials credentials = null) { return(ApiRequest.DoGetRequestWithQueryParameters <NumbersResponse>(ApiRequest.GetBaseUriFor(typeof(Account), "/account/numbers"), ApiRequest.AuthType.Query, request, credentials)); }
/// <summary> /// Retrieve all the phone numbers associated with your account that match the provided filter /// </summary> /// <param name="request">Filter for account numbers list</param> /// <param name="credentials">(Optional) Overridden credentials for only this request</param> /// <returns></returns> public static NumbersResponse GetNumbers(NumbersRequest request, Credentials credentials = null) { var json = ApiRequest.DoRequest(ApiRequest.GetBaseUriFor(typeof(Account), "/account/numbers"), request, credentials); return(JsonConvert.DeserializeObject <NumbersResponse>(json)); }