Changeset View
Changeset View
Standalone View
Standalone View
src/future/aws/PhutilAWSS3Client.php
- This file was added.
<?php | |||||
final class PhutilAWSS3Client { | |||||
private $future; | |||||
public function __construct() { | |||||
$this->future = new PhutilAWSS3Future(); | |||||
} | |||||
public function setAWSKeys($access, $private) { | |||||
$this->future->setAWSKeys($access, $private); | |||||
} | |||||
public function setUseIAM($use_iam) { | |||||
$this->future->setUseIAM($use_iam); | |||||
} | |||||
private function getFuture() { | |||||
$future = clone $this->future; | |||||
return $future; | |||||
} | |||||
public function deleteBucket($bucket) { | |||||
return $this->getFuture() | |||||
->setBucket($bucket) | |||||
->setMethod('DELETE') | |||||
->resolvex(); | |||||
} | |||||
public function deleteObject($bucket, $key) { | |||||
return $this->getFuture() | |||||
->setBucket($bucket) | |||||
->setKey($key) | |||||
->setMethod('DELETE') | |||||
->resolvex(); | |||||
} | |||||
public function getObject($bucket, $key) { | |||||
return $this->getFuture() | |||||
->setBucket($bucket) | |||||
->setKey($key) | |||||
->setMethod('GET') | |||||
->resolvex(); | |||||
} | |||||
public function listBucket($bucket) { | |||||
return $this->getFuture() | |||||
->setBucket($bucket) | |||||
->setMethod('GET') | |||||
->resolvex(); | |||||
} | |||||
public function putObject($data, $bucket, $key) { | |||||
$params = array( | |||||
'data' => $data, | |||||
'size' => strlen($data), | |||||
'md5sum' => base64_encode(md5($data, true)), | |||||
); | |||||
return $this->getFuture() | |||||
->setBucket($bucket) | |||||
->setKey($key) | |||||
->setMethod('PUT') | |||||
->resolvex(); | |||||
} | |||||
} |