Skip to content

Commit 9ad08cb

Browse files
committed
Cleanup ObjectManager usage - Magento_Translation
1 parent cac512f commit 9ad08cb

File tree

6 files changed

+210
-205
lines changed

6 files changed

+210
-205
lines changed

app/code/Magento/Translation/Model/FileManager.php

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6+
declare(strict_types=1);
7+
68
namespace Magento\Translation\Model;
79

810
use Magento\Framework\App\Filesystem\DirectoryList;
9-
use Magento\Framework\App\ObjectManager;
10-
use Magento\Translation\Model\Inline\File as TranslationFile;
11+
use Magento\Framework\Filesystem\Driver\File;
12+
use Magento\Framework\View\Asset\Repository;
1113

1214
/**
1315
* A service for handling Translation config files
@@ -20,41 +22,33 @@ class FileManager
2022
const TRANSLATION_CONFIG_FILE_NAME = 'Magento_Translation/js/i18n-config.js';
2123

2224
/**
23-
* @var \Magento\Framework\View\Asset\Repository
25+
* @var Repository
2426
*/
2527
private $assetRepo;
2628

2729
/**
28-
* @var \Magento\Framework\App\Filesystem\DirectoryList
30+
* @var DirectoryList
2931
*/
3032
private $directoryList;
3133

3234
/**
33-
* @var \Magento\Framework\Filesystem\Driver\File
35+
* @var File
3436
*/
3537
private $driverFile;
3638

3739
/**
38-
* @var TranslationFile
39-
*/
40-
private $translationFile;
41-
42-
/**
43-
* @param \Magento\Framework\View\Asset\Repository $assetRepo
44-
* @param \Magento\Framework\App\Filesystem\DirectoryList $directoryList
45-
* @param \Magento\Framework\Filesystem\Driver\File $driverFile
46-
* @param TranslationFile $translationFile
40+
* @param Repository $assetRepo
41+
* @param DirectoryList $directoryList
42+
* @param File $driverFile
4743
*/
4844
public function __construct(
49-
\Magento\Framework\View\Asset\Repository $assetRepo,
50-
\Magento\Framework\App\Filesystem\DirectoryList $directoryList,
51-
\Magento\Framework\Filesystem\Driver\File $driverFile,
52-
\Magento\Translation\Model\Inline\File $translationFile = null
45+
Repository $assetRepo,
46+
DirectoryList $directoryList,
47+
File $driverFile
5348
) {
5449
$this->assetRepo = $assetRepo;
5550
$this->directoryList = $directoryList;
5651
$this->driverFile = $driverFile;
57-
$this->translationFile = $translationFile ?: ObjectManager::getInstance()->get(TranslationFile::class);
5852
}
5953

6054
/**
@@ -71,7 +65,7 @@ public function createTranslateConfigAsset()
7165
}
7266

7367
/**
74-
* gets current js-translation.json timestamp
68+
* Gets current js-translation.json timestamp
7569
*
7670
* @return string|void
7771
*/
@@ -87,18 +81,22 @@ public function getTranslationFileTimestamp()
8781
}
8882

8983
/**
84+
* Retrieve full path for translation file
85+
*
9086
* @return string
9187
*/
9288
protected function getTranslationFileFullPath()
9389
{
9490
return $this->directoryList->getPath(DirectoryList::STATIC_VIEW) .
95-
\DIRECTORY_SEPARATOR .
96-
$this->assetRepo->getStaticViewFileContext()->getPath() .
97-
\DIRECTORY_SEPARATOR .
98-
Js\Config::DICTIONARY_FILE_NAME;
91+
\DIRECTORY_SEPARATOR .
92+
$this->assetRepo->getStaticViewFileContext()->getPath() .
93+
\DIRECTORY_SEPARATOR .
94+
Js\Config::DICTIONARY_FILE_NAME;
9995
}
10096

10197
/**
98+
* Retrieve path for translation file
99+
*
102100
* @return string
103101
*/
104102
public function getTranslationFilePath()
@@ -107,17 +105,22 @@ public function getTranslationFilePath()
107105
}
108106

109107
/**
108+
* Update translation file with content
109+
*
110110
* @param string $content
111+
*
111112
* @return void
112113
*/
113114
public function updateTranslationFileContent($content)
114115
{
115116
$translationDir = $this->directoryList->getPath(DirectoryList::STATIC_VIEW) .
116117
\DIRECTORY_SEPARATOR .
117118
$this->assetRepo->getStaticViewFileContext()->getPath();
119+
118120
if (!$this->driverFile->isExists($this->getTranslationFileFullPath())) {
119121
$this->driverFile->createDirectory($translationDir);
120122
}
123+
121124
$this->driverFile->filePutContents($this->getTranslationFileFullPath(), $content);
122125
}
123126

0 commit comments

Comments
 (0)