diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/CachePoolPass.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/CachePoolPass.php index c856c0206a5d7..6186cc9d5ff24 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/CachePoolPass.php +++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/CachePoolPass.php @@ -31,11 +31,12 @@ public function process(ContainerBuilder $container) { $namespaceSuffix = ''; - foreach (array('name', 'root_dir', 'environment', 'debug') as $key) { - if ($container->hasParameter('kernel.'.$key)) { - $namespaceSuffix .= '.'.$container->getParameter('kernel.'.$key); + foreach (array('kernel.name', 'kernel.environment', 'kernel.debug', 'cache.prefix.seed') as $key) { + if ($container->hasParameter($key)) { + $namespaceSuffix .= '.'.$container->getParameter($key); } } + $container->getParameterBag()->remove('cache.prefix.seed'); $aliases = $container->getAliases(); $attributes = array( diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php index f33085f8724a8..5c6208e6e46f2 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php +++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php @@ -667,6 +667,10 @@ private function addCacheSection(ArrayNodeDefinition $rootNode) ->addDefaultsIfNotSet() ->fixXmlConfig('pool') ->children() + ->scalarNode('prefix_seed') + ->info('Used to namespace cache keys when using several apps with the same shared backend') + ->example('my-application-name') + ->end() ->scalarNode('app') ->info('App related cache pools configuration') ->defaultValue('cache.adapter.filesystem') diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php index 5c009962eabfa..7a888e4cee431 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php +++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php @@ -1242,6 +1242,9 @@ private function registerCacheConfiguration(array $config, ContainerBuilder $con $container->getDefinition('cache.adapter.system')->replaceArgument(2, $version); $container->getDefinition('cache.adapter.filesystem')->replaceArgument(2, $config['directory']); + if (isset($config['prefix_seed'])) { + $container->setParameter('cache.prefix.seed', $config['prefix_seed']); + } foreach (array('doctrine', 'psr6', 'redis') as $name) { if (isset($config[$name = 'default_'.$name.'_provider'])) { $container->setAlias('cache.'.$name, Compiler\CachePoolPass::getServiceProvider($container, $config[$name]));
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: