Class: Aws::IAM::Waiters::UserExists

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ UserExists

Returns a new instance of UserExists.

Parameters:

  • options (Hash)

Options Hash (options):

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


63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# File 'lib/aws-sdk-iam/waiters.rb', line 63

def initialize(options)
  @client = options.fetch(:client)
  @waiter = Aws::Waiters::Waiter.new({
    max_attempts: 20,
    delay: 1,
    poller: Aws::Waiters::Poller.new(
      operation_name: :get_user,
      acceptors: [
        {
          "state" => "success",
          "matcher" => "status",
          "expected" => 200
        },
        {
          "state" => "retry",
          "matcher" => "error",
          "expected" => "NoSuchEntity"
        }
      ]
    )
  }.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.



93
94
95
# File 'lib/aws-sdk-iam/waiters.rb', line 93

def waiter
  @waiter
end

Instance Method Details

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

Returns a response object which responds to the following methods:

Options Hash (params):

  • :user_name (String)

    The name of the user to get information about.

    This parameter is optional. If it is not included, it defaults to the user making the request. This parameter allows (per its [regex pattern]) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

    [1]: wikipedia.org/wiki/regex

Returns:



88
89
90
# File 'lib/aws-sdk-iam/waiters.rb', line 88

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