Duplicitní služby v modulech
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.

- TomasG
 - Člen | 23
 
Ahoj,
Mám aplikaci rozdělenou do modulů, které potom registruji pomocí
CompilerExtension mezi ‚extensions‘ hlavního configu.
extensions:
    replicator: Kdyby\Replicator\DI\ReplicatorExtension
    translation: Kdyby\Translation\DI\TranslationExtension
    core: App\CubeModule\CoreModule\DI\CoreExtension
    test: App\CubeModule\TestModule\DI\TestExtension
    flame: Flame\Modules\DI\ModulesExtension
Kazdý ‚modul‘ má svůj config.neon, ve kterém registruje
‚services‘, které potřebuje.
Jenomže mám jeden modul ‚Core‘, který registruje službu (např.
továrničku na komponentu) a pak mám modul ‚Test‘, který registruje tu
samou službu.
Jenomže pak dostávám výjimku:
Multiple services of type App\CubeModule\Components\IFileExplorer found: core.explorer, test.explorer
což chápu, protože se snažím zaregistrovat službu, která už
zaregistrována je.
Nicméně jak tohle řešit? nějak při načítání konfigurace zjistit,
jestli už je služba registrována a pokud ne, tak zaregistrovat?
Díky.