Class: HasBucket::Facade
- Inherits:
-
Object
- Object
- HasBucket::Facade
- Defined in:
- lib/has_bucket/facade.rb
Instance Method Summary collapse
- #[](key) ⇒ Object
- #[]=(key, content) ⇒ Object
- #delete(key) ⇒ Object
- #include?(key) ⇒ Boolean
-
#initialize(service, bucket_name) ⇒ Facade
constructor
A new instance of Facade.
- #object_keys ⇒ Object
- #prefixed_with(prefix) ⇒ Object
- #public_url_for(key) ⇒ Object
- #url_for(key, expiring_at = Time.now + 3600) ⇒ Object
Constructor Details
#initialize(service, bucket_name) ⇒ Facade
Returns a new instance of Facade.
8 9 10 11 |
# File 'lib/has_bucket/facade.rb', line 8 def initialize(service, bucket_name) @service = service @bucket_name = bucket_name end |
Instance Method Details
#[](key) ⇒ Object
33 34 35 |
# File 'lib/has_bucket/facade.rb', line 33 def [](key) object(key).content end |
#[]=(key, content) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/has_bucket/facade.rb', line 25 def []=(key, content) s3_object = object(key) s3_object.acl = "private" s3_object.content_type = content_type_from_key(key) s3_object.content = content s3_object.save end |
#delete(key) ⇒ Object
45 46 47 |
# File 'lib/has_bucket/facade.rb', line 45 def delete(key) object(key).destroy end |
#include?(key) ⇒ Boolean
13 14 15 |
# File 'lib/has_bucket/facade.rb', line 13 def include?(key) object(key).exists? end |
#object_keys ⇒ Object
17 18 19 |
# File 'lib/has_bucket/facade.rb', line 17 def object_keys bucket.objects.map(&:key) end |
#prefixed_with(prefix) ⇒ Object
21 22 23 |
# File 'lib/has_bucket/facade.rb', line 21 def prefixed_with(prefix) bucket.objects(:prefix => prefix).map(&:key) end |
#public_url_for(key) ⇒ Object
41 42 43 |
# File 'lib/has_bucket/facade.rb', line 41 def public_url_for(key) object(key).url end |
#url_for(key, expiring_at = Time.now + 3600) ⇒ Object
37 38 39 |
# File 'lib/has_bucket/facade.rb', line 37 def url_for(key, expiring_at = Time.now + 3600) object(key).temporary_url(expiring_at) end |