/** * {@inheritdoc} */ public function onChange($name) { if ($name == 'entity_id' && $this->get('flagged_entity')->isEmpty()) { $this->flagged_entity->target_id = $this->entity_id->value; } if (in_array($name, ['flagged_entity', 'entity_id']) && $this->flagged_entity->target_id != $this->entity_id->value) { throw new \LogicException("A flagging can't be moved to another entity."); } parent::onChange($name); }