Skip to content

Commit

Permalink
changed the ESI fragment renderer to be always registered
Browse files Browse the repository at this point in the history
  • Loading branch information
fabpot committed Aug 13, 2013
1 parent 43e066f commit 09f727b
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 10 deletions.
8 changes: 0 additions & 8 deletions src/Symfony/Bundle/FrameworkBundle/Resources/config/esi.xml
Expand Up @@ -7,7 +7,6 @@
<parameters>
<parameter key="esi.class">Symfony\Component\HttpKernel\HttpCache\Esi</parameter>
<parameter key="esi_listener.class">Symfony\Component\HttpKernel\EventListener\EsiListener</parameter>
<parameter key="fragment.renderer.esi.class">Symfony\Component\HttpKernel\Fragment\EsiFragmentRenderer</parameter>
</parameters>

<services>
Expand All @@ -17,12 +16,5 @@
<tag name="kernel.event_subscriber" />
<argument type="service" id="esi" on-invalid="ignore" />
</service>

<service id="fragment.renderer.esi" class="%fragment.renderer.esi.class%">
<tag name="kernel.fragment_renderer" />
<argument type="service" id="esi" />
<argument type="service" id="fragment.renderer.inline" />
<call method="setFragmentPath"><argument>%fragment.path%</argument></call>
</service>
</services>
</container>
Expand Up @@ -9,6 +9,7 @@
<parameter key="fragment.renderer.inline.class">Symfony\Component\HttpKernel\Fragment\InlineFragmentRenderer</parameter>
<parameter key="fragment.renderer.hinclude.class">Symfony\Bundle\FrameworkBundle\Fragment\ContainerAwareHIncludeFragmentRenderer</parameter>
<parameter key="fragment.renderer.hinclude.global_template"></parameter>
<parameter key="fragment.renderer.esi.class">Symfony\Component\HttpKernel\Fragment\EsiFragmentRenderer</parameter>
<parameter key="fragment.path">/_fragment</parameter>
</parameters>

Expand All @@ -33,5 +34,12 @@
<argument>%fragment.renderer.hinclude.global_template%</argument>
<call method="setFragmentPath"><argument>%fragment.path%</argument></call>
</service>

<service id="fragment.renderer.esi" class="%fragment.renderer.esi.class%">
<tag name="kernel.fragment_renderer" />
<argument type="service" id="esi" on-invalid="null" />
<argument type="service" id="fragment.renderer.inline" />
<call method="setFragmentPath"><argument>%fragment.path%</argument></call>
</service>
</services>
</container>
Expand Up @@ -35,7 +35,7 @@ class EsiFragmentRenderer extends RoutableFragmentRenderer
* @param Esi $esi An Esi instance
* @param InlineFragmentRenderer $inlineStrategy The inline strategy to use when ESI is not supported
*/
public function __construct(Esi $esi, InlineFragmentRenderer $inlineStrategy)
public function __construct(Esi $esi = null, InlineFragmentRenderer $inlineStrategy)
{
$this->esi = $esi;
$this->inlineStrategy = $inlineStrategy;
Expand All @@ -56,7 +56,7 @@ public function __construct(Esi $esi, InlineFragmentRenderer $inlineStrategy)
*/
public function render($uri, Request $request, array $options = array())
{
if (!$this->esi->hasSurrogateEsiCapability($request)) {
if (!$this->esi || !$this->esi->hasSurrogateEsiCapability($request)) {
return $this->inlineStrategy->render($uri, $request, $options);
}

Expand Down

0 comments on commit 09f727b

Please sign in to comment.