diff --git a/src/FileStorage/S3.php b/src/FileStorage/S3.php index 13461fd..0d8a2cf 100644 --- a/src/FileStorage/S3.php +++ b/src/FileStorage/S3.php @@ -44,6 +44,15 @@ public function __construct($configName) ], ]; + $endpoint = $config->get('commonResource.s3.' . $configName . '.endpoint'); + if ($endpoint) { + $clientConfig['endpoint'] = $endpoint; + } + + if ($config->get('commonResource.s3.' . $configName . '.usePathStyleEndpoint')) { + $clientConfig['use_path_style_endpoint'] = true; + } + $this->bucketName = $config->get('commonResource.s3.' . $configName . '.bucketName'); if ($region) { diff --git a/src/Queue/KestrelQueue.php b/src/Queue/KestrelQueue.php index e4c2cc8..8d19d5f 100644 --- a/src/Queue/KestrelQueue.php +++ b/src/Queue/KestrelQueue.php @@ -15,8 +15,17 @@ class KestrelQueue implements IQueue public function __construct($configName) { - $storageName = Config::getInstance()->get('commonResource.kestrel.' . $configName . '.storageName'); - $this->storage = StorageFactory::get($storageName); + $config = Config::getInstance(); + $storageName = $config->get('commonResource.kestrel.' . $configName . '.storageName'); + $this->storage = StorageFactory::get($storageName); + $this->reliableReads = $config->get( + 'commonResource.kestrel.' . $configName . '.reliableReads', + true + ); + $this->autoClosePreviousReliableRead = $config->get( + 'commonResource.kestrel.' . $configName . '.autoClosePreviousReliableRead', + false + ); } public function sendMessage($queueConfigName, $messageBody) @@ -41,7 +50,7 @@ public function receiveMessage($queueConfigName, $waitTimeSeconds = 0) $result = $this->storage->get(implode('/', $getParts)); - return empty($result) ? null : new QueueMessage(json_decode($result)); + return empty($result) ? null : new QueueMessage(json_decode($result, true)); } public function deleteMessage($queueConfigName, $deleteId)