/// <summary> /// Initiates the asynchronous execution of the DescribeMetricFilters operation. /// <seealso cref="Amazon.CloudWatchLogs.IAmazonCloudWatchLogs"/> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the DescribeMetricFilters operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task <DescribeMetricFiltersResponse> DescribeMetricFiltersAsync(DescribeMetricFiltersRequest request, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new DescribeMetricFiltersRequestMarshaller(); var unmarshaller = DescribeMetricFiltersResponseUnmarshaller.Instance; return(Invoke <IRequest, DescribeMetricFiltersRequest, DescribeMetricFiltersResponse>(request, marshaller, unmarshaller, signer, cancellationToken)); }
internal DescribeMetricFiltersResponse DescribeMetricFilters(DescribeMetricFiltersRequest request) { var marshaller = new DescribeMetricFiltersRequestMarshaller(); var unmarshaller = DescribeMetricFiltersResponseUnmarshaller.Instance; return(Invoke <DescribeMetricFiltersRequest, DescribeMetricFiltersResponse>(request, marshaller, unmarshaller)); }
public async Task DescribeMetricFiltersTest_TwoResponses() { var request = new DescribeMetricFiltersRequest(); var firstResponse = new DescribeMetricFiltersResponse() { NextToken = "foo" }; var secondResponse = new DescribeMetricFiltersResponse() { NextToken = null }; var token = new CancellationToken(); _mockClient.SetupSequence(x => x.DescribeMetricFiltersAsync(It.IsAny <DescribeMetricFiltersRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync(firstResponse) .ReturnsAsync(secondResponse); var numResponses = 0; await foreach (var desination in _mockClient.Object.Paginators.DescribeMetricFilters(request).Responses.WithCancellation(token)) { numResponses += 1; } Assert.Equal(2, numResponses); }
public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems) { AmazonCloudWatchLogsConfig config = new AmazonCloudWatchLogsConfig(); config.RegionEndpoint = region; ConfigureClient(config); AmazonCloudWatchLogsClient client = new AmazonCloudWatchLogsClient(creds, config); DescribeMetricFiltersResponse resp = new DescribeMetricFiltersResponse(); do { DescribeMetricFiltersRequest req = new DescribeMetricFiltersRequest { NextToken = resp.NextToken , Limit = maxItems }; resp = client.DescribeMetricFilters(req); CheckError(resp.HttpStatusCode, "200"); foreach (var obj in resp.MetricFilters) { AddObject(obj); } }while (!string.IsNullOrEmpty(resp.NextToken)); }
internal DescribeMetricFiltersResponse DescribeMetricFilters(DescribeMetricFiltersRequest request) { var task = DescribeMetricFiltersAsync(request); try { return(task.Result); } catch (AggregateException e) { ExceptionDispatchInfo.Capture(e.InnerException).Throw(); return(null); } }
public async Task DescribeMetricFiltersTest__OnlyUsedOnce() { var request = new DescribeMetricFiltersRequest(); var response = new DescribeMetricFiltersResponse(); var token = new CancellationToken(); var paginator = _mockClient.Object.Paginators.DescribeMetricFilters(request); _mockClient.Setup(x => x.DescribeMetricFiltersAsync(It.IsAny <DescribeMetricFiltersRequest>(), It.IsAny <CancellationToken>())).ReturnsAsync(response); // Should work the first time await LoopOverMetricFilters(paginator, token); // Second time should throw an exception await Assert.ThrowsAsync <System.InvalidOperationException>(async() => await LoopOverMetricFilters(paginator, token)); }
public async Task DescribeMetricFiltersTest__CancellationToken() { var request = new DescribeMetricFiltersRequest(); var firstResponse = new DescribeMetricFiltersResponse() { NextToken = "foo" }; var secondResponse = new DescribeMetricFiltersResponse() { NextToken = null }; var paginator = _mockClient.Object.Paginators.DescribeMetricFilters(request); var tokenSource = new CancellationTokenSource(); var token = tokenSource.Token; tokenSource.Cancel(); _mockClient.SetupSequence(x => x.DescribeMetricFiltersAsync(It.IsAny <DescribeMetricFiltersRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync(firstResponse) .ReturnsAsync(secondResponse); await Assert.ThrowsAsync <OperationCanceledException>(async() => await LoopOverMetricFilters(paginator, token)); }