You are here

public function HtmlResponse::setContent in Drupal 9

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Render/HtmlResponse.php \Drupal\Core\Render\HtmlResponse::setContent()

Sets the response content.

Parameters

mixed $content: Content that can be cast to string, or a render array.

Return value

$this

1 call to HtmlResponse::setContent()
HtmlResponse::__construct in core/lib/Drupal/Core/Render/HtmlResponse.php
Constructs a HtmlResponse object.

File

core/lib/Drupal/Core/Render/HtmlResponse.php, line 54

Class

HtmlResponse
Response that contains and can expose cacheability metadata and attachments.

Namespace

Drupal\Core\Render

Code

public function setContent($content) {

  // A render array can automatically be converted to a string and set the
  // necessary metadata.
  if (is_array($content) && isset($content['#markup'])) {
    $content += [
      '#attached' => [
        'html_response_attachment_placeholders' => [],
        'placeholders' => [],
      ],
    ];
    $this
      ->addCacheableDependency(CacheableMetadata::createFromRenderArray($content));
    $this
      ->setAttachments($content['#attached']);
    $content = $content['#markup'];
  }
  return parent::setContent($content);
}