module Aws::ClientWaiters

def self.included(subclass)

Other tags:
    Api: - private
def self.included(subclass)
  class << subclass
    def set_waiters(waiters)
      @waiters =
        case waiters
        when Waiters::Provider then waiters
        when Hash then Waiters::Provider.new(waiters)
        when String, Pathname then Waiters::Provider.new(Json.load_file(waiters))
        when nil then Waiters::NullProvider.new
        else raise ArgumentError, 'invalid waiters'
        end
    end
    def waiters
      @waiters
    end
  end
end

def set_waiters(waiters)

def set_waiters(waiters)
  @waiters =
    case waiters
    when Waiters::Provider then waiters
    when Hash then Waiters::Provider.new(waiters)
    when String, Pathname then Waiters::Provider.new(Json.load_file(waiters))
    when nil then Waiters::NullProvider.new
    else raise ArgumentError, 'invalid waiters'
    end
end

def wait_until(waiter_name, params = {}, &block)

Returns:
  • (Boolean) - Returns `true` if the waiter was successful.

Raises:
  • (Errors::NoSuchWaiterError) - Raised when you request to wait
  • (Errors::UnexpectedError) - Raised when an error is encounted
  • (Errors::TooManyAttemptsError) - Raised when the configured
  • (Errors::FailureStateError) - Raised when the waiter terminates

Other tags:
    Yieldparam: waiter - Yields a {Waiters::Waiter Waiter}

Parameters:
  • params (Hash) -- Additional request parameters. See the {#waiter_names}
  • waiter_name (Symbol) -- The name of the waiter. See {#waiter_names}
def wait_until(waiter_name, params = {}, &block)
  waiter = self.class.waiters.waiter(waiter_name)
  yield(waiter) if block_given?
  waiter.wait(client:self, params:params)
end

def waiter_names

Returns:
  • (Array) -
def waiter_names
  self.class.waiters.waiter_names
end

def waiters

def waiters
  @waiters
end