![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/framework-amqp/Connection/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Framework\Amqp\Connection; use Magento\Framework\App\ObjectManager; use PhpAmqpLib\Connection\AbstractConnection; use PhpAmqpLib\Connection\AMQPSSLConnection; use PhpAmqpLib\Connection\AMQPStreamConnection; /** * Create connection based on options. */ class Factory { /** * Create connection according to given options. * * @param FactoryOptions $options * @return AbstractConnection */ public function create(FactoryOptions $options): AbstractConnection { $connectionType = $options->isSslEnabled() ? AMQPSSLConnection::class : AMQPStreamConnection::class; $parameters = [ 'host' => $options->getHost(), 'port' => $options->getPort(), 'user' => $options->getUsername(), 'password' => $options->getPassword(), 'vhost' => $options->getVirtualHost() !== null ? $options->getVirtualHost() : '/', ]; if ($options->isSslEnabled()) { $parameters['ssl_options'] = $options->getSslOptions() !== null ? $options->getSslOptions() : ['verify_peer' => true]; } return ObjectManager::getInstance()->create($connectionType, $parameters); } }