浏览代码

[FrameworkBundle] removed templating.loader.cache.path parameter

Fabien Potencier 14 年之前
父节点
当前提交
1cb03b1448

+ 4 - 4
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php

@@ -357,10 +357,10 @@ class FrameworkExtension extends Extension
         if (isset($config['cache'])) {
             // Wrap the existing loader with cache (must happen after loaders are registered)
             $container->setDefinition('templating.loader.wrapped', $container->findDefinition('templating.loader'));
-            $container->setDefinition('templating.loader', $container->getDefinition('templating.loader.cache'));
-            $container->setParameter('templating.loader.cache.path', $config['cache']);
-        } else {
-            $container->setParameter('templating.loader.cache.path', null);
+            $loaderCache = $container->getDefinition('templating.loader.cache');
+            $loaderCache->setArgument(1, $config['cache']);
+
+            $container->setDefinition('templating.loader', $loaderCache);
         }
 
         if ($config['cache_warmer']) {

+ 1 - 1
src/Symfony/Bundle/FrameworkBundle/Resources/config/templating.xml

@@ -48,7 +48,7 @@
 
         <service id="templating.loader.cache" class="%templating.loader.cache.class%" public="false">
             <argument type="service" id="templating.loader.wrapped" />
-            <argument>%templating.loader.cache.path%</argument>
+            <argument /> <!-- cache path -->
             <call method="setDebugger"><argument type="service" id="templating.debugger" on-invalid="ignore" /></call>
         </service>
 

+ 2 - 1
src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php

@@ -117,7 +117,8 @@ abstract class FrameworkExtensionTest extends TestCase
 
         $this->assertEquals($container->getDefinition('templating.loader'), $container->getDefinition('templating.loader.cache'), '->registerTemplatingConfiguration() configures the loader to use cache');
 
-        $this->assertEquals('/path/to/cache', $container->getParameter('templating.loader.cache.path'));
+        $arguments = $container->getDefinition('templating.loader.cache')->getArguments();
+        $this->assertEquals('/path/to/cache', $arguments[1]);
 
         $this->assertEquals(array('php', 'twig'), $container->getParameter('templating.engines'), '->registerTemplatingConfiguration() sets a templating.engines parameter');
     }