Class RightAws::S3Generator::Bucket
In: lib/s3/right_s3.rb
Parent: Object
RuntimeError AwsError AwsNoChange RightAWSParser RightErrorResponseParser RightHttp2xxParser AcfInterface SqsInterface SqsGen2Interface S3Interface Ec2 SdbInterface RightAwsBase ActiveSdbConnect ActiveSdb SqsGen2 S3 S3Generator Sqs RightDummyParser AWSErrorHandler AwsBenchmarkingBlock AwsUtils RightSaxParserCallback lib/sqs/right_sqs_interface.rb lib/sqs/right_sqs_gen2.rb lib/s3/right_s3.rb lib/acf/right_acf_interface.rb lib/sqs/right_sqs_gen2_interface.rb lib/sqs/right_sqs.rb lib/sdb/right_sdb_interface.rb lib/sdb/active_sdb.rb lib/ec2/right_ec2.rb lib/s3/right_s3_interface.rb lib/awsbase/right_awsbase.rb RightAwsBaseInterface VERSION RightAws dot/m_13_0.png

Methods

create   create_link   delete   full_name   get   key   keys   new   public_link   put   to_s  

Attributes

name  [R] 
s3  [R] 

Public Class methods

Create new S3LinkBucket instance and generate creation link for it.

[Source]

     # File lib/s3/right_s3.rb, line 969
969:       def self.create(s3, name, expires=nil, headers={})
970:         new(s3, name.to_s)
971:       end

Create new S3LinkBucket instance.

[Source]

     # File lib/s3/right_s3.rb, line 974
974:       def initialize(s3, name)
975:         @s3, @name = s3, name.to_s
976:       end

Public Instance methods

Return a link to create this bucket.

[Source]

     # File lib/s3/right_s3.rb, line 980
980:       def create_link(expires=nil, headers={})
981:         @s3.interface.create_bucket_link(@name, expires, headers)
982:       end

Generate link to delete bucket.

 bucket.delete(2.hour)

[Source]

      # File lib/s3/right_s3.rb, line 1023
1023:       def delete(expires=nil,  headers={})
1024:         @s3.interface.delete_bucket_link(@name, expires,  headers)
1025:       end
full_name()

Alias for to_s

Generate link to GET key data.

 bucket.get('logs/today/1.log', 1.hour)

[Source]

      # File lib/s3/right_s3.rb, line 1015
1015:       def get(key, expires=nil, headers={})
1016:         @s3.interface.get_link(@name, key.to_s, expires, headers)
1017:       end

Return a S3Generator::Key instance.

 bucket.key('my_cool_key').get    #=> https://s3.amazonaws.com:443/my_awesome_bucket/my_cool_key?Signature=B...D&Expires=1180820032&AWSAccessKeyId=1...2
 bucket.key('my_cool_key').delete #=> https://s3.amazonaws.com:443/my_awesome_bucket/my_cool_key?Signature=B...D&Expires=1180820098&AWSAccessKeyId=1...2

[Source]

      # File lib/s3/right_s3.rb, line 998
 998:       def key(name)
 999:         Key.new(self, name)
1000:       end

Generate link to list keys.

 bucket.keys
 bucket.keys('prefix'=>'logs')

[Source]

     # File lib/s3/right_s3.rb, line 989
989:       def keys(options=nil, expires=nil, headers={})
990:         @s3.interface.list_bucket_link(@name, options, expires, headers)
991:       end

Return a public link to bucket.

 bucket.public_link #=> 'https://s3.amazonaws.com:443/my_awesome_bucket'

[Source]

     # File lib/s3/right_s3.rb, line 963
963:       def public_link
964:         params = @s3.interface.params
965:         "#{params[:protocol]}://#{params[:server]}:#{params[:port]}/#{full_name}"
966:       end

Generates link to PUT key data.

 puts bucket.put('logs/today/1.log', 2.hour)

[Source]

      # File lib/s3/right_s3.rb, line 1006
1006:       def put(key, meta_headers={}, expires=nil, headers={})
1007:         meta = RightAws::S3::Key.add_meta_prefix(meta_headers)
1008:         @s3.interface.put_link(@name, key.to_s, nil, expires, meta.merge(headers))
1009:       end

[Source]

     # File lib/s3/right_s3.rb, line 954
954:       def to_s
955:         @name
956:       end

[Validate]