public function loadByFilename($filename)
{
$fail = false;
try {
$object = $this->client->getObject(['Bucket' => $this->getBucket(), 'Key' => $filename]);
if ($object['Body']) {
$this->setData('id', $filename);
$this->setData('filename', $filename);
$this->setData('content', (string) $object['Body']);
} else {
$fail = true;
}
} catch (S3Exception $e) {
$fail = true;
}
if ($fail) {
$this->unsetData();
}
return $this;
}