Overrides \Drupal\Component\Plugin\PluginBag::initializePlugin().
Overrides PluginBag::initializePlugin
protected function initializePlugin($display_id) {
// If the display was initialized before, just return.
if (isset($this->pluginInstances[$display_id])) {
return;
}
// Retrieve and initialize the new display handler with data.
$display =& $this->view->storage
->getDisplay($display_id);
try {
$this->pluginInstances[$display_id] = $this->manager
->createInstance($display['display_plugin']);
} catch (PluginException $e) {
$message = $e
->getMessage();
drupal_set_message(t('!message', array(
'!message' => $message,
)), 'warning');
}
// If no plugin instance has been created, return NULL.
if (empty($this->pluginInstances[$display_id])) {
return NULL;
}
$this->pluginInstances[$display_id]
->initDisplay($this->view, $display);
// If this is not the default display handler, let it know which is since
// it may well utilize some data from the default.
if ($display_id != 'default') {
$this->pluginInstances[$display_id]->default_display = $this->pluginInstances['default'];
}
}