| Class | RightAws::S3Generator::Key |
| In: |
lib/s3/right_s3.rb
|
| Parent: | Object |
| bucket | [R] | |
| name | [R] |
# File lib/s3/right_s3.rb, line 1053
1053: def initialize(bucket, name, meta_headers={})
1054: @bucket = bucket
1055: @name = name.to_s
1056: @meta_headers = meta_headers
1057: raise 'Key name can not be empty.' if @name.blank?
1058: end
Generate link to delete key.
bucket.delete(2.hour) #=> https://s3.amazonaws.com:443/my_awesome_bucket/logs%2Ftoday%2F1.log?Signature=4...D&Expires=1180820032&AWSAccessKeyId=1...2
# File lib/s3/right_s3.rb, line 1080
1080: def delete(expires=nil, headers={})
1081: @bucket.s3.interface.delete_link(@bucket.to_s, @name, expires, headers)
1082: end
Return a full S# name (bucket/key).
key.full_name #=> 'my_awesome_bucket/cool_key'
# File lib/s3/right_s3.rb, line 1040
1040: def full_name(separator='/')
1041: "#{@bucket.to_s}#{separator}#{@name}"
1042: end
Generate link to GET key data.
bucket.get('logs/today/1.log', 1.hour) #=> https://s3.amazonaws.com:443/my_awesome_bucket/logs%2Ftoday%2F1.log?Signature=h...M%3D&Expires=1180820032&AWSAccessKeyId=1...2
# File lib/s3/right_s3.rb, line 1072
1072: def get(expires=nil, headers={})
1073: @bucket.s3.interface.get_link(@bucket.to_s, @name, expires, headers)
1074: end
Generate link to head key.
bucket.head(2.hour) #=> https://s3.amazonaws.com:443/my_awesome_bucket/logs%2Ftoday%2F1.log?Signature=4...D&Expires=1180820032&AWSAccessKeyId=1...2
# File lib/s3/right_s3.rb, line 1088
1088: def head(expires=nil, headers={})
1089: @bucket.s3.interface.head_link(@bucket.to_s, @name, expires, headers)
1090: end
Return a public link to key.
key.public_link #=> 'https://s3.amazonaws.com:443/my_awesome_bucket/cool_key'
# File lib/s3/right_s3.rb, line 1048
1048: def public_link
1049: params = @bucket.s3.interface.params
1050: "#{params[:protocol]}://#{params[:server]}:#{params[:port]}/#{full_name('/')}"
1051: end
Generate link to PUT key data.
puts bucket.put('logs/today/1.log', '123', 2.hour) #=> https://s3.amazonaws.com:443/my_awesome_bucket/logs%2Ftoday%2F1.log?Signature=B...D&Expires=1180820032&AWSAccessKeyId=1...2
# File lib/s3/right_s3.rb, line 1064
1064: def put(expires=nil, headers={})
1065: @bucket.put(@name.to_s, @meta_headers, expires, headers)
1066: end