You are here

public function PanelsDisplayVariant::setBuilder in Panels 8.3

Same name and namespace in other branches
  1. 8.4 src/Plugin/DisplayVariant/PanelsDisplayVariant.php \Drupal\panels\Plugin\DisplayVariant\PanelsDisplayVariant::setBuilder()

Assigns a builder to this display variant.

Parameters

string|\Drupal\panels\Plugin\DisplayBuilder\DisplayBuilderInterface $builder: The builder object or plugin id.

Return value

$this

Throws

\Exception If $build isn't a string or DisplayBuilderInterface object.

File

src/Plugin/DisplayVariant/PanelsDisplayVariant.php, line 162

Class

PanelsDisplayVariant
Provides a display variant that simply contains blocks.

Namespace

Drupal\panels\Plugin\DisplayVariant

Code

public function setBuilder($builder) {
  if ($builder instanceof DisplayBuilderInterface) {
    $this->builder = $builder;
    $this->configuration['builder'] = $builder
      ->getPluginId();
  }
  elseif (is_string($builder)) {
    $this->builder = NULL;
    $this->configuration['builder'] = $builder;
  }
  else {
    throw new \Exception("Builder must be a string or DisplayBuilderInterface object");
  }
  return $this;
}