/** * {@inheritdoc} */ public function setValue($value, $notify = TRUE) { $value = (array) $value; $plugin_instance = $this->parent->getContainedPluginInstance(); if ($plugin_instance instanceof ConfigurablePluginInterface) { $plugin_instance->setConfiguration($value); } $this->parent->onChange($this->getName()); }
/** * {@inheritdoc} */ public function setValue($value, $notify = TRUE) { $value = (string) $value; $plugin_instance = $this->parent->getContainedPluginInstance(); if (!$value) { $this->parent->resetContainedPluginInstance(); } elseif (!$plugin_instance || $plugin_instance->getPluginId() != $value) { $plugin_instance = $this->parent->getPluginType()->getPluginManager()->createInstance($value); $this->parent->setContainedPluginInstance($plugin_instance); } $this->parent->onChange($this->getName()); }