public function RestExport::initDisplay in Drupal 10
Same name and namespace in other branches
- 8 core/modules/rest/src/Plugin/views/display/RestExport.php \Drupal\rest\Plugin\views\display\RestExport::initDisplay()
 - 9 core/modules/rest/src/Plugin/views/display/RestExport.php \Drupal\rest\Plugin\views\display\RestExport::initDisplay()
 
Initializes the display plugin.
Parameters
\Drupal\views\ViewExecutable $view: The views executable.
array $display: The display that will be populated and attached to the view.
array $options: (optional) The options for the display plugin. Defaults to NULL.
Overrides DisplayPluginInterface::initDisplay
File
- core/
modules/ rest/ src/ Plugin/ views/ display/ RestExport.php, line 155  
Class
- RestExport
 - The plugin that handles Data response callbacks for REST resources.
 
Namespace
Drupal\rest\Plugin\views\displayCode
public function initDisplay(ViewExecutable $view, array &$display, array &$options = NULL) {
  parent::initDisplay($view, $display, $options);
  // If the default 'json' format is not selected as a format option in the
  // view display, fallback to the first format available for the default.
  if (!empty($options['style']['options']['formats']) && !isset($options['style']['options']['formats'][$this
    ->getContentType()])) {
    $default_format = reset($options['style']['options']['formats']);
    $this
      ->setContentType($default_format);
  }
  // Only use the requested content type if it's not 'html'. This allows
  // still falling back to the default for things like views preview.
  $request_content_type = $this->view
    ->getRequest()
    ->getRequestFormat();
  if ($request_content_type !== 'html') {
    $this
      ->setContentType($request_content_type);
  }
  $this
    ->setMimeType($this->view
    ->getRequest()
    ->getMimeType($this
    ->getContentType()));
}