private void ProcessDescribeStream() { var req = new Amazon.Kinesis.Model.DescribeStreamRequest() { StreamName = dsRequest_.Stream, ExclusiveStartShardId = dsRequest_.ExclusiveStartShardId, Limit = dsRequest_.Limit }; CancellationTokenSource cts = new CancellationTokenSource(); CancellationToken ct = cts.Token; StdErrorOut.Instance.StdOut(LogLevel.debug, "Kinesis.Execute before kinesisClient_.DescribeStreamAsync(req, ct)"); var responseTask = kinesisClient_.DescribeStreamAsync(req, ct); responseTask.Wait(timeout_, ct); if (responseTask.IsCompleted) { response_ = new AwsKinesisResponse(responseTask.Result); succeed(); } if (!responseTask.IsCompleted) { cts.Cancel(); fail("Failed to describe Kinesis Stream"); } }
public void DescribeStreamAsync(Amazon.Kinesis.Model.DescribeStreamRequest request, Action <KPLNET.Core.Clients.KinesisClient.AwsKinesisClient, Amazon.Kinesis.Model.DescribeStreamRequest, Amazon.Kinesis.Model.DescribeStreamResponse, object> handler, object context) { executor_.Schedule(() => { if (outcomes_.Count == 0) { return; } var outcome = outcomes_[0]; outcomes_.RemoveAt(0); handler(this, request, outcome, context); callback_(); }, DateTime.Now.AddMilliseconds(20)); }