public function determineBucketRegionAsync($bucketName)
{
if ($cached = $this->cache->get($this->getCacheKey($bucketName))) {
return Promise\promise_for($cached);
}
return $this->lookupBucketRegion($bucketName)->then(function ($region) use($bucketName) {
$this->cache->set($this->getCacheKey($bucketName), $region);
return $region;
});
}