|
|
|
|
@ -27,6 +27,7 @@ |
|
|
|
|
namespace OC\Files\ObjectStore; |
|
|
|
|
|
|
|
|
|
use Aws\S3\Exception\S3MultipartUploadException; |
|
|
|
|
use Aws\S3\MultipartCopy; |
|
|
|
|
use Aws\S3\MultipartUploader; |
|
|
|
|
use Aws\S3\S3Client; |
|
|
|
|
use GuzzleHttp\Psr7; |
|
|
|
|
@ -189,9 +190,16 @@ trait S3ObjectTrait { |
|
|
|
|
return $this->getConnection()->doesObjectExist($this->bucket, $urn, $this->getSSECParameters()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public function copyObject($from, $to) { |
|
|
|
|
$this->getConnection()->copy($this->getBucket(), $from, $this->getBucket(), $to, 'private', [ |
|
|
|
|
'params' => $this->getSSECParameters() + $this->getSSECParameters(true) |
|
|
|
|
]); |
|
|
|
|
public function copyObject($from, $to, array $options = []) { |
|
|
|
|
$copy = new MultipartCopy($this->getConnection(), [ |
|
|
|
|
"source_bucket" => $this->getBucket(), |
|
|
|
|
"source_key" => $from |
|
|
|
|
], array_merge([ |
|
|
|
|
"bucket" => $this->getBucket(), |
|
|
|
|
"key" => $to, |
|
|
|
|
"acl" => "private", |
|
|
|
|
"params" => $this->getSSECParameters() + $this->getSSECParameters(true) |
|
|
|
|
], $options)); |
|
|
|
|
$copy->copy(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|