You are viewing documentation for version 1 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: AWS::S3::BucketRegionCache

Inherits:
Object
  • Object
show all
Defined in:
lib/aws/s3/bucket_region_cache.rb

Instance Method Summary collapse

Constructor Details

#initializeBucketRegionCache

Returns a new instance of BucketRegionCache



7
8
9
10
# File 'lib/aws/s3/bucket_region_cache.rb', line 7

def initialize
  @regions = {}
  @mutex = Mutex.new
end

Instance Method Details

#[](bucket_name) ⇒ Object



12
13
14
15
16
# File 'lib/aws/s3/bucket_region_cache.rb', line 12

def [](bucket_name)
  @mutex.synchronize do
    @regions[bucket_name]
  end
end

#[]=(bucket_name, region_name) ⇒ Object



18
19
20
21
22
# File 'lib/aws/s3/bucket_region_cache.rb', line 18

def []=(bucket_name, region_name)
  @mutex.synchronize do
    @regions[bucket_name] = region_name
  end
end

#clearObject



36
37
38
39
40
# File 'lib/aws/s3/bucket_region_cache.rb', line 36

def clear
  @mutex.synchronize do
    @regions = {}
  end
end

#delete(bucket_name) ⇒ Object



24
25
26
27
28
# File 'lib/aws/s3/bucket_region_cache.rb', line 24

def delete(bucket_name)
  @mutex.synchronize do
    @regions[bucket_name] = region_name
  end
end

#to_hashObject Also known as: to_h



42
43
44
45
46
# File 'lib/aws/s3/bucket_region_cache.rb', line 42

def to_hash
  @mutex.synchronize do
    @regions.dup
  end
end

#update!(bucket_regions) ⇒ Object



30
31
32
33
34
# File 'lib/aws/s3/bucket_region_cache.rb', line 30

def update!(bucket_regions)
  @mutex.synchronize do
    @regions.update!(bucket_regions)
  end
end