protected function RoutableFragmentRenderer::generateFragmentUri

Generates a fragment URI for a given controller.

Parameters

ControllerReference $reference A ControllerReference instance:

Request $request A Request instance:

Return value

string A fragment URI

4 calls to RoutableFragmentRenderer::generateFragmentUri()
EsiFragmentRenderer::render in drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/EsiFragmentRenderer.php
Note that if the current Request has no ESI capability, this method falls back to use the inline rendering strategy.
HIncludeFragmentRenderer::render in drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/HIncludeFragmentRenderer.php
Additional available options:
InlineFragmentRenderer::render in drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/InlineFragmentRenderer.php
Additional available options:
Renderer::doGenerateFragmentUri in drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/RoutableFragmentRendererTest.php

File

drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/RoutableFragmentRenderer.php, line 47

Class

RoutableFragmentRenderer
Adds the possibility to generate a fragment URI for a given Controller.

Namespace

Symfony\Component\HttpKernel\Fragment

Code

protected function generateFragmentUri(ControllerReference $reference, Request $request) {
  if (!isset($reference->attributes['_format'])) {
    $reference->attributes['_format'] = $request
      ->getRequestFormat();
  }
  $reference->attributes['_controller'] = $reference->controller;
  $reference->query['_path'] = http_build_query($reference->attributes, '', '&');
  return $request
    ->getUriForPath($this->fragmentPath . '?' . http_build_query($reference->query, '', '&'));
}