Class: Aws::ElasticLoadBalancingV2::Waiters::TargetInService

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

Returns a new instance of TargetInService.

Parameters:

  • options (Hash)

Options Hash (options):

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

265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
# File 'lib/aws-sdk-elasticloadbalancingv2/waiters.rb', line 265

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_target_health,
      acceptors: [
        {
          "argument" => "target_health_descriptions[].target_health.state",
          "expected" => "healthy",
          "matcher" => "pathAll",
          "state" => "success"
        },
        {
          "matcher" => "error",
          "expected" => "InvalidInstance",
          "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.


296
297
298
# File 'lib/aws-sdk-elasticloadbalancingv2/waiters.rb', line 296

def waiter
  @waiter
end

Instance Method Details

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

Returns a response object which responds to the following methods:

Options Hash (params):

  • :target_group_arn (required, String)

    The Amazon Resource Name (ARN) of the target group.

  • :targets (Array<Types::TargetDescription>)

    The targets.

Returns:


291
292
293
# File 'lib/aws-sdk-elasticloadbalancingv2/waiters.rb', line 291

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