Dodanie práve vytvorenej služby ďalšej službe v CompilerExtension::loadConfiguration()
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.

- romiix.org
 - Člen | 343
 
Ako dodať v CompilerExtension službe práve vytvorenú službu?
class AssetsCollectorExtension extends CompilerExtension
{
    public function loadConfiguration()
    {
        $builder = $this->getContainerBuilder();
        $config = $this->getConfig(array(
                'csspath' => WWW_DIR.'/style/css',
        ));
        $builder->addDefinition($this->prefix('cssSimpleMinificator'))
            ->setClass('\RM\AssetsCollector\Compilers\CssSimpleMinificator');
        $builder->addDefinition($this->prefix('imageToDataStream'))
            ->setClass('\RM\AssetsCollector\Compilers\ImageToDataStream')
            ->addSetup('$csspath', $config['csspath']);
        $builder->addDefinition($this->prefix('collector'))
            ->setClass('\RM\AssetsCollector')
            ->addSetup('addCssCompilator', array(
                // sem chcem dodať služby cssSimpleMinificator a imageToDataStream
            ));
    }
}
Vďaka.

- enumag
 - Člen | 2118
 
Tuším že by to mohlo být nějak takhle:
	$builder->addDefinition($this->prefix('collector'))
		->setClass('\RM\AssetsCollector')
		->addSetup('addCssCompilator', array(
			'@' . $this->prefix('cssSimpleMinificator'),
			'@' . $this->prefix('imageToDataStream'),
		));
					Editoval enumag (11. 11. 2012 17:38)