Class: Aws::S3::BucketVersioning
- Inherits:
-
Object
- Object
- Aws::S3::BucketVersioning
- Extended by:
- Deprecations
- Defined in:
- lib/aws-sdk-s3/bucket_versioning.rb
Defined Under Namespace
Classes: Collection
Read-Only Attributes collapse
- #bucket_name ⇒ String
-
#mfa_delete ⇒ String
Specifies whether MFA delete is enabled in the bucket versioning configuration.
-
#status ⇒ String
The versioning state of the bucket.
Actions collapse
- #enable(options = {}) ⇒ EmptyStructure
- #put(options = {}) ⇒ EmptyStructure
- #suspend(options = {}) ⇒ EmptyStructure
Associations collapse
- #bucket ⇒ Bucket
- #identifiers ⇒ Object deprecated private Deprecated.
Instance Method Summary collapse
- #client ⇒ Client
-
#data ⇒ Types::GetBucketVersioningOutput
Returns the data for this BucketVersioning.
-
#data_loaded? ⇒ Boolean
Returns ‘true` if this resource is loaded.
-
#initialize(*args) ⇒ BucketVersioning
constructor
A new instance of BucketVersioning.
-
#load ⇒ self
(also: #reload)
Loads, or reloads #data for the current BucketVersioning.
Constructor Details
#initialize(bucket_name, options = {}) ⇒ BucketVersioning #initialize(options = {}) ⇒ BucketVersioning
Returns a new instance of BucketVersioning.
19 20 21 22 23 24 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 19 def initialize(*args) = Hash === args.last ? args.pop.dup : {} @bucket_name = extract_bucket_name(args, ) @data = .delete(:data) @client = .delete(:client) || Client.new() end |
Instance Method Details
#bucket ⇒ Bucket
157 158 159 160 161 162 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 157 def bucket Bucket.new( name: @bucket_name, client: @client ) end |
#bucket_name ⇒ String
29 30 31 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 29 def bucket_name @bucket_name end |
#client ⇒ Client
51 52 53 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 51 def client @client end |
#data ⇒ Types::GetBucketVersioningOutput
Returns the data for this Aws::S3::BucketVersioning. Calls Client#get_bucket_versioning if #data_loaded? is ‘false`.
71 72 73 74 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 71 def data load unless @data @data end |
#data_loaded? ⇒ Boolean
79 80 81 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 79 def data_loaded? !!@data end |
#enable(options = {}) ⇒ EmptyStructure
97 98 99 100 101 102 103 104 105 106 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 97 def enable( = {}) = Aws::Util.deep_merge(, bucket: @bucket_name, versioning_configuration: { status: "Enabled" } ) resp = @client.put_bucket_versioning() resp.data end |
#identifiers ⇒ Object
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.
166 167 168 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 166 def identifiers { bucket_name: @bucket_name } end |
#load ⇒ self Also known as: reload
Loads, or reloads #data for the current Aws::S3::BucketVersioning. Returns ‘self` making it possible to chain methods.
bucket_versioning.reload.data
61 62 63 64 65 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 61 def load resp = @client.get_bucket_versioning(bucket: @bucket_name) @data = resp.data self end |
#mfa_delete ⇒ String
Specifies whether MFA delete is enabled in the bucket versioning configuration. This element is only returned if the bucket has been configured with MFA delete. If the bucket has never been so configured, this element is not returned.
44 45 46 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 44 def mfa_delete data.mfa_delete end |
#put(options = {}) ⇒ EmptyStructure
125 126 127 128 129 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 125 def put( = {}) = .merge(bucket: @bucket_name) resp = @client.put_bucket_versioning() resp.data end |
#status ⇒ String
The versioning state of the bucket.
35 36 37 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 35 def status data.status end |
#suspend(options = {}) ⇒ EmptyStructure
143 144 145 146 147 148 149 150 151 152 |
# File 'lib/aws-sdk-s3/bucket_versioning.rb', line 143 def suspend( = {}) = Aws::Util.deep_merge(, bucket: @bucket_name, versioning_configuration: { status: "Suspended" } ) resp = @client.put_bucket_versioning() resp.data end |