lib/fog/storage/aws.rb in fog-0.6.0 vs lib/fog/storage/aws.rb in fog-0.7.0

- old
+ new

@@ -56,31 +56,10 @@ :aws_access_key_id => @aws_access_key_id, :aws_secret_access_key => @aws_secret_access_key ) end - def parse_data(data) - metadata = { - :body => nil, - :headers => {} - } - - if data.is_a?(String) - metadata[:body] = data - metadata[:headers]['Content-Length'] = metadata[:body].size - else - filename = ::File.basename(data.path) - unless (mime_types = MIME::Types.of(filename)).empty? - metadata[:headers]['Content-Type'] = mime_types.first.content_type - end - metadata[:body] = data - metadata[:headers]['Content-Length'] = ::File.size(data.path) - end - # metadata[:headers]['Content-MD5'] = Base64.encode64(Digest::MD5.digest(metadata[:body])).strip - metadata - end - def url(params, expires) params[:headers]['Date'] = expires.to_i params[:path] = CGI.escape(params[:path]).gsub('%2F', '/') query = [params[:query]].compact query << "AWSAccessKeyId=#{@aws_access_key_id}" @@ -167,16 +146,10 @@ } end end end - def self.reset_data(keys=data.keys) - for key in [*keys] - data.delete(key) - end - end - def initialize(options={}) unless options.delete(:provider) location = caller.first warning = "[yellow][WARN] Fog::AWS::Storage.new is deprecated, use Fog::Storage.new(:provider => 'AWS') instead[/]" warning << " [light_black](" << location << ")[/] " @@ -186,27 +159,36 @@ require 'mime/types' @aws_access_key_id = options[:aws_access_key_id] @aws_secret_access_key = options[:aws_secret_access_key] options[:region] ||= 'us-east-1' @host = options[:host] || case options[:region] + when 'ap-northeast-1' + 's3-ap-northeast-1.amazonaws.com' + when 'ap-southeast-1' + 's3-ap-southeast-1.amazonaws.com' when 'eu-west-1' 's3-eu-west-1.amazonaws.com' when 'us-east-1' 's3.amazonaws.com' - when 'ap-southeast-1' - 's3-ap-southeast-1.amazonaws.com' when 'us-west-1' 's3-us-west-1.amazonaws.com' else raise ArgumentError, "Unknown region: #{options[:region].inspect}" end - @data = self.class.data[options[:region]][@aws_access_key_id] + @region = options[:region] + reset_data end + def reset_data + self.class.data[@region].delete(@aws_access_key_id) + @data = self.class.data[@region][@aws_access_key_id] + end + def signature(params) "foo" end + end class Real include Utils @@ -248,15 +230,17 @@ @port = endpoint.port @scheme = endpoint.scheme else options[:region] ||= 'us-east-1' @host = options[:host] || case options[:region] + when 'ap-northeast-1' + 's3-ap-northeast-1.amazonaws.com' + when 'ap-southeast-1' + 's3-ap-southeast-1.amazonaws.com' when 'eu-west-1' 's3-eu-west-1.amazonaws.com' when 'us-east-1' 's3.amazonaws.com' - when 'ap-southeast-1' - 's3-ap-southeast-1.amazonaws.com' when 'us-west-1' 's3-us-west-1.amazonaws.com' else raise ArgumentError, "Unknown region: #{options[:region].inspect}" end