|
Apache/2.4.41 (Ubuntu) Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) server ip : 62.171.164.128 | your ip : 127.0.0.1 safemode OFF > / home / dev2.destoffenstraat.com / setup / src / Magento / Setup / Module / |
Filename | /home/dev2.destoffenstraat.com/setup/src/Magento/Setup/Module/ConnectionFactory.php |
Size | 3.95 kb |
Permission | rw-r--r-- |
Owner | root : root |
Create time | 17-Aug-2025 10:26 |
Last modified | 28-Jan-2025 06:45 |
Last accessed | 23-Aug-2025 00:02 |
Actions | edit | rename | delete | download (gzip) |
View | text | code | image |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Setup\Module;
use Magento\Framework\Model\ResourceModel\Type\Db\Pdo\Mysql;
use Laminas\ServiceManager\ServiceLocatorInterface;
/**
* Connection adapter factory
*
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class ConnectionFactory implements \Magento\Framework\Model\ResourceModel\Type\Db\ConnectionFactoryInterface
{
/**
* @var ServiceLocatorInterface
*/
private $serviceLocator;
/**
* Constructor
*
* @param ServiceLocatorInterface $serviceLocator
*/
public function __construct(ServiceLocatorInterface $serviceLocator)
{
$this->serviceLocator = $serviceLocator;
}
/**
* @inheritDoc
*/
public function create(array $connectionConfig)
{
$quote = new \Magento\Framework\DB\Platform\Quote();
$selectFactory = new \Magento\Framework\DB\SelectFactory(
new \Magento\Framework\DB\Select\SelectRenderer(
[
'distinct' => [
'renderer' => new \Magento\Framework\DB\Select\DistinctRenderer(),
'sort' => 100,
'part' => 'distinct'
],
'columns' => [
'renderer' => new \Magento\Framework\DB\Select\ColumnsRenderer($quote),
'sort' => 200,
'part' => 'columns'
],
'union' => [
'renderer' => new \Magento\Framework\DB\Select\UnionRenderer(),
'sort' => 300,
'part' => 'union'
],
'from' => [
'renderer' => new \Magento\Framework\DB\Select\FromRenderer($quote),
'sort' => 400,
'part' => 'from'
],
'where' => [
'renderer' => new \Magento\Framework\DB\Select\WhereRenderer(),
'sort' => 500,
'part' => 'where'
],
'group' => [
'renderer' => new \Magento\Framework\DB\Select\GroupRenderer($quote),
'sort' => 600,
'part' => 'group'
],
'having' => [
'renderer' => new \Magento\Framework\DB\Select\HavingRenderer(),
'sort' => 700,
'part' => 'having'
],
'order' => [
'renderer' => new \Magento\Framework\DB\Select\OrderRenderer($quote),
'sort' => 800,
'part' => 'order'
],
'limit' => [
'renderer' => new \Magento\Framework\DB\Select\LimitRenderer(),
'sort' => 900,
'part' => 'limitcount'
],
'for_update' => [
'renderer' => new \Magento\Framework\DB\Select\ForUpdateRenderer(),
'sort' => 1000,
'part' => 'forupdate'
],
]
)
);
$objectManagerProvider = $this->serviceLocator->get(\Magento\Setup\Model\ObjectManagerProvider::class);
$mysqlFactory = new \Magento\Framework\DB\Adapter\Pdo\MysqlFactory($objectManagerProvider->get());
$resourceInstance = new Mysql($connectionConfig, $mysqlFactory);
return $resourceInstance->getConnection(
$this->serviceLocator->get(\Magento\Framework\DB\Logger\Quiet::class),
$selectFactory
);
}
}
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Setup\Module;
use Magento\Framework\Model\ResourceModel\Type\Db\Pdo\Mysql;
use Laminas\ServiceManager\ServiceLocatorInterface;
/**
* Connection adapter factory
*
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class ConnectionFactory implements \Magento\Framework\Model\ResourceModel\Type\Db\ConnectionFactoryInterface
{
/**
* @var ServiceLocatorInterface
*/
private $serviceLocator;
/**
* Constructor
*
* @param ServiceLocatorInterface $serviceLocator
*/
public function __construct(ServiceLocatorInterface $serviceLocator)
{
$this->serviceLocator = $serviceLocator;
}
/**
* @inheritDoc
*/
public function create(array $connectionConfig)
{
$quote = new \Magento\Framework\DB\Platform\Quote();
$selectFactory = new \Magento\Framework\DB\SelectFactory(
new \Magento\Framework\DB\Select\SelectRenderer(
[
'distinct' => [
'renderer' => new \Magento\Framework\DB\Select\DistinctRenderer(),
'sort' => 100,
'part' => 'distinct'
],
'columns' => [
'renderer' => new \Magento\Framework\DB\Select\ColumnsRenderer($quote),
'sort' => 200,
'part' => 'columns'
],
'union' => [
'renderer' => new \Magento\Framework\DB\Select\UnionRenderer(),
'sort' => 300,
'part' => 'union'
],
'from' => [
'renderer' => new \Magento\Framework\DB\Select\FromRenderer($quote),
'sort' => 400,
'part' => 'from'
],
'where' => [
'renderer' => new \Magento\Framework\DB\Select\WhereRenderer(),
'sort' => 500,
'part' => 'where'
],
'group' => [
'renderer' => new \Magento\Framework\DB\Select\GroupRenderer($quote),
'sort' => 600,
'part' => 'group'
],
'having' => [
'renderer' => new \Magento\Framework\DB\Select\HavingRenderer(),
'sort' => 700,
'part' => 'having'
],
'order' => [
'renderer' => new \Magento\Framework\DB\Select\OrderRenderer($quote),
'sort' => 800,
'part' => 'order'
],
'limit' => [
'renderer' => new \Magento\Framework\DB\Select\LimitRenderer(),
'sort' => 900,
'part' => 'limitcount'
],
'for_update' => [
'renderer' => new \Magento\Framework\DB\Select\ForUpdateRenderer(),
'sort' => 1000,
'part' => 'forupdate'
],
]
)
);
$objectManagerProvider = $this->serviceLocator->get(\Magento\Setup\Model\ObjectManagerProvider::class);
$mysqlFactory = new \Magento\Framework\DB\Adapter\Pdo\MysqlFactory($objectManagerProvider->get());
$resourceInstance = new Mysql($connectionConfig, $mysqlFactory);
return $resourceInstance->getConnection(
$this->serviceLocator->get(\Magento\Framework\DB\Logger\Quiet::class),
$selectFactory
);
}
}