| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- namespace ThurData\Servers\KerioEmail\Core\SL;
- use Symfony\Component\Yaml\Yaml;
- use ThurData\Servers\KerioEmail\Core\ModuleConstants;
- /**
- * Description of Register
- *
- * @autor ThurData <info@thrudata.ch>
- */
- class Configuration extends AbstractReaderYml
- {
- protected function load()
- {
- list($dataDev, $dataCore) = $this->readFiles();
- $data = null;
- if (isset($dataDev) && isset($dataCore))
- {
- $this->buildData($dataDev, $dataCore, $data);
- }
- elseif (!isset($dataDev) && isset($dataCore) && isset($dataCore['class']))
- {
- $data = $dataCore['class'];
- }
- elseif (isset($dataDev) && !isset($dataCore) && isset($dataDev['class']))
- {
- $data = $dataDev['class'];
- }
- $this->data = $data;
- }
- private function buildData($dataDev, $dataCore, &$data)
- {
- if (isset($dataDev['class']) && isset($dataCore['class']))
- {
- foreach ($dataCore['class'] as $core)
- {
- $isFind = false;
- foreach ($dataDev['class'] as $dev)
- {
- if ($dev['name'] === $core['name'])
- {
- $isFind = true;
- break;
- }
- }
- if (!$isFind)
- {
- $dataDev['class'][] = $core;
- }
- }
- $data = $dataDev['class'];
- }
- elseif (!isset($dataDev['class']) && isset($dataCore['class']))
- {
- $data = $dataCore['class'];
- }
- elseif (isset($dataDev['class']) && !isset($dataCore['class']))
- {
- $data = $dataDev['class'];
- }
- }
- private function readFiles()
- {
- return [
- $this->readYml(ModuleConstants::getFullPath('app', 'Config', 'di', 'buildWithDefaultMethod.yml')),
- $this->readYml(ModuleConstants::getFullPath('core', 'Config', 'di', 'buildWithDefaultMethod.yml'))
- ];
- }
- }
|