Class: AWS::S3::S3Object

Inherits:
Object
  • Object
show all
Defined in:
lib/aws-ext.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.copy_across_buckets(src_bucket, src_key, dest_bucket, dest_key, acl_policy) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
# File 'lib/aws-ext.rb', line 6

def self.copy_across_buckets(src_bucket, src_key, dest_bucket, dest_key, acl_policy)
  headers = {'x-amz-copy-source' => path!(src_bucket, src_key)}
  if acl_policy == :copy
    returning put(path!(dest_bucket, dest_key), headers) do
      acl(dest_key, dest_bucket, acl(src_key, src_bucket))
    end
  else
    headers['x-amz-acl'] = acl_policy
    put(path!(dest_bucket, dest_key), headers)
  end
end

Instance Method Details

#copy_to_bucket(dest_bucket, dest_key = nil, acl_policy = :copy) ⇒ Object



18
19
20
# File 'lib/aws-ext.rb', line 18

def copy_to_bucket(dest_bucket, dest_key = nil, acl_policy = :copy)
  self.class.copy_across_buckets(bucket.name, key, dest_bucket.name, dest_key ? dest_key : key, acl_policy)
end