Skip to content

Commit fd2c145

Browse files
author
Sergii Kovalenko
committed
MAGETWO-87551: Convert existing data install/upgrade scripts
1 parent 1fe101b commit fd2c145

File tree

3 files changed

+41
-20
lines changed

3 files changed

+41
-20
lines changed

setup/src/Magento/Setup/Model/Declaration/Schema/DataSavior/ColumnSavior.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
namespace Magento\Setup\Model\Declaration\Schema\DataSavior;
88

99
use Magento\Framework\App\ResourceConnection;
10+
use Magento\Framework\DB\SelectFactory;
1011
use Magento\Setup\Model\Declaration\Schema\Dto\Column;
1112
use Magento\Setup\Model\Declaration\Schema\Dto\ElementInterface;
1213
use Magento\Setup\Model\Declaration\Schema\Dto\Table;
@@ -36,23 +37,31 @@ class ColumnSavior implements DataSaviorInterface
3637
*/
3738
private $dumpAccessor;
3839

40+
/**
41+
* @var SelectFactory
42+
*/
43+
private $selectFactory;
44+
3945
/**
4046
* TableDump constructor.
4147
* @param ResourceConnection $resourceConnection
4248
* @param SelectGeneratorFactory $selectGeneratorFactory
4349
* @param DumpAccessorInterface $dumpAccessor
4450
* @param UniqueConstraintsResolver $uniqueConstraintsResolver
51+
* @param SelectFactory $selectFactory
4552
*/
4653
public function __construct(
4754
ResourceConnection $resourceConnection,
4855
SelectGeneratorFactory $selectGeneratorFactory,
4956
DumpAccessorInterface $dumpAccessor,
50-
UniqueConstraintsResolver $uniqueConstraintsResolver
57+
UniqueConstraintsResolver $uniqueConstraintsResolver,
58+
SelectFactory $selectFactory
5159
) {
5260
$this->selectGeneratorFactory = $selectGeneratorFactory;
5361
$this->resourceConnection = $resourceConnection;
5462
$this->uniqueConstraintsResolver = $uniqueConstraintsResolver;
5563
$this->dumpAccessor = $dumpAccessor;
64+
$this->selectFactory = $selectFactory;
5665
}
5766

5867
/**
@@ -65,11 +74,8 @@ public function __construct(
6574
private function prepareColumnSelect(Column $column, array $fieldsToDump)
6675
{
6776
$adapter = $this->resourceConnection->getConnection($column->getTable()->getResource());
68-
$select = $adapter
69-
->select()
70-
->setPart('disable_staging_preview', true)
71-
->from($column->getTable()->getName(), $fieldsToDump);
72-
77+
$select = $this->selectFactory->create($adapter);
78+
$select->from($column->getTable()->getName(), $fieldsToDump);
7379
return $select;
7480
}
7581

setup/src/Magento/Setup/Model/Declaration/Schema/DataSavior/TableSavior.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
namespace Magento\Setup\Model\Declaration\Schema\DataSavior;
88

99
use Magento\Framework\App\ResourceConnection;
10+
use Magento\Framework\DB\SelectFactory;
1011
use Magento\Setup\Model\Declaration\Schema\Dto\ElementInterface;
1112
use Magento\Setup\Model\Declaration\Schema\Dto\Table;
1213

@@ -30,20 +31,28 @@ class TableSavior implements DataSaviorInterface
3031
*/
3132
private $dumpAccessor;
3233

34+
/**
35+
* @var SelectFactory
36+
*/
37+
private $selectFactory;
38+
3339
/**
3440
* TableDump constructor.
3541
* @param ResourceConnection $resourceConnection
3642
* @param SelectGeneratorFactory $selectGeneratorFactory
3743
* @param DumpAccessorInterface $dumpAccessor
44+
* @param SelectFactory $selectFactory
3845
*/
3946
public function __construct(
4047
ResourceConnection $resourceConnection,
4148
SelectGeneratorFactory $selectGeneratorFactory,
42-
DumpAccessorInterface $dumpAccessor
49+
DumpAccessorInterface $dumpAccessor,
50+
SelectFactory $selectFactory
4351
) {
4452
$this->selectGeneratorFactory = $selectGeneratorFactory;
4553
$this->resourceConnection = $resourceConnection;
4654
$this->dumpAccessor = $dumpAccessor;
55+
$this->selectFactory = $selectFactory;
4756
}
4857

4958
/**
@@ -55,11 +64,8 @@ public function __construct(
5564
private function prepareTableSelect(Table $table)
5665
{
5766
$adapter = $this->resourceConnection->getConnection($table->getResource());
58-
$select = $adapter
59-
->select()
60-
->setPart('disable_staging_preview', true)
61-
->from($table->getName());
62-
67+
$select = $this->selectFactory->create($adapter);
68+
$select->from($table->getName());
6369
return $select;
6470
}
6571

setup/src/Magento/Setup/Model/Declaration/Schema/Db/MySQL/DDL/Triggers/MigrateDataFromAnotherTable.php

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
namespace Magento\Setup\Model\Declaration\Schema\Db\MySQL\DDL\Triggers;
88

99
use Magento\Framework\App\ResourceConnection;
10+
use Magento\Framework\DB\SelectFactory;
1011
use Magento\Setup\Model\Declaration\Schema\Db\DDLTriggerInterface;
1112
use Magento\Setup\Model\Declaration\Schema\Dto\Column;
1213
use Magento\Setup\Model\Declaration\Schema\Dto\ElementInterface;
@@ -27,14 +28,23 @@ class MigrateDataFromAnotherTable implements DDLTriggerInterface
2728
*/
2829
private $resourceConnection;
2930

31+
/**
32+
* @var SelectFactory
33+
*/
34+
private $selectFactory;
35+
3036
/**
3137
* Constructor.
3238
*
3339
* @param ResourceConnection $resourceConnection
40+
* @param SelectFactory $selectFactory
3441
*/
35-
public function __construct(ResourceConnection $resourceConnection)
36-
{
42+
public function __construct(
43+
ResourceConnection $resourceConnection,
44+
SelectFactory $selectFactory
45+
) {
3746
$this->resourceConnection = $resourceConnection;
47+
$this->selectFactory = $selectFactory;
3848
}
3949

4050
/**
@@ -59,12 +69,11 @@ public function getCallback(ElementInterface $column)
5969
$adapter = $this->resourceConnection->getConnection(
6070
$column->getTable()->getResource()
6171
);
62-
$select = $adapter->select()
63-
->setPart('disable_staging_preview', true)
64-
->from(
65-
$this->resourceConnection->getTableName($tableMigrateFrom),
66-
[$column->getName() => $columnMigrateFrom]
67-
);
72+
$select = $this->selectFactory->create($adapter);
73+
$select->from(
74+
$this->resourceConnection->getTableName($tableMigrateFrom),
75+
[$column->getName() => $columnMigrateFrom]
76+
);
6877
//Update only if table exists
6978
if ($adapter->isTableExists($tableMigrateFrom)) {
7079
$adapter->query(

0 commit comments

Comments
 (0)