Class: Aws::S3::Waiters::BucketExists

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ BucketExists

Returns a new instance of BucketExists.

Parameters:

  • options (Hash)

Options Hash (options):

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

87
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
117
118
# File 'lib/aws-sdk-s3/waiters.rb', line 87

def initialize(options)
  @client = options.fetch(:client)
  @waiter = Aws::Waiters::Waiter.new({
    max_attempts: 20,
    delay: 5,
    poller: Aws::Waiters::Poller.new(
      operation_name: :head_bucket,
      acceptors: [
        {
          "expected" => 200,
          "matcher" => "status",
          "state" => "success"
        },
        {
          "expected" => 301,
          "matcher" => "status",
          "state" => "success"
        },
        {
          "expected" => 403,
          "matcher" => "status",
          "state" => "success"
        },
        {
          "expected" => 404,
          "matcher" => "status",
          "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.


127
128
129
# File 'lib/aws-sdk-s3/waiters.rb', line 127

def waiter
  @waiter
end

Instance Method Details

#wait(params = {}) ⇒ Struct

Returns an empty response.

Options Hash (params):

  • :bucket (required, String)

    The bucket name.

    When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see [Using access points] in the *Amazon S3 User Guide*.

    When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using this action using S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see

    Using S3 on Outposts][2

    in the *Amazon S3 User Guide*.

    [1]: docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html [2]: docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html

  • :expected_bucket_owner (String)

    The account ID of the expected bucket owner. If the bucket is owned by a different account, the request will fail with an HTTP `403 (Access Denied)` error.

Returns:

  • (Struct)

    Returns an empty response.


122
123
124
# File 'lib/aws-sdk-s3/waiters.rb', line 122

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