mirror of
https://github.com/espocrm/espocrm.git
synced 2026-06-28 06:56:05 +00:00
module service
This commit is contained in:
@@ -30,7 +30,6 @@
|
||||
namespace Espo\Classes\AppInfo;
|
||||
|
||||
use Espo\Core\{
|
||||
Utils\File\Manager as FileManager,
|
||||
Utils\Module,
|
||||
Binding\EspoBindingLoader,
|
||||
Binding\Binding as BindingItem,
|
||||
@@ -39,20 +38,18 @@ use Espo\Core\{
|
||||
|
||||
class Binding
|
||||
{
|
||||
private $fileManager;
|
||||
private $module;
|
||||
|
||||
public function __construct(FileManager $fileManager)
|
||||
public function __construct(Module $module)
|
||||
{
|
||||
$this->fileManager = $fileManager;
|
||||
$this->module = $module;
|
||||
}
|
||||
|
||||
public function process(Params $params) : ?string
|
||||
{
|
||||
$result = '';
|
||||
|
||||
$bindingLoader = new EspoBindingLoader(
|
||||
new Module($this->fileManager)
|
||||
);
|
||||
$bindingLoader = new EspoBindingLoader($this->module);
|
||||
|
||||
$data = $bindingLoader->load();
|
||||
|
||||
|
||||
@@ -48,6 +48,11 @@ class DefaultBinding implements BindingProcessor
|
||||
'container'
|
||||
);
|
||||
|
||||
$binder->bindService(
|
||||
'Espo\\Core\\Utils\\Module',
|
||||
'module'
|
||||
);
|
||||
|
||||
$binder->bindService(
|
||||
'Espo\\ORM\\EntityManager',
|
||||
'entityManager'
|
||||
|
||||
@@ -29,9 +29,7 @@
|
||||
|
||||
namespace Espo\Core\Binding;
|
||||
|
||||
use Espo\Core\{
|
||||
Utils\Module,
|
||||
};
|
||||
use Espo\Core\Utils\Module;
|
||||
|
||||
class EspoBindingLoader implements BindingLoader
|
||||
{
|
||||
|
||||
@@ -60,6 +60,8 @@ class ContainerBuilder
|
||||
|
||||
private $dataCacheClassName = DataCache::class;
|
||||
|
||||
private $moduleClassName = Module::class;
|
||||
|
||||
private $bindingLoader = null;
|
||||
|
||||
private $services = [];
|
||||
@@ -148,16 +150,19 @@ class ContainerBuilder
|
||||
new $this->dataCacheClassName($fileManager)
|
||||
);
|
||||
|
||||
$useCache = $config->get('useCache') ?? false;
|
||||
|
||||
$module = $this->services['module'] ?? (
|
||||
new $this->moduleClassName($fileManager, $dataCache, $useCache)
|
||||
);
|
||||
|
||||
$this->services['config'] = $config;
|
||||
$this->services['fileManager'] = $fileManager;
|
||||
$this->services['dataCache'] = $dataCache;
|
||||
|
||||
$useCache = $config->get('useCache') ?? false;
|
||||
$this->services['module'] = $module;
|
||||
|
||||
$bindingLoader = $this->bindingLoader ?? (
|
||||
new EspoBindingLoader(
|
||||
new Module($fileManager, $dataCache, $useCache)
|
||||
)
|
||||
new EspoBindingLoader($module)
|
||||
);
|
||||
|
||||
$bindingContainer = new BindingContainer($bindingLoader->load());
|
||||
|
||||
@@ -75,15 +75,15 @@ class Metadata
|
||||
FileManager $fileManager,
|
||||
DataCache $dataCache,
|
||||
ResourceReader $resourceReader,
|
||||
Module $module,
|
||||
bool $useCache = false
|
||||
){
|
||||
$this->fileManager = $fileManager;
|
||||
$this->dataCache = $dataCache;
|
||||
$this->resourceReader = $resourceReader;
|
||||
$this->module = $module;
|
||||
|
||||
$this->useCache = $useCache;
|
||||
|
||||
$this->module = new Module($this->fileManager, $this->dataCache, $useCache);
|
||||
}
|
||||
|
||||
private function getMetadataHelper(): Helper
|
||||
|
||||
@@ -38,16 +38,15 @@ use Espo\Core\Utils\DataCache;
|
||||
use Espo\Core\Utils\File\UnifierObj;
|
||||
use Espo\Core\Utils\File\Unifier;
|
||||
use Espo\Core\Utils\Module;
|
||||
use Espo\Core\Utils\Module\PathProvider as ModulePathProvider;
|
||||
use Espo\Core\Utils\Resource\Reader;
|
||||
use Espo\Core\Utils\Resource\PathProvider;
|
||||
|
||||
use Espo\Core\Utils\Module\PathProvider as ModulePathProvider;
|
||||
|
||||
class MetadataTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
protected $object;
|
||||
private $object;
|
||||
|
||||
protected $reflection;
|
||||
private $reflection;
|
||||
|
||||
protected function setUp(): void
|
||||
{
|
||||
@@ -68,7 +67,7 @@ class MetadataTest extends \PHPUnit\Framework\TestCase
|
||||
|
||||
$reader = new Reader($unifier, $unifierObj);
|
||||
|
||||
$this->object = new Metadata($this->fileManager, $this->dataCache, $reader, true);
|
||||
$this->object = new Metadata($this->fileManager, $this->dataCache, $reader, $module, true);
|
||||
|
||||
$this->reflection = new ReflectionHelper($this->object);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user