mirror of
https://github.com/espocrm/espocrm.git
synced 2026-06-29 07:26:05 +00:00
43 lines
1.0 KiB
PHP
43 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace Espo\Core\Loaders;
|
|
|
|
use Doctrine\ORM\Tools\Setup,
|
|
Espo\Core\Doctrine\ORM\Mapping\Driver\EspoPHPDriver;
|
|
|
|
class EntityManager
|
|
{
|
|
private $container;
|
|
|
|
public function __construct(\Espo\Core\Container $container)
|
|
{
|
|
$this->container = $container;
|
|
}
|
|
|
|
protected function getContainer()
|
|
{
|
|
return $this->container;
|
|
}
|
|
|
|
public function load()
|
|
{
|
|
$config = $this->getContainer()->get('config');
|
|
|
|
$params = array(
|
|
'host' => $config->get('database.host'),
|
|
'dbname' => $config->get('database.dbname'),
|
|
'user' => $config->get('database.user'),
|
|
'password' => $config->get('database.password'),
|
|
'metadata' => $this->getContainer()->get('metadata')->getOrmMetadata(),
|
|
'repositoryFactoryClassName' => '\\Espo\\Core\\ORM\\RepositoryFactory',
|
|
);
|
|
|
|
$entityManager = new \Espo\Core\ORM\EntityManager($params);
|
|
$entityManager->setEspoMetadata($this->getContainer()->get('metadata'));
|
|
$entityManager->setHookManager($this->getContainer()->get('hookManager'));
|
|
|
|
return $entityManager;
|
|
}
|
|
}
|
|
|