Skip to content

Commit 7e45f62

Browse files
committed
magento-engcom/magento2ce#2639: Minor coding practices improvements
1 parent fa890be commit 7e45f62

File tree

4 files changed

+40
-24
lines changed

4 files changed

+40
-24
lines changed

app/code/Magento/Backup/Model/Db.php

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
use Magento\Backup\Helper\Data as Helper;
99
use Magento\Backup\Model\ResourceModel\Table\GetListTables;
10-
use Magento\Backup\Model\ResourceModel\View\GetViewsBackup;
10+
use Magento\Backup\Model\ResourceModel\View\CreateViewsBackup;
1111
use Magento\Framework\App\ObjectManager;
1212
use Magento\Framework\Exception\RuntimeException;
1313

@@ -51,29 +51,30 @@ class Db implements \Magento\Framework\Backup\Db\BackupDbInterface
5151
private $getListTables;
5252

5353
/**
54-
* @var GetViewsBackup
54+
* @var CreateViewsBackup
5555
*/
5656
private $getViewsBackup;
5757

5858
/**
59-
* @param \Magento\Backup\Model\ResourceModel\Db $resourceDb
59+
* Db constructor.
60+
* @param ResourceModel\Db $resourceDb
6061
* @param \Magento\Framework\App\ResourceConnection $resource
61-
* @param GetListTables|null $getListTables
62-
* @param GetViewsBackup|null $getViewsBackup
6362
* @param Helper|null $helper
63+
* @param GetListTables|null $getListTables
64+
* @param CreateViewsBackup|null $getViewsBackup
6465
*/
6566
public function __construct(
66-
\Magento\Backup\Model\ResourceModel\Db $resourceDb,
67+
ResourceModel\Db $resourceDb,
6768
\Magento\Framework\App\ResourceConnection $resource,
6869
?Helper $helper = null,
69-
GetListTables $getListTables = null,
70-
GetViewsBackup $getViewsBackup = null
70+
?GetListTables $getListTables = null,
71+
?CreateViewsBackup $getViewsBackup = null
7172
) {
7273
$this->_resourceDb = $resourceDb;
7374
$this->_resource = $resource;
7475
$this->helper = $helper ?? ObjectManager::getInstance()->get(Helper::class);
75-
$this->getListTables = $getListTables ?: ObjectManager::getInstance()->get(GetListTables::class);
76-
$this->getViewsBackup = $getViewsBackup ?: ObjectManager::getInstance()->get(GetViewsBackup::class);
76+
$this->getListTables = $getListTables ?? ObjectManager::getInstance()->get(GetListTables::class);
77+
$this->getViewsBackup = $getViewsBackup ?? ObjectManager::getInstance()->get(CreateViewsBackup::class);
7778
}
7879

7980
/**

app/code/Magento/Backup/Model/ResourceModel/Table/GetListTables.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
use Magento\Framework\App\ResourceConnection;
1111

1212
/**
13-
* Class GetListTables
13+
* Provides full list of tables in the database. This list excludes views, to allow different backup process.
1414
*/
1515
class GetListTables
1616
{
@@ -30,12 +30,14 @@ public function __construct(ResourceConnection $resource)
3030
}
3131

3232
/**
33+
* Get list of database tables excluding views.
34+
*
3335
* @return array
3436
*/
35-
public function execute()
37+
public function execute(): array
3638
{
3739
return $this->resource->getConnection('backup')->fetchCol(
38-
"SHOW FULL TABLES WHERE `Table_type` = ?",
40+
"SHOW FULL TABLES WHERE `Table_type` = ?",
3941
self::TABLE_TYPE
4042
);
4143
}

app/code/Magento/Backup/Model/ResourceModel/View/GetViewsBackup.php renamed to app/code/Magento/Backup/Model/ResourceModel/View/CreateViewsBackup.php

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
use Magento\Framework\DB\Adapter\AdapterInterface;
1313

1414
/**
15-
* Class GetViewsBackup
15+
* Creates backup of Views in the database.
1616
*/
17-
class GetViewsBackup
17+
class CreateViewsBackup
1818
{
1919
/**
2020
* @var GetListViews
@@ -44,23 +44,27 @@ public function __construct(
4444
}
4545

4646
/**
47+
* Write backup data to backup file.
48+
*
4749
* @param BackupInterface $backup
4850
*/
49-
public function execute(BackupInterface $backup)
51+
public function execute(BackupInterface $backup): void
5052
{
5153
$views = $this->getListViews->execute();
5254

5355
foreach ($views as $view) {
5456
$backup->write($this->getViewHeader($view));
5557
$backup->write($this->getDropViewSql($view));
56-
$backup->write($this->getShowCreateView($view));
58+
$backup->write($this->getCreateView($view));
5759
}
5860
}
5961

6062
/**
63+
* Retrieve Database connection for Backup.
64+
*
6165
* @return AdapterInterface
6266
*/
63-
private function getConnection()
67+
private function getConnection(): AdapterInterface
6468
{
6569
if (!$this->connection) {
6670
$this->connection = $this->resourceConnection->getConnection('backup');
@@ -70,10 +74,12 @@ private function getConnection()
7074
}
7175

7276
/**
77+
* Get CREATE VIEW query for the specific view.
78+
*
7379
* @param string $viewName
7480
* @return string
7581
*/
76-
private function getShowCreateView($viewName)
82+
private function getCreateView(string $viewName): string
7783
{
7884
$quotedViewName = $this->getConnection()->quoteIdentifier($viewName);
7985
$query = 'SHOW CREATE VIEW ' . $quotedViewName;
@@ -85,22 +91,26 @@ private function getShowCreateView($viewName)
8591
}
8692

8793
/**
94+
* Prepare a header for View being dumped.
95+
*
8896
* @param string $viewName
8997
* @return string
9098
*/
91-
public function getViewHeader($viewName)
99+
public function getViewHeader(string $viewName): string
92100
{
93101
$quotedViewName = $this->getConnection()->quoteIdentifier($viewName);
94102
return "\n--\n" . "-- Structure for view {$quotedViewName}\n" . "--\n\n";
95103
}
96104

97105
/**
106+
* Make sure that View being created is deleted if already exists.
107+
*
98108
* @param string $viewName
99109
* @return string
100110
*/
101-
public function getDropViewSql($viewName)
111+
public function getDropViewSql(string $viewName): string
102112
{
103113
$quotedViewName = $this->getConnection()->quoteIdentifier($viewName);
104-
return sprintf('DROP VIEW IF EXISTS %s;' . "\n", $quotedViewName);
114+
return sprintf('DROP VIEW IF EXISTS %s;\n', $quotedViewName);
105115
}
106116
}

app/code/Magento/Backup/Model/ResourceModel/View/GetListViews.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@
1010
use Magento\Framework\App\ResourceConnection;
1111

1212
/**
13-
* Class GetListViews
13+
* Get list of database views.
1414
*/
1515
class GetListViews
1616
{
1717
private const TABLE_TYPE = 'VIEW';
18+
1819
/**
1920
* @var ResourceConnection
2021
*/
@@ -29,9 +30,11 @@ public function __construct(ResourceConnection $resource)
2930
}
3031

3132
/**
33+
* Get list of database views.
34+
*
3235
* @return array
3336
*/
34-
public function execute()
37+
public function execute(): array
3538
{
3639
return $this->resource->getConnection('backup')->fetchCol(
3740
"SHOW FULL TABLES WHERE `Table_type` = ?",

0 commit comments

Comments
 (0)