sd
end
+ def exist?(filename, subdir = nil)
+ res = true
+ begin
+ res = AWS::S3::S3Object.exist?(dir(subdir) + filename, base)
+ rescue
+ raise PictureIO::Error
+ end
+ res
+ end
+
def put(bindata, filename, subdir = nil)
- AWS::S3::S3Object.store(dir(subdir) + filename, bindata, base)
+ res = true
+ begin
+ AWS::S3::S3Object.store(dir(subdir) + filename, bindata, base)
+ rescue
+ raise PictureIO::Error
+ end
+ res
end
def get(filename, subdir = nil)
bindata = ''
- # if AWS::S3::S3Object.exists?(fn, 'pettanr')
- AWS::S3::S3Object.stream(dir(subdir) + filename, base) do |st|
- bindata += st if st
+ begin
+ AWS::S3::S3Object.stream(dir(subdir) + filename, base) do |st|
+ bindata += st if st
+ end
+ rescue
+ raise PictureIO::Error
end
bindata
end
- def store(dt)
- iw, ih = Image.fix_size_both(80, 80, dt.columns, dt.rows)
- n = dt.to_blob
- v = dt.flip.to_blob
- h = dt.flop.to_blob
- vh = dt.flip.flop.to_blob
- AWS::S3::S3Object.store(filename, n, 'pettanr')
- AWS::S3::S3Object.store('v/' + filename, v, 'pettanr') if v
- AWS::S3::S3Object.store('h/' + filename, h, 'pettanr') if h
- AWS::S3::S3Object.store('vh/' + filename, vh, 'pettanr') if vh
-
- t = Image.resize(dt.to_blob, iw, ih).to_blob
- AWS::S3::S3Object.store('thumbnail/' + filename, t, 'pettanr')
- end
-
- def restore(turn)
- dt = ''
- # if AWS::S3::S3Object.exists?(fn, 'pettanr')
- d = turn ? "#{turn}/" : ''
- AWS::S3::S3Object.stream(d + filename, 'pettanr') do |st|
- dt += st if st
+ def delete(filename, subdir = nil)
+ res = true
+ begin
+ AWS::S3::S3Object.delete(dir(subdir) + filename, base)
+ rescue
+ raise PictureIO::Error
end
- dt
- end
+ res
+ end
+
end
end