Class: Google::Cloud::Storage::Bucket::Updater

Inherits:
Google::Cloud::Storage::Bucket show all
Defined in:
lib/google/cloud/storage/bucket.rb

Overview

Yielded to a block to accumulate changes for a patch request.

Instance Attribute Summary collapse

Attributes inherited from Google::Cloud::Storage::Bucket

#gapi, #service

Instance Method Summary collapse

Methods inherited from Google::Cloud::Storage::Bucket

#acl, #api_url, #create_file, #created_at, #default_acl, #delete, #file, #files, from_gapi, #id, #kind, #location, #logging_bucket, #logging_bucket=, #logging_prefix, #logging_prefix=, #name, #reload!, #signed_url, #storage_class, #update, #versioning=, #versioning?, #website_404, #website_404=, #website_main, #website_main=

Constructor Details

#initialize(gapi) ⇒ Updater

Create an Updater object.



814
815
816
817
818
# File 'lib/google/cloud/storage/bucket.rb', line 814

def initialize gapi
  @updates = []
  @gapi = gapi
  @cors_builder = nil
end

Instance Attribute Details

#updatesObject (readonly)

Returns the value of attribute updates.



811
812
813
# File 'lib/google/cloud/storage/bucket.rb', line 811

def updates
  @updates
end

Instance Method Details

#check_for_mutable_cors!Object



829
830
831
832
833
834
# File 'lib/google/cloud/storage/bucket.rb', line 829

def check_for_mutable_cors!
  return if @cors_builder.nil?
  return unless @cors_builder.changed?
  @gapi.cors_configurations = @cors_builder.to_gapi
  patch_gapi! :cors_configurations
end

#cors {|@cors_builder| ... } ⇒ Object

Yields:

  • (@cors_builder)


820
821
822
823
824
825
# File 'lib/google/cloud/storage/bucket.rb', line 820

def cors
  # Same as Bucket#cors, but not frozen
  @cors_builder ||= Bucket::Cors.from_gapi @gapi.cors_configurations
  yield @cors_builder if block_given?
  @cors_builder
end