Skip to content

Commit 02e4ad2

Browse files
committed
add sns driver + use profile to establish connection
1 parent 3f19930 commit 02e4ad2

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

pkg/enqueue/Resources.php

+8-3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
use Enqueue\Pheanstalk\PheanstalkConnectionFactory;
1515
use Enqueue\RdKafka\RdKafkaConnectionFactory;
1616
use Enqueue\Redis\RedisConnectionFactory;
17+
use Enqueue\Sns\SnsConnectionFactory;
1718
use Enqueue\SnsQs\SnsQsConnectionFactory;
1819
use Enqueue\Sqs\SqsConnectionFactory;
1920
use Enqueue\Stomp\StompConnectionFactory;
@@ -42,7 +43,7 @@ public static function getAvailableConnections(): array
4243

4344
$availableMap = [];
4445
foreach ($map as $connectionClass => $item) {
45-
if (class_exists($connectionClass)) {
46+
if (\class_exists($connectionClass)) {
4647
$availableMap[$connectionClass] = $item;
4748
}
4849
}
@@ -156,6 +157,10 @@ public static function getKnownConnections(): array
156157
'schemes' => ['sqs'],
157158
'supportedSchemeExtensions' => [],
158159
'package' => 'enqueue/sqs', ];
160+
$map[SnsConnectionFactory::class] = [
161+
'schemes' => ['sns'],
162+
'supportedSchemeExtensions' => [],
163+
'package' => 'enqueue/sns', ];
159164
$map[SnsQsConnectionFactory::class] = [
160165
'schemes' => ['snsqs'],
161166
'supportedSchemeExtensions' => [],
@@ -183,9 +188,9 @@ public static function getKnownConnections(): array
183188

184189
public static function addConnection(string $connectionFactoryClass, array $schemes, array $extensions, string $package): void
185190
{
186-
if (class_exists($connectionFactoryClass)) {
191+
if (\class_exists($connectionFactoryClass)) {
187192
if (false == (new \ReflectionClass($connectionFactoryClass))->implementsInterface(ConnectionFactory::class)) {
188-
throw new \InvalidArgumentException(sprintf('The connection factory class "%s" must implement "%s" interface.', $connectionFactoryClass, ConnectionFactory::class));
193+
throw new \InvalidArgumentException(\sprintf('The connection factory class "%s" must implement "%s" interface.', $connectionFactoryClass, ConnectionFactory::class));
189194
}
190195
}
191196

pkg/sns/SnsConnectionFactory.php

+4
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,10 @@ private function establishConnection(): SnsClient
8989
$config['endpoint'] = $this->config['endpoint'];
9090
}
9191

92+
if (isset($this->config['profile'])) {
93+
$config['profile'] = $this->config['profile'];
94+
}
95+
9296
if ($this->config['key'] && $this->config['secret']) {
9397
$config['credentials'] = [
9498
'key' => $this->config['key'],

0 commit comments

Comments
 (0)