Class: Aws::ElasticLoadBalancingV2::Waiters::LoadBalancerAvailable

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ LoadBalancerAvailable

Returns a new instance of LoadBalancerAvailable.

Parameters:

  • options (Hash)

Options Hash (options):

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

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File 'lib/aws-sdk-elasticloadbalancingv2/waiters.rb', line 88

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_load_balancers,
      acceptors: [
        {
          "state" => "success",
          "matcher" => "pathAll",
          "argument" => "load_balancers[].state.code",
          "expected" => "active"
        },
        {
          "state" => "retry",
          "matcher" => "pathAny",
          "argument" => "load_balancers[].state.code",
          "expected" => "provisioning"
        },
        {
          "state" => "retry",
          "matcher" => "error",
          "expected" => "LoadBalancerNotFound"
        }
      ]
    )
  }.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.


125
126
127
# File 'lib/aws-sdk-elasticloadbalancingv2/waiters.rb', line 125

def waiter
  @waiter
end

Instance Method Details

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

Returns a response object which responds to the following methods:

Options Hash (params):

  • :load_balancer_arns (Array<String>)

    The Amazon Resource Names (ARN) of the load balancers. You can specify up to 20 load balancers in a single call.

  • :names (Array<String>)

    The names of the load balancers.

  • :marker (String)

    The marker for the next set of results. (You received this marker from a previous call.)

  • :page_size (Integer)

    The maximum number of results to return with this call.

Returns:


120
121
122
# File 'lib/aws-sdk-elasticloadbalancingv2/waiters.rb', line 120

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