public function loadConfiguration() { parent::loadConfiguration(); $this->config = $this->getConfig($this->defaults); $builder = $this->getContainerBuilder(); $builder->addDefinition($this->prefix('filter'))->setClass(Filter::class)->setArguments([$this->config['directory'], $this->config['parameter']]); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $cacheDir = $builder->parameters[self::CACHE_DIR]; $imagesDir = $builder->parameters[self::IMAGES_DIR]; $servicesCacheDir = $cacheDir . "services"; $moduleCacheDir = $servicesCacheDir . "/" . $this->getModuleName(); if (!file_exists($servicesCacheDir)) { try { FileSystem::createDir($servicesCacheDir); } catch (Nette\IOException $ex) { throw new Exceptions\InsufficientPermissionException("Permission denied while creating {$servicesCacheDir} directory"); } } if (!file_exists($moduleCacheDir)) { try { FileSystem::createDir($moduleCacheDir); } catch (Nette\IOException $ex) { throw new Exceptions\InsufficientPermissionException("Permission denied while creating {$moduleCacheDir} directory"); } } if (!file_exists($imagesDir)) { try { FileSystem::createDir($imagesDir); } catch (Nette\IOException $ex) { throw new Exceptions\InsufficientPermissionException("Permission denied while creating {$imagesDir} directory"); } } }
public function loadConfiguration() { parent::loadConfiguration(); $this->validateConfig($this->defaults); $builder = $this->getContainerBuilder(); $builder->addDefinition($this->prefix('control'))->setImplement(Control\Factory::class)->setArguments([$this->config['templates']]); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->createConfig(); foreach ($this->classesDefinition as $k => $v) { list($firstKey) = explode('.', $k); if (!isset($config[$firstKey]) || !isset($config[$firstKey]['enable']) || $config[$firstKey]['enable']) { $classes[$k] = $builder->addDefinition($this->prefix($k))->setClass($v); } } /** @var Nette\DI\ServiceDefinition[] $factories */ $factories = []; foreach ($this->factoriesDefinition as $k => $v) { $factories[$k] = $builder->addDefinition($this->prefix($k))->setImplement($v); } $factories['components.listingFactory']->setArguments(['templateFile' => $config['components']['listing']['template'], 'filterFactory' => $this->prefix('@components.filterFactory')]); if (class_exists('\\Symfony\\Component\\Console\\Command\\Command')) { $command = ["cli.install" => "Install"]; if ($config['labels']['enable']) { $command["cli.labels"] = "Labels"; } foreach ($command as $k => $v) { $builder->addDefinition($this->prefix($k))->setClass('Trejjam\\Utils\\Cli\\' . $v)->addTag("kdyby.console.command"); } } }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $builder->addDefinition($this->prefix('control'))->setImplement(Control\Factory::class); $builder->addDefinition($this->prefix('form.control'))->setImplement(Form\Control\Factory::class); }
public function loadConfiguration() { parent::loadConfiguration(); $config = $this->getConfig($this->defaults); $builder = $this->getContainerBuilder(); $definition = $builder->addDefinition($this->prefix('sessionHandler'))->setClass('Pematon\\Session\\MysqlSessionHandler')->addSetup('setTableName', [$config['tableName']]); $builder->getDefinition('session')->addSetup('setHandler', array($definition)); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig(self::$DEFAULTS); $accounts = $this->loadAccounts($config['account']); $builder->addDefinition($this->prefix('chain'))->setClass(\Brosland\Chain\Chain::class)->addSetup('injectServiceLocator')->addSetup('injectServiceMap', [$accounts]); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig(self::$DEFAULTS); $baseUrl = $config['host'] . ':' . $config['port']; $wallets = $this->loadWallets($config['wallet'], $baseUrl); $builder->addDefinition($this->prefix('blockchain'))->setClass(\Brosland\Blockchain\Blockchain::class)->setArguments([$baseUrl])->addSetup('injectServiceLocator')->addSetup('injectServiceMap', [$wallets]); }
public function loadConfiguration() { parent::loadConfiguration(); $config = $this->getConfig($this->defaults); $builder = $this->getContainerBuilder(); $builder->addDefinition($this->prefix('Panel'))->setClass('Yadup\\Panel', array($config))->addSetup('Tracy\\Debugger::getBar()->addPanel(?)', array('@self'))->addTag("run"); $builder->addDefinition($this->prefix("UpdatorService"))->setClass("Yadup\\UpdatorService", array($config["sqlDir"], $config["sqlExt"], $config["dbUpdateTable"], $config["definerUser"], $config["definerHost"], $config["dbConnection"], $config["dbConnection"] . ".structure")); $builder->addDefinition($this->prefix("UpdatorRenderService"))->setClass("Yadup\\UpdatorRenderService", array($config["sqlDir"], $config["sqlExt"], $config["dbUpdateTable"], $config["dbConnection"], $config["dbConnection"] . ".structure")); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig($this->defaults); $accounts = $this->loadAccounts($config['account'], $config['curl']); $wallets = $this->loadWallets($config['wallet']); $builder->addDefinition($this->prefix('blocktrail'))->setClass(Blocktrail::class)->addSetup('setServiceLocator')->addSetup('setAccountsServiceMap', [$accounts])->addSetup('setWalletsServiceMap', [$wallets])->addSetup('setWebhooksMap', [$config['webhook']]); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->createConfig(); $tracyLogger = $builder->getDefinition('tracy.logger'); $tracyLogger->setFactory('Trejjam\\Utils\\Debugger\\Debugger::getLogger')->addSetup('setEmailClass', ['@Nette\\Mail\\IMailer'])->addSetup('setEmailSnooze', [$config['snoze']])->addSetup('setHost', [$config['host']])->addSetup('setPath', [$config['path']]); $tracyLogger = $builder->getDefinition('tracy.blueScreen'); $tracyLogger->setFactory('Trejjam\\Utils\\Debugger\\Debugger::getBlueScreen')->addSetup('setSslAuthorizedDn', [$config['sslAuthorizedDn'], $config['logIgnoreEmail']])->addSetup('setSiteMode', [$config['siteMode']]); }
public function loadConfiguration() { parent::loadConfiguration(); $config = $this->getContainerBuilder()->expand($this->validateConfig($this->defaults, $this->getConfig())); $builder = $this->getContainerBuilder(); if (!$config['accessToken']) { throw new \Exception('Access token for Rollback must be set.'); } $builder->addDefinition($this->prefix('rollbar'))->setClass('WebChemistry\\RollBar\\RollBar', [$config['accessToken'], $config['logging'], $config['enable'], $config['config']]); }
public function loadConfiguration() { parent::loadConfiguration(); $config = $this->getConfig(self::$DEFAULTS); $builder = $this->getContainerBuilder(); $builder->addDefinition($this->prefix('router'))->setFactory(\Brosland\RouterFactory::class . '::createRouter')->setAutowired(FALSE); $builder->addDefinition($this->prefix('authorizator'))->setClass(\Brosland\Authorizator::class)->addSetup('addPrivilegeDefinitions', array($config['security']['privileges']))->addSetup('addRoleDefinitions', array($config['security']['roles'])); $builder->addDefinition($this->prefix('preferences'))->setClass(\Brosland\Preferences::class); $builder->addDefinition($this->prefix('pageConfig'))->setClass(PageConfiguration::class)->setArguments(array($config['page'])); }
public function loadConfiguration() { parent::loadConfiguration(); $containerBuilder = $this->getContainerBuilder(); $containerBuilder->addDefinition($this->prefix('serverInfoFactory'))->setClass('JR\\SystemInfo\\ServerInfoFactory'); $containerBuilder->addDefinition($this->prefix('phpInfoFactory'))->setClass('JR\\SystemInfo\\PhpInfoFactory'); $containerBuilder->addDefinition($this->prefix('serverInfo'))->setFactory('@' . $this->prefix('serverInfoFactory') . '::createServerInfo'); $containerBuilder->addDefinition($this->prefix('hostInfo'))->setClass('JR\\SystemInfo\\HostInfo'); $containerBuilder->addDefinition($this->prefix('phpInfo'))->setFactory('@' . $this->prefix('phpInfoFactory') . '::createPhpInfo'); $containerBuilder->addDefinition($this->prefix('systemInfo'))->setClass('JR\\SystemInfo\\SystemInfo'); }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig(self::$defaults); $builder->addDefinition($this->prefix('requestFactory'))->setClass(RequestFactory::class)->addSetup('setMethodOverride', [$config['methodOverride']]); $builder->getDefinition('httpRequest')->setFactory($this->prefix('@requestFactory') . '::createHttpRequest'); $inputFactory = $builder->addDefinition($this->prefix('inputFactory'))->setClass(InputFactory::class)->addSetup('addParser', ['application/json', new JsonParser()]); foreach ($config['inputParsers'] as $contentType => $service) { $inputFactory->addSetup('addParser', [$contentType, $service]); } }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig($this->defaults); if (class_exists('\\Symfony\\Component\\Console\\Command\\Command')) { $command = ['cliExport' => 'Cli\\Export']; foreach ($command as $k => $v) { $builder->addDefinition($this->prefix($k))->setClass('Trejjam\\Export\\' . $v, [$config])->addTag('kdyby.console.command'); } } }
public function loadConfiguration() { parent::loadConfiguration(); $this->validateConfig($this->defaults); $providers = $this->compiler->getExtensions(Provider::class); array_walk($providers, function (Provider $provider) { $this->config = $this->validateConfig($this->config, $provider->getFormResources()); }); $builder = $this->getContainerBuilder(); $renderer = $builder->addDefinition($this->prefix('renderer'))->setClass($this->config['renderer']['class']); if (is_a($this->config['renderer'], Nette\Forms\Rendering\DefaultFormRenderer::class, TRUE)) { $renderer->addSetup('$service->wrappers = array_merge_recursive($service->wrappers, ?)', [$this->config['renderer']['wrappers']]); } }
public function loadConfiguration() { parent::loadConfiguration(); $config = $this->validateConfig($this->defaults); $containerBuilder = $this->getContainerBuilder(); Validators::assert($config, 'array'); Validators::assertField($config, 'themesDir', 'string'); $themesDir = $this->validateDirectory($config['themesDir']); Validators::assertField($config, 'currentTheme', 'string'); $currentTheme = $config['currentTheme']; Validators::assertField($config, 'fallbackTheme', 'string'); $fallbackTheme = $config['fallbackTheme']; $containerBuilder->addDefinition($this->prefix('themeManager'))->setClass('JR\\Themed\\ThemeManager\\RuntimeThemeManager', [$themesDir, $currentTheme, $fallbackTheme]); $containerBuilder->addDefinition($this->prefix('templateFileFormatter'))->setClass('JR\\Themed\\TemplateFileFormatter\\ThemeManagerAwareTemplateFileFormatter'); }
public function loadConfiguration() { parent::loadConfiguration(); $config = $this->validateConfig($this->defaults); $containerBuilder = $this->getContainerBuilder(); Validators::assertField($config, 'containerControls', 'array'); $autowired = count($config['containerControls']) === 1; foreach ($config['containerControls'] as $key => $containerControlOptions) { if (is_string($containerControlOptions)) { $containerControlOptions = ['name' => $containerControlOptions]; } else { $containerControlOptions['name'] = $key; } $containerControlOptions = ConfigHelpers::merge($containerControlOptions, $this->containerControlDefaults); Validators::assertField($containerControlOptions, 'name', 'string'); Validators::assertField($containerControlOptions, 'implement', 'string'); $containerBuilder->addDefinition($this->prefix($containerControlOptions['name'] . 'ContainerControlFactory'))->setImplement($containerControlOptions['implement'])->setAutowired($autowired); } }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig($this->defaults); Nette\Utils\Validators::assert($config, 'array'); $contentsArguments = [$config['configurationDirectory'], $config['logDirectory']]; if (!is_null($config['logDirectory'])) { $contentsArguments[2] = '@tracy.logger'; } $builder->addDefinition($this->prefix('contents'))->setClass('Trejjam\\Contents\\Contents')->setArguments($contentsArguments); foreach ($config['subTypes'] as $subTypeName => $subType) { $def = $builder->addDefinition($this->prefix('contents.' . md5(Nette\Utils\Json::encode($subType)))); $def->addSetup('setName', [$subTypeName]); $def->setFactory(Nette\DI\Compiler::filterArguments([is_string($subType) ? new Nette\DI\Statement($subType) : $subType])[0]); $def->setAutowired(FALSE); $def->setInject(FALSE); $def->addTag(self::TAG_CONTENTS_SUBTYPES); } }
public function loadConfiguration() { parent::loadConfiguration(); $builder = $this->getContainerBuilder(); $config = $this->getConfig($this->defaults); $config['rabbitmq']["appDir"] = $builder->parameters["appDir"]; $emails = $builder->addDefinition($this->prefix('emails'))->setClass('Trejjam\\Emailing\\Emails')->addSetup('setConfig', ['config' => $config['tables']]); $groups = $builder->addDefinition($this->prefix('groups'))->setClass('Trejjam\\Emailing\\Groups')->addSetup('setConfig', ['config' => $config['tables']]); $senders = $builder->addDefinition($this->prefix('senders'))->setClass('Trejjam\\Emailing\\Senders')->addSetup('setConfig', ['config' => $config['tables']]); $emailFactory = $builder->addDefinition($this->prefix('emailFactory'))->setClass('Trejjam\\Emailing\\EmailFactory')->addSetup('setConfig', ['config' => $config['connect']]); $imapFactory = $builder->addDefinition($this->prefix('imapFactory'))->setClass('Trejjam\\Emailing\\ImapFactory')->addSetup('setConfig', ['config' => $config['connect'], 'imapConfig' => $config['rabbitmq']['imap']]); $rabbitmq = $builder->addDefinition($this->prefix('rabbit.mailer'))->setClass('Trejjam\\Emailing\\RabbitMq\\Mailer')->addSetup('setConfig', ['config' => $config['rabbitmq']]); if (class_exists('\\Symfony\\Component\\Console\\Command\\Command')) { $command = ['cliInstall' => 'CliInstall', 'cliImap' => 'CliImap', 'cliGroups' => 'CliGroups', 'cliSenders' => 'CliSenders']; foreach ($command as $k => $v) { $builder->addDefinition($this->prefix($k))->setClass('Trejjam\\Emailing\\' . $v)->addTag('kdyby.console.command'); } } if ($config["cache"]["use"]) { $builder->addDefinition($this->prefix("cache"))->setFactory('Nette\\Caching\\Cache')->setArguments(['@cacheStorage', $config["cache"]["name"]])->setAutowired(FALSE); $groups->setArguments([$this->prefix("@cache")])->addSetup("setCacheParams", ["cacheParams" => [Nette\Caching\Cache::EXPIRE => $config["cache"]["timeout"]]]); $senders->setArguments([$this->prefix("@cache")])->addSetup("setCacheParams", ["cacheParams" => [Nette\Caching\Cache::EXPIRE => $config["cache"]["timeout"]]]); } }
public function loadConfiguration() { parent::loadConfiguration(); $this->registerClasses(); $this->registerFactories(); }
public function loadConfiguration() { parent::loadConfiguration(); $containerBuilder = $this->getContainerBuilder(); $containerBuilder->addDefinition($this->prefix('passwordManager'))->setClass('JR\\Passwords\\PasswordManager\\NettePasswordManager'); }