%PDF- %PDF-
Direktori : /home/silvzytp/calling_code/vendor/laravel/framework/src/Illuminate/Queue/Connectors/ |
Current File : //home/silvzytp/calling_code/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SqsConnector.php |
<?php namespace Illuminate\Queue\Connectors; use Aws\Sqs\SqsClient; use Illuminate\Queue\SqsQueue; use Illuminate\Support\Arr; class SqsConnector implements ConnectorInterface { /** * Establish a queue connection. * * @param array $config * @return \Illuminate\Contracts\Queue\Queue */ public function connect(array $config) { $config = $this->getDefaultConfiguration($config); if (! empty($config['key']) && ! empty($config['secret'])) { $config['credentials'] = Arr::only($config, ['key', 'secret', 'token']); } return new SqsQueue( new SqsClient( Arr::except($config, ['token']) ), $config['queue'], $config['prefix'] ?? '', $config['suffix'] ?? '', $config['after_commit'] ?? null ); } /** * Get the default configuration for SQS. * * @param array $config * @return array */ protected function getDefaultConfiguration(array $config) { return array_merge([ 'version' => 'latest', 'http' => [ 'timeout' => 60, 'connect_timeout' => 60, ], ], $config); } }