Class: Aws::EC2::Waiters::InternetGatewayExists

Inherits:
Object
  • Object
show all
Defined in:
lib/aws-sdk-ec2/waiters.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ InternetGatewayExists

Returns a new instance of InternetGatewayExists.

Parameters:

  • options (Hash)

Options Hash (options):

  • :client (required, Client)
  • :max_attempts (Integer) — default: 6
  • :delay (Integer) — default: 5
  • :before_attempt (Proc)
  • :before_wait (Proc)


741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
# File 'lib/aws-sdk-ec2/waiters.rb', line 741

def initialize(options)
  @client = options.fetch(:client)
  @waiter = Aws::Waiters::Waiter.new({
    max_attempts: 6,
    delay: 5,
    poller: Aws::Waiters::Poller.new(
      operation_name: :describe_internet_gateways,
      acceptors: [
        {
          "expected" => true,
          "matcher" => "path",
          "state" => "success",
          "argument" => "length(internet_gateways[].internet_gateway_id) > `0`"
        },
        {
          "expected" => "InvalidInternetGateway.NotFound",
          "matcher" => "error",
          "state" => "retry"
        }
      ]
    )
  }.merge(options))
end

Instance Attribute Details

#waiterObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



772
773
774
# File 'lib/aws-sdk-ec2/waiters.rb', line 772

def waiter
  @waiter
end

Instance Method Details

#wait(params = {}) ⇒ Types::DescribeInternetGatewaysResult

Returns a response object which responds to the following methods:

Options Hash (params):

  • :filters (Array<Types::Filter>)

    The filters.

    • ‘attachment.state` - The current state of the attachment between the gateway and the VPC (`available`). Present only if a VPC is attached.

    • ‘attachment.vpc-id` - The ID of an attached VPC.

    • ‘internet-gateway-id` - The ID of the Internet gateway.

    • ‘owner-id` - The ID of the Amazon Web Services account that owns the internet gateway.

    • ‘tag`:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key `Owner` and the value `TeamA`, specify `tag:Owner` for the filter name and `TeamA` for the filter value.

    • ‘tag-key` - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • :dry_run (Boolean)

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is ‘DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.

  • :internet_gateway_ids (Array<String>)

    The IDs of the internet gateways.

    Default: Describes all your internet gateways.

  • :next_token (String)

    The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

  • :max_results (Integer)

    The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see [Pagination].

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination

Returns:



767
768
769
# File 'lib/aws-sdk-ec2/waiters.rb', line 767

def wait(params = {})
  @waiter.wait(client: @client, params: params)
end