Class: Aws::EC2::Waiters::CustomerGatewayAvailable

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) ⇒ CustomerGatewayAvailable

Returns a new instance of CustomerGatewayAvailable.

Parameters:

  • options (Hash)

Options Hash (options):

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


285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
# File 'lib/aws-sdk-ec2/waiters.rb', line 285

def initialize(options)
  @client = options.fetch(:client)
  @waiter = Aws::Waiters::Waiter.new({
    max_attempts: 40,
    delay: 15,
    poller: Aws::Waiters::Poller.new(
      operation_name: :describe_customer_gateways,
      acceptors: [
        {
          "expected" => "available",
          "matcher" => "pathAll",
          "state" => "success",
          "argument" => "customer_gateways[].state"
        },
        {
          "expected" => "deleted",
          "matcher" => "pathAny",
          "state" => "failure",
          "argument" => "customer_gateways[].state"
        },
        {
          "expected" => "deleting",
          "matcher" => "pathAny",
          "state" => "failure",
          "argument" => "customer_gateways[].state"
        }
      ]
    )
  }.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.



323
324
325
# File 'lib/aws-sdk-ec2/waiters.rb', line 323

def waiter
  @waiter
end

Instance Method Details

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

Returns a response object which responds to the following methods:

Options Hash (params):

  • :customer_gateway_ids (Array<String>)

    One or more customer gateway IDs.

    Default: Describes all your customer gateways.

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

    One or more filters.

    • ‘bgp-asn` - The customer gateway’s Border Gateway Protocol (BGP) Autonomous System Number (ASN).

    • ‘customer-gateway-id` - The ID of the customer gateway.

    • ‘ip-address` - The IP address of the customer gateway device’s external interface.

    • ‘state` - The state of the customer gateway (`pending` | `available` | `deleting` | `deleted`).

    • ‘type` - The type of customer gateway. Currently, the only supported type is `ipsec.1`.

    • ‘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`.

Returns:



318
319
320
# File 'lib/aws-sdk-ec2/waiters.rb', line 318

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