Class: Configuration::S3SourceStoreBase::S3Object
- Inherits:
-
Object
- Object
- Configuration::S3SourceStoreBase::S3Object
- Defined in:
- lib/httpimagestore/configuration/s3.rb
Direct Known Subclasses
Instance Method Summary collapse
- #content_type ⇒ Object
-
#initialize(client, bucket, key) ⇒ S3Object
constructor
A new instance of S3Object.
- #private_url ⇒ Object
- #public_url ⇒ Object
- #read(max_bytes = nil) ⇒ Object
- #s3_object ⇒ Object
- #write(data, options = {}) ⇒ Object
Constructor Details
#initialize(client, bucket, key) ⇒ S3Object
Returns a new instance of S3Object.
159 160 161 162 163 |
# File 'lib/httpimagestore/configuration/s3.rb', line 159 def initialize(client, bucket, key) @client = client @bucket = bucket @key = key end |
Instance Method Details
#content_type ⇒ Object
188 189 190 |
# File 'lib/httpimagestore/configuration/s3.rb', line 188 def content_type s3_object.head[:content_type] end |
#private_url ⇒ Object
180 181 182 |
# File 'lib/httpimagestore/configuration/s3.rb', line 180 def private_url s3_object.url_for(:read, expires: 60 * 60 * 24 * 365 * 20) end |
#public_url ⇒ Object
184 185 186 |
# File 'lib/httpimagestore/configuration/s3.rb', line 184 def public_url s3_object.public_url end |
#read(max_bytes = nil) ⇒ Object
170 171 172 173 174 |
# File 'lib/httpimagestore/configuration/s3.rb', line 170 def read(max_bytes = nil) = {} [:range] = 0..max_bytes if max_bytes s3_object.read() end |
#s3_object ⇒ Object
165 166 167 168 |
# File 'lib/httpimagestore/configuration/s3.rb', line 165 def s3_object return @s3_object if @s3_object @s3_object = @client.buckets[@bucket].objects[@key] end |
#write(data, options = {}) ⇒ Object
176 177 178 |
# File 'lib/httpimagestore/configuration/s3.rb', line 176 def write(data, = {}) s3_object.write(data, ) end |