Amazon.ElasticBeanstalk.AmazonElasticBeanstalkClient.DescribeEnvironmentsAsync C# (CSharp) Method

DescribeEnvironmentsAsync() public method

Initiates the asynchronous execution of the DescribeEnvironments operation.
public DescribeEnvironmentsAsync ( DescribeEnvironmentsRequest request, System cancellationToken = default(CancellationToken) ) : Task
request Amazon.ElasticBeanstalk.Model.DescribeEnvironmentsRequest Container for the necessary parameters to execute the DescribeEnvironments operation.
cancellationToken System /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. ///
return Task
        public Task<DescribeEnvironmentsResponse> DescribeEnvironmentsAsync(DescribeEnvironmentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
        {
            var marshaller = new DescribeEnvironmentsRequestMarshaller();
            var unmarshaller = DescribeEnvironmentsResponseUnmarshaller.Instance;

            return InvokeAsync<DescribeEnvironmentsRequest,DescribeEnvironmentsResponse>(request, marshaller, 
                unmarshaller, cancellationToken);
        }

Same methods

AmazonElasticBeanstalkClient::DescribeEnvironmentsAsync ( System cancellationToken = default(CancellationToken) ) : Task

Usage Example

        public async Task EnsureTerminationsCompleteAsync()
        {
            using (var ebClient = new AmazonElasticBeanstalkClient(creds, configurationProvider.RegionEndpoint))
            {
                var describeEnvironmentsResponse =
                    await ebClient.DescribeEnvironmentsAsync(new DescribeEnvironmentsRequest
                    {
                        ApplicationName = configurationProvider.LongApplicationName
                    });
                var isTerminating = describeEnvironmentsResponse.Environments.Any(env => env.Status == EnvironmentStatus.Terminating);
                if (!isTerminating)
                {
                    return;
                }

                do
                {
                    loggerProvider.GetLogger().Debug("Environments are termintating. Waiting...");
                    await Task.Delay(TIME_BETWEEN_STATUS_CHECKS_IN_MILLISECONDS);
                    describeEnvironmentsResponse =
                        await ebClient.DescribeEnvironmentsAsync(new DescribeEnvironmentsRequest
                        {
                            ApplicationName = configurationProvider.LongApplicationName
                        });
                    isTerminating = describeEnvironmentsResponse.Environments.Any(env => env.Status == EnvironmentStatus.Terminating);
                } while (isTerminating);
            }
        }
All Usage Examples Of Amazon.ElasticBeanstalk.AmazonElasticBeanstalkClient::DescribeEnvironmentsAsync
AmazonElasticBeanstalkClient