+ruby '2.1.6'
source 'https://rubygems.org'
gem 'specific_install'
gem 'rails-timeago'
gem 'kaminari'
gem 'sanitize'
-gem 'aws-s3'
+#gem 'aws-s3'
#gem 'aws-s3', :git => 'https://github.com/bartoszkopinski/aws-s3'
-#gem 'aws-sdk', '~> 2.0'
+gem 'aws-sdk', '~> 2.0'
gem 'awesome_nested_set', '~> 3.0'
gem 'validates_existence'
gem "validate_url"
:list => list.map{|i| i.attributes}
# :list => @finder.to_json
}
- p res
render json: res.to_json
}
end
-#Aws.config.update(
-# region: Rails.application.secrets.aws_region,
-# credentials: Aws::Credentials.new(
-# Rails.application.secrets.aws_access_key_id,
-# Rails.application.secrets.aws_secret_access_key
-# )
-#)
-require 'aws/s3'
-AWS::S3::Base.establish_connection!(
- :access_key_id => Rails.application.secrets.aws_access_key_id,
- :secret_access_key => Rails.application.secrets.aws_secret_access_key,
+Aws.config.update(
+ region: Rails.application.secrets.aws_region,
+ credentials: Aws::Credentials.new(
+ Rails.application.secrets.aws_access_key_id,
+ Rails.application.secrets.aws_secret_access_key
+ )
)
+#require 'aws/s3'
+#AWS::S3::Base.establish_connection!(
+# :access_key_id => Rails.application.secrets.aws_access_key_id,
+# :secret_access_key => Rails.application.secrets.aws_secret_access_key,
+#)
#AWS::S3::DEFAULT_HOST = "us-east-1.amazonaws.com"
# :s3_endpoint => "us-east-1.amazonaws.com"
require 'picture_io'
class PictureIO
class S3Picture
+ @@client = Aws::S3::Client.new
+
def initialize base_dir = 'pettanr'
@base = base_dir
end
def exist?(filename, subdir = nil)
res = true
begin
- res = AWS::S3::S3Object.exist?(dir(subdir) + filename, base)
+ res = @@client.get_object(bucket: self.base, key: dir(subdir) + filename).exist?
rescue
raise PictureIO::Error
end
def put(bindata, filename, subdir = nil)
res = true
begin
- AWS::S3::S3Object.store(dir(subdir) + filename, bindata, base)
+ @@client.put_object(bucket: self.base, key: dir(subdir) + filename, body: bindata)
rescue
raise PictureIO::Error
end
def get(filename, subdir = nil)
bindata = ''
begin
- AWS::S3::S3Object.stream(dir(subdir) + filename, base) do |st|
+ @@client.get_object(bucket: self.base, key: dir(subdir) + filename) do |st|
bindata += st if st
end
rescue
def delete(filename, subdir = nil)
res = true
begin
- AWS::S3::S3Object.delete(dir(subdir) + filename, base)
+ @@client.delete_object(bucket: self.base, key: dir(subdir) + filename)
rescue
raise PictureIO::Error
end