/**
  * {@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());
 }
예제 #2
0
 /**
  * {@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());
 }