1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Deploy\Source;
use Magento\Framework\App\Utility\Files;
use Magento\Deploy\Package\PackageFileFactory;
/**
* Collect files eligible for deployment from modules
*/
class Modules implements SourceInterface
{
const TYPE = 'modules';
/**
* @var Files
*/
private $filesUtil;
/**
* @var PackageFileFactory
*/
private $packageFileFactory;
/**
* Modules constructor
*
* @param Files $filesUtil
* @param PackageFileFactory $packageFileFactory
*/
public function __construct(
Files $filesUtil,
PackageFileFactory $packageFileFactory
) {
$this->filesUtil = $filesUtil;
$this->packageFileFactory = $packageFileFactory;
}
/**
* @inheritdoc
*/
public function get()
{
$files = [];
foreach ($this->filesUtil->getStaticPreProcessingFiles() as $info) {
list($area, $theme, $locale, $module, $fileName, $fullPath) = $info;
if (!empty($module) && empty($theme)) {
$locale = $locale ?: null;
$params = [
'area' => $area,
'theme' => null,
'locale' => $locale,
'module' => $module,
'fileName' => $fileName,
'sourcePath' => $fullPath
];
$files[] = $this->packageFileFactory->create($params);
}
}
return $files;
}
}