/** * @param Config $config */ public function __construct(Config $config) { $this->addBuilder(new Service\ServiceBuilder($config)); $this->addBuilder(new Service\ServiceFactoryBuilder($config)); $this->addBuilder(new Service\ServiceTraitBuilder($config)); $this->addBuilder(new Service\ServiceTestBuilder($config)); $this->addBuilder(new Entity\EntityBuilder($config)); $this->addBuilder(new Entity\EntityTestBuilder($config)); $this->addBuilder(new Repository\RepositoryBuilder($config)); $this->addBuilder(new Repository\RepositoryTraitBuilder($config)); $this->addBuilder(new Form\FormFactoryBuilder($config)); $this->addBuilder(new ExceptionContainer($config)); if ($config->getRest()) { $this->addBuilder(new Controller\RESTControllerBuilder($config)); } else { $this->addBuilder(new Controller\ControllerBuilder($config)); } }