/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); foreach (array('services', 'form') as $service) { $loader->load(sprintf('%s.xml', $service)); } if ($config['service'] == 's3') { $loader->load('s3.xml'); } else { $loader->load('connector.xml'); } switch ($config['service']) { case 'php': $container->setAlias('jonlil_ckfinder.connector', 'jonlil.ckfinder.connector.php'); break; case 's3': $container->setAlias('jonlil_ckfinder.connector', 'jonlil.ckfinder.connector.s3'); $container->setParameter('jonlil_ckfinder.amazon', array('secret' => $config['secret'], 'bucket' => $config['bucket'], 'access_key' => $config['accessKey'], 'base_url' => $config['baseUrl'], 'base_dir' => $config['baseDir'], 'thumbnails_file' => $config['thumbnailsFile'], 'thumbnails_enabled' => $config['thumbnailsEnabled'], 'direct_access' => $config['directAccess'], 'file_delete' => $config['fileDelete'], 'file_rename' => $config['fileRename'], 'file_upload' => $config['fileUpload'], 'file_view' => $config['fileView'], 'folder_delete' => $config['folderDelete'], 'folder_rename' => $config['folderRename'], 'folder_create' => $config['folderCreate'], 'folder_view' => $config['folderView'])); $container->setParameter('jonlil_ckfinder.baseDir', $config['baseDir']); break; } $container->setParameter('jonlil_ckfinder.license', array('key' => $config['license']['key'], 'name' => $config['license']['name'])); $container->setParameter('jonlil_ckfinder.baseUrl', $config['baseUrl']); $container->setParameter('twig.form.resources', array_merge($container->getParameter('twig.form.resources'), array('JonlilCKFinderBundle:Form:ckfinder_widget.html.twig'))); }
public function load(array $pluginConfiguration, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/Resources/config')); foreach (['services'] as $basename) { $loader->load(sprintf('%s.xml', $basename)); } }
/** * {@inheritDoc} */ public function load(array $config, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('form_flow.xml'); $loader->load('twig.xml'); $loader->load('util.xml'); }
/** * {@inheritdoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = $this->getConfiguration($configs, $container); $config = $this->processConfiguration($configuration, $configs); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $loader->load('plugins.xml'); // Register default services foreach ($config['classes'] as $service => $class) { if (!empty($class)) { $container->register(sprintf('httplug.%s.default', $service), $class); } } // Set main aliases foreach ($config['main_alias'] as $type => $id) { $container->setAlias(sprintf('httplug.%s', $type), $id); } // Configure toolbar if ($this->isConfigEnabled($container, $config['profiling'])) { $loader->load('data-collector.xml'); if (!empty($config['profiling']['formatter'])) { // Add custom formatter $container->getDefinition('httplug.collector.debug_collector')->replaceArgument(0, new Reference($config['profiling']['formatter'])); } $container->getDefinition('httplug.formatter.full_http_message')->addArgument($config['profiling']['captured_body_length']); } $this->configureClients($container, $config); $this->configureSharedPlugins($container, $config['plugins']); // must be after clients, as clients.X.plugins might use plugins as templates that will be removed $this->configureAutoDiscoveryClients($container, $config); }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $services = array('orm' => 'orm-services'); $supportedEncryptorClasses = array('aes256' => 'VMelnik\\DoctrineEncryptBundle\\Encryptors\\AES256Encryptor'); if (empty($config['secret_key'])) { if ($container->hasParameter('secret')) { $config['secret_key'] = $container->getParameter('secret'); } else { throw new \RuntimeException('You must provide "secret_key" for DoctrineEncryptBundle or "secret" for framework'); } } if (!empty($config['encryptor_class'])) { $encryptorFullName = $config['encryptor_class']; } else { $encryptorFullName = $supportedEncryptorClasses[$config['encryptor']]; } $container->setParameter('vmelnik_doctrine_encrypt.encryptor_class_name', $encryptorFullName); $container->setParameter('vmelnik_doctrine_encrypt.secret_key', $config['secret_key']); if (!empty($config['encryptor_service'])) { $container->setParameter('vmelnik_doctrine_encrypt.encryptor_service', $config['encryptor_service']); } $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load(sprintf('%s.xml', $services[$config['db_driver']])); }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $container->setParameter('eo_airbrake.api_key', $config['api_key']); $container->setParameter('eo_airbrake.async', $config['async']); $container->setParameter('eo_airbrake.host', $config['host']); $container->setParameter('eo_airbrake.secure', $config['secure']); // Exception Listener if ($config['api_key']) { // Airbreak Configuration $class = $container->getParameter('eo_airbrake.configuration.class'); $definition = new Definition($class, array($config['api_key'], $config['async'], $container->getParameter('kernel.environment'), $config['host'], $config['secure'])); $container->setDefinition('eo_airbrake.configuration', $definition); // Airbreak Client $class = $container->getParameter('eo_airbrake.client.class'); $definition = new Definition($class, array(new Reference('eo_airbrake.configuration'))); $container->setDefinition('eo_airbrake.client', $definition); // Exception Listener $class = $container->getParameter('eo_airbrake.exception_listener.class'); $definition = new Definition($class, array(new Reference('eo_airbrake.client'), $config['ignored_exceptions'])); $definition->addTag('kernel.event_listener', array('event' => 'kernel.exception', 'method' => 'onKernelException')); $container->setDefinition('php_airbrake.exception_listener', $definition); // PHP Shutdown Listener $class = $container->getParameter('eo_airbrake.shutdown_listener.class'); $definition = new Definition($class, array(new Reference('eo_airbrake.client'))); $definition->addTag('kernel.event_listener', array('event' => 'kernel.controller', 'method' => 'register')); $container->setDefinition('php_airbrake.shutdown_listener', $definition); } }
public function testDbalLoadFromXmlMultipleConnections() { $container = $this->getContainer(); $loader = new DoctrineExtension(); $container->registerExtension($loader); $loadXml = new XmlFileLoader($container, __DIR__ . '/Fixtures/config/xml'); $loadXml->load('dbal_service_multiple_connections.xml'); $loader->dbalLoad(array(), $container); $container->freeze(); // doctrine.dbal.mysql_connection $arguments = $container->getDefinition('doctrine.dbal.mysql_connection')->getArguments(); $config = $arguments[0]; $this->assertEquals('mysql_s3cr3t', $config['password']); $this->assertEquals('mysql_user', $config['user']); $this->assertEquals('mysql_db', $config['dbname']); $this->assertEquals('/path/to/mysqld.sock', $config['unix_socket']); // doctrine.dbal.sqlite_connection $arguments = $container->getDefinition('doctrine.dbal.sqlite_connection')->getArguments(); $container = $this->getContainer(); $loader = new DoctrineExtension(); $container->registerExtension($loader); $loadXml = new XmlFileLoader($container, __DIR__ . '/Fixtures/config/xml'); $loadXml->load('dbal_service_single_connection.xml'); $loader->dbalLoad(array(), $container); $container->freeze(); // doctrine.dbal.mysql_connection $arguments = $container->getDefinition('doctrine.dbal.mysql_connection')->getArguments(); $config = $arguments[0]; $this->assertEquals('mysql_s3cr3t', $config['password']); $this->assertEquals('mysql_user', $config['user']); $this->assertEquals('mysql_db', $config['dbname']); $this->assertEquals('/path/to/mysqld.sock', $config['unix_socket']); }
protected function loadInternal(array $config, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $container->setAlias('bernard.driver', 'bernard.driver.' . $config['driver']); switch ($config['driver']) { case 'doctrine': $this->registerDoctrineConfiguration($config['options'], $container); break; case 'file': $this->registerFlatFileConfiguration($config['options'], $container); break; case 'phpamqp': $this->registerPhpAmqpConfiguration($config['options'], $container); break; case 'phpredis': $this->registerPhpRedisConfiguration($config['options'], $container); break; case 'predis': $this->registerPredisConfiguration($config['options'], $container); break; case 'ironmq': $this->registerIronMQConfiguration($config['options'], $container); break; case 'sqs': $this->registerSqsConfiguration($config['options'], $container); break; } $this->registerListeners($config['listeners'], $container); }
/** * Load configuration. */ public function load(array $configs, ContainerBuilder $container) { $processor = new Processor(); $configuration = new Configuration(); $config = $processor->processConfiguration($configuration, $configs); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $loader->load('controllers.xml'); if (isset($config['serializer'])) { $container->setAlias('fos_js_routing.serializer', new Alias($config['serializer'], false)); } else { $loader->load('serializer.xml'); } $container->setAlias('fos_js_routing.router', new Alias($config['router'], false)); $container->getDefinition('fos_js_routing.extractor')->replaceArgument(1, $config['routes_to_expose']); if (isset($config['request_context_base_url'])) { $container->setParameter('fos_js_routing.request_context_base_url', $config['request_context_base_url']); } if (isset($config['cache_control'])) { $config['cache_control']['enabled'] = true; } else { $config['cache_control'] = array('enabled' => false); } $container->setParameter('fos_js_routing.cache_control', $config['cache_control']); }
/** * {@inheritdoc} */ public function load(ContainerBuilder $container, array $config) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/services')); $loader->load('core.xml'); $container->setParameter('behat.mailcatcher.client.url', $config['url']); $container->setParameter('behat.mailcatcher.purge_before_scenario', $config['purge_before_scenario']); }
public function loadInternal(array $config, ContainerBuilder $container) { $this->mergeNavigation($container, $config['navigation']); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $loader->load('roles.xml'); }
/** * {@inheritdoc} */ public function load(array $configs, ContainerBuilder $container) { $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); // add custom form widgets $container->setParameter('twig.form.resources', array_merge($container->getParameter('twig.form.resources'), ['ZapoyokExtraFormBundle:Form:form_admin_fields.html.twig'])); }
/** * Responds to the doctrine_mongo_db configuration parameter. */ public function load(array $configs, ContainerBuilder $container) { // Load DoctrineMongoDBBundle/Resources/config/mongodb.xml $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('mongodb.xml'); $processor = new Processor(); $configuration = new Configuration($container->getParameter('kernel.debug')); $config = $processor->processConfiguration($configuration, $configs); // can't currently default this correctly in Configuration if (!isset($config['metadata_cache_driver'])) { $config['metadata_cache_driver'] = array('type' => 'array'); } if (empty($config['default_connection'])) { $keys = array_keys($config['connections']); $config['default_connection'] = reset($keys); } if (empty($config['default_document_manager'])) { $keys = array_keys($config['document_managers']); $config['default_document_manager'] = reset($keys); } // set some options as parameters and unset them $config = $this->overrideParameters($config, $container); // load the connections $this->loadConnections($config['connections'], $container); // load the document managers $this->loadDocumentManagers($config['document_managers'], $config['default_document_manager'], $config['default_database'], $config['metadata_cache_driver'], $container); $this->loadConstraints($container); }
/** * Loads a specific configuration. * * @param array $config An array of configuration values * @param ContainerBuilder $container A ContainerBuilder instance * * @throws \InvalidArgumentException When provided tag is not defined in this extension * * @api */ public function load(array $config, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('event_listeners.xml'); $loader->load('serializer.xml'); $loader->load('api_controllers.xml'); }
public function load(array $configs, ContainerBuilder $container) { $processor = new Processor(); $config = $processor->processConfiguration(new Configuration(), $configs); $loader = new XmlFileLoader($container, new FileLocator(array(__DIR__ . '/../Resources/config'))); $loader->load('services.xml'); $container->setParameter('jms_i18n_routing.default_locale', $config['default_locale']); $container->setParameter('jms_i18n_routing.locales', $config['locales']); $container->setParameter('jms_i18n_routing.catalogue', $config['catalogue']); $container->setParameter('jms_i18n_routing.strategy', $config['strategy']); $this->addClassesToCompile(array($container->getDefinition('jms_i18n_routing.router')->getClass())); if ('prefix' === $config['strategy']) { $container->getDefinition('jms_i18n_routing.locale_choosing_listener')->setPublic(true)->addTag('kernel.event_listener', array('event' => 'kernel.exception', 'priority' => 128)); } if ($config['hosts']) { $container->getDefinition('jms_i18n_routing.router')->addMethodCall('setHostMap', array($config['hosts'])); $container->getDefinition('jms_i18n_routing.locale_changing_listener')->setPublic(true)->addTag('kernel.event_listener', array('event' => 'kernel.request', 'priority' => 120))->addArgument(array_flip($config['hosts'])); $this->addClassesToCompile(array($container->getDefinition('jms_i18n_routing.locale_changing_listener')->getClass())); } // remove route extractor if JMSTranslationBundle is not enabled to avoid any problems $bundles = $container->getParameter('kernel.bundles'); if (!isset($bundles['JMSTranslationBundle'])) { $container->removeDefinition('jms_i18n_routing.route_translation_extractor'); } }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $config = $this->processConfiguration(new Configuration(), $configs); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('form.xml'); $loader->load('manager.xml'); }
/** * Responds to the twig configuration parameter. * * @param array $configs * @param ContainerBuilder $container */ public function load(array $configs, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('twig.xml'); $configuration = $this->getConfiguration($configs, $container); $config = $this->processConfiguration($configuration, $configs); $container->setParameter('twig.exception_listener.controller', $config['exception_controller']); $container->setParameter('twig.form.resources', $config['form']['resources']); $reflClass = new \ReflectionClass('Symfony\\Bridge\\Twig\\Extension\\FormExtension'); $container->getDefinition('twig.loader')->addMethodCall('addPath', array(dirname(dirname($reflClass->getFileName())) . '/Resources/views/Form')); if (!empty($config['globals'])) { $def = $container->getDefinition('twig'); foreach ($config['globals'] as $key => $global) { if (isset($global['type']) && 'service' === $global['type']) { $def->addMethodCall('addGlobal', array($key, new Reference($global['id']))); } else { $def->addMethodCall('addGlobal', array($key, $global['value'])); } } } unset($config['form'], $config['globals'], $config['extensions']); $container->setParameter('twig.options', $config); if ($container->getParameter('kernel.debug')) { $loader->load('debug.xml'); $container->setDefinition('templating.engine.twig', $container->findDefinition('debug.templating.engine.twig')); $container->setAlias('debug.templating.engine.twig', 'templating.engine.twig'); } $this->addClassesToCompile(array('Twig_Environment', 'Twig_ExtensionInterface', 'Twig_Extension', 'Twig_Extension_Core', 'Twig_Extension_Escaper', 'Twig_Extension_Optimizer', 'Twig_LoaderInterface', 'Twig_Markup', 'Twig_TemplateInterface', 'Twig_Template')); }
/** * {@inheritdoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); // load db_driver container configuration $loader->load(sprintf('%s.xml', $config['db_driver'])); if ($config['filter']['enabled']) { // if enabled - define filter $loader->load('filter.xml'); $mailers = $config['filter']['mailer_name']; $filter = $container->getDefinition('shivas_bouncer.swift_mailer.filter'); foreach ($mailers as $mailer) { $filter->addTag(sprintf('swiftmailer.%s.plugin', $mailer)); } } $container->setParameter(sprintf('shivas_bouncer.backend_%s', $config['db_driver']), true); $container->setParameter('shivas_bouncer.driver', $config['db_driver']); $container->setParameter('shivas_bouncer.manager_name', $config['model_manager_name']); $container->setParameter('shivas_bouncer.bounce_endpoint', $config['bounce_endpoint']); $container->setParameter('shivas_bouncer.filter', $config['filter']); $container->setParameter('shivas_bouncer.filter.filter_not_permanent', $config['filter']['filter_not_permanent']); $container->setParameter('shivas_bouncer.aws_api_key', $config['aws_api_key']); }
protected function loadExamples(ContainerBuilder $container) { $xmlloader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config/examples')); $yamlloader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config/examples')); $yamlloader->load("example_menu.yml"); $xmlloader->load("example_navbar.xml"); }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('connectors.xml'); $loader->load('services.xml'); // Listen service $container->getDefinition('ndewez.events.listener')->addArgument($config['events']); // Connector mock if (true === $config['mock']) { $this->setConnector($container, $container->getDefinition('ndewez.events.connector.mock')); return; } if (!isset($config['connection'])) { return; } // Connector synchronous if (ConnectorInterface::MODE_SYNCH === $config['mode']) { $connector = $container->getDefinition('ndewez.events.connector.http'); $connector->replaceArgument(0, $config['connection']['host']); $this->setConnector($container, $connector); return; } // Connector asynchronous $connector = $container->getDefinition('ndewez.events.connector.amqp'); $connector->replaceArgument(0, $config['connection']['host'])->replaceArgument(1, $config['connection']['port'])->replaceArgument(2, $config['connection']['user'])->replaceArgument(3, $config['connection']['password'])->replaceArgument(4, $config['connection']['application_code']); $this->setConnector($container, $connector); }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); if (!in_array(strtolower($config['db_driver']), array('orm'))) { throw new \InvalidArgumentException(sprintf('Invalid database driver (bait_poll.db_driver) "%s".', $config['db_driver'])); } $loader->load(sprintf('%s.xml', $config['db_driver'])); $container->setParameter('bait_poll.model_manager_name', $config['model_manager_name']); $container->setParameter('bait_poll.form.type', $config['form']['type']); $container->setParameter('bait_poll.form.name', $config['form']['name']); $container->setAlias('bait_poll.form.factory', $config['form']['factory']); $container->setParameter('bait_poll.poll.class', $config['poll']['class']); $container->setParameter('bait_poll.field.class', $config['field']['class']); $container->setParameter('bait_poll.vote.class', $config['vote']['class']); $container->setParameter('bait_poll.form.template', $config['form']['template']); $container->setParameter('bait_poll.form.theme', $config['form']['theme']); $container->setAlias('bait_poll.vote.manager', $config['vote']['manager']); $container->setAlias('bait_poll.poll.manager', $config['poll']['manager']); $loader->load('form.xml'); $container->setParameter('bait_poll.cookie.prefix', $config['cookie']['prefix']); $container->setParameter('bait_poll.cookie.duration', $config['cookie']['duration']); $loader->load('poll.xml'); }
public function load(array $configs, ContainerBuilder $container) { $config = $this->processConfiguration(new Configuration($container), $configs); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $container->setParameter('jms_translation.source_language', $config['source_language']); $container->setParameter('jms_translation.locales', $config['locales']); $requests = array(); foreach ($config['configs'] as $name => $extractConfig) { $def = new Definition('JMS\\TranslationBundle\\Translation\\ConfigBuilder'); $def->addMethodCall('setTranslationsDir', array($extractConfig['output_dir'])); $def->addMethodCall('setScanDirs', array($extractConfig['dirs'])); if (isset($extractConfig['ignored_domains'])) { $ignored = array(); foreach ($extractConfig['ignored_domains'] as $domain) { $ignored[$domain] = true; } $def->addMethodCall('setIgnoredDomains', array($ignored)); } if (isset($extractConfig['domains'])) { $domains = array(); foreach ($extractConfig['domains'] as $domain) { $domains[$domain] = true; } $def->addMethodCall('setDomains', array($domains)); } if (isset($extractConfig['extractors'])) { $extractors = array(); foreach ($extractConfig['extractors'] as $alias) { $extractors[$alias] = true; } $def->addMethodCall('setEnabledExtractors', array($extractors)); } if (isset($extractConfig['excluded_dirs'])) { $def->addMethodCall('setExcludedDirs', array($extractConfig['excluded_dirs'])); } if (isset($extractConfig['excluded_names'])) { $def->addMethodCall('setExcludedNames', array($extractConfig['excluded_names'])); } if (isset($extractConfig['output_format'])) { $def->addMethodCall('setOutputFormat', array($extractConfig['output_format'])); } if (isset($extractConfig['default_output_format'])) { $def->addMethodCall('setDefaultOutputFormat', array($extractConfig['default_output_format'])); } if (isset($extractConfig['keep'])) { $def->addMethodCall('setKeepOldTranslations', array($extractConfig['keep'])); } if (isset($extractConfig['external_translations_dirs'])) { $def->addMethodCall('setLoadResources', array($extractConfig['external_translations_dirs'])); } if (isset($extractConfig['output_options'])) { foreach ($extractConfig['output_options'] as $format => $formatOptions) { $def->addMethodCall('setOutputOptions', array($format, $formatOptions)); } } $requests[$name] = $def; } $container->getDefinition('jms_translation.config_factory')->addArgument($requests); }
/** * Loads the Twig configuration. * * @param array $config An array of configuration settings * @param ContainerBuilder $container A ContainerBuilder instance */ public function configLoad($config, ContainerBuilder $container) { if (!$container->hasDefinition('twig')) { $loader = new XmlFileLoader($container, __DIR__ . '/../Resources/config'); $loader->load('twig.xml'); } // form resources foreach (array('resources', 'resource') as $key) { if (isset($config['form'][$key])) { $resources = (array) $config['form'][$key]; $container->setParameter('twig.form.resources', array_merge($container->getParameter('twig.form.resources'), $resources)); unset($config['form'][$key]); } } // globals $def = $container->getDefinition('twig'); $globals = $this->fixConfig($config, 'global'); if (isset($globals[0])) { foreach ($globals as $global) { $def->addMethodCall('addGlobal', array($global['key'], new Reference($global['id']))); } } else { foreach ($globals as $key => $id) { $def->addMethodCall('addGlobal', array($key, new Reference($id))); } } unset($config['globals'], $config['global']); // convert - to _ foreach ($config as $key => $value) { $config[str_replace('-', '_', $key)] = $value; } $container->setParameter('twig.options', array_replace($container->getParameter('twig.options'), $config)); }
public function testIfAServiceDefinitionIsNotCorrectAnExceptionWillBeThrown() { $loader = new XmlFileLoader($this->container, new FileLocator(__DIR__ . '/Fixtures')); $loader->load('incorrect_service_definitions.xml'); $this->setExpectedException('Matthias\\SymfonyServiceDefinitionValidator\\Exception\\InvalidServiceDefinitionsException'); $this->container->compile(); }
/** * {@inheritdoc} */ public function load(array $config, ContainerBuilder $container) { $config = $this->processConfiguration(new Configuration(), $config); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $configFiles = array('services.xml', 'templating.xml', 'twig.xml'); foreach ($configFiles as $configFile) { $loader->load($configFile); } $container->setAlias('sylius.cart_provider', $config['provider']); $container->setAlias('sylius.cart_resolver', $config['resolver']); $container->setAlias('sylius.repository.cart', 'sylius.repository.order'); $container->setAlias('sylius.factory.cart', 'sylius.factory.order'); $container->setAlias('sylius.manager.cart', 'sylius.manager.order'); $container->setAlias('sylius.repository.cart_item', 'sylius.repository.order_item'); $container->setAlias('sylius.factory.cart_item', 'sylius.factory.order_item'); $container->setAlias('sylius.manager.cart_item', 'sylius.manager.order_item'); $cartConfig = $config['resources']['cart']; $cartItemConfig = $config['resources']['cart_item']; $container->setParameter('sylius.controller.cart.class', $cartConfig['classes']['controller']); $container->setParameter('sylius.form.type.cart.class', $cartConfig['classes']['form']['default']); $container->setParameter('sylius.validation_groups.cart', $cartConfig['validation_groups']); $container->setParameter('sylius.controller.cart_item.class', $cartItemConfig['classes']['controller']); $container->setParameter('sylius.form.type.cart_item.class', $cartItemConfig['classes']['form']['default']); $container->setParameter('sylius.validation_groups.cart_item', $cartItemConfig['validation_groups']); $definition = $container->findDefinition('sylius.context.cart'); $definition->replaceArgument(0, new Reference($config['storage'])); }
/** * Loads the Monolog configuration. * * @param array $configs An array of configuration settings * @param ContainerBuilder $container A ContainerBuilder instance */ public function load(array $configs, ContainerBuilder $container) { $configuration = $this->getConfiguration($configs, $container); $config = $this->processConfiguration($configuration, $configs); if (isset($config['handlers'])) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('monolog.xml'); $container->setAlias('logger', 'monolog.logger'); $handlers = array(); foreach ($config['handlers'] as $name => $handler) { $handlers[$handler['priority']][] = array('id' => $this->buildHandler($container, $name, $handler), 'channels' => empty($handler['channels']) ? null : $handler['channels']); } $container->setParameter('monolog.swift_mailer.handlers', $this->swiftMailerHandlers); ksort($handlers); $sortedHandlers = array(); foreach ($handlers as $priorityHandlers) { foreach (array_reverse($priorityHandlers) as $handler) { $sortedHandlers[] = $handler; } } $handlersToChannels = array(); foreach ($sortedHandlers as $handler) { if (!in_array($handler['id'], $this->nestedHandlers)) { $handlersToChannels[$handler['id']] = $handler['channels']; } } $container->setParameter('monolog.handlers_to_channels', $handlersToChannels); $this->addClassesToCompile(array('Monolog\\Formatter\\FormatterInterface', 'Monolog\\Formatter\\LineFormatter', 'Monolog\\Handler\\HandlerInterface', 'Monolog\\Handler\\AbstractHandler', 'Monolog\\Handler\\AbstractProcessingHandler', 'Monolog\\Handler\\StreamHandler', 'Monolog\\Handler\\FingersCrossedHandler', 'Monolog\\Handler\\FilterHandler', 'Monolog\\Handler\\TestHandler', 'Monolog\\Logger', 'Symfony\\Bridge\\Monolog\\Logger', 'Symfony\\Bridge\\Monolog\\Handler\\DebugHandler', 'Monolog\\Handler\\FingersCrossed\\ActivationStrategyInterface', 'Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy')); } $container->setParameter('monolog.additional_channels', isset($config['channels']) ? $config['channels'] : array()); }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); if (isset($config['handler_path'])) { $container->setParameter('shibboleth.handler_path', $config['handler_path']); } if (isset($config['secured_handler'])) { $container->setParameter('shibboleth.secured_handler', $config['secured_handler']); } if (isset($config['session_initiator_path'])) { $container->setParameter('shibboleth.session_initiator_path', $config['session_initiator_path']); } if (isset($config['username_attribute'])) { $container->setParameter('shibboleth.username_attribute', $config['username_attribute']); } if (isset($config['attribute_definitions'])) { $container->setParameter('shibboleth.attribute_definitions', $config['attribute_definitions']); } else { $container->setParameter('shibboleth.attribute_definitions', array()); } if (isset($config['use_headers'])) { $container->setParameter('shibboleth.use_headers', $config['use_headers']); } else { $container->setParameter('shibboleth.use_headers', true); } if (isset($config['logout_target'])) { $container->setParameter('shibboleth.logout_target', $config['logout_target']); } }
/** * {@inheritdoc} */ public function load(array $config, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $configFiles = ['services.xml', 'attribute_types.xml']; foreach ($configFiles as $configFile) { $loader->load($configFile); } $config = $this->processConfiguration(new Configuration(), $config); $this->registerResources('sylius', $config['driver'], $this->resolveResources($config['resources'], $container), $container); foreach ($config['resources'] as $subjectName => $subjectConfig) { foreach ($subjectConfig as $resourceName => $resourceConfig) { if (!is_array($resourceConfig)) { continue; } $formDefinition = $container->getDefinition('sylius.form.type.' . $subjectName . '_' . $resourceName); $formDefinition->addArgument($subjectName); if (isset($resourceConfig['translation'])) { $formTranslationDefinition = $container->getDefinition('sylius.form.type.' . $subjectName . '_' . $resourceName . '_translation'); $formTranslationDefinition->addArgument($subjectName); } if (false !== strpos($resourceName, 'value')) { $formDefinition->addArgument($container->getDefinition('sylius.repository.' . $subjectName . '_attribute')); } } } }
/** * {@inheritdoc} */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); }
public function load(array $configs, ContainerBuilder $container) { $config = $this->mergeConfigs($configs); $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.xml'); $container->setParameter('jms_di_extra.all_bundles', $config['locations']['all_bundles']); $container->setParameter('jms_di_extra.bundles', $config['locations']['bundles']); $container->setParameter('jms_di_extra.directories', $config['locations']['directories']); $container->setParameter('jms_di_extra.cache_dir', $config['cache_dir']); $container->setParameter('jms_di_extra.disable_grep', $config['disable_grep']); $container->setParameter('jms_di_extra.doctrine_integration', $config['doctrine_integration']); if ($config['cache_warmer']['enabled']) { foreach ($config['cache_warmer']['controller_file_blacklist'] as $filename) { $this->blackListControllerFile($filename); } $container->setParameter('jms_di_extra.cache_warmer.controller_file_blacklist', $this->blackListedControllerFiles); } else { $container->removeDefinition('jms_di_extra.controller_injectors_warmer'); } $this->configureMetadata($config['metadata'], $container, $config['cache_dir'] . '/metadata'); $this->configureAutomaticControllerInjections($config, $container); if ($config['doctrine_integration']) { $this->generateEntityManagerProxyClass($config, $container); } $this->addClassesToCompile(array('JMS\\DiExtraBundle\\HttpKernel\\ControllerResolver')); }