/** * {@inheritdoc} * * @param Price $price * @param Constraint $constraint */ public function validate($price, Constraint $constraint) { if ($price->getValue() && !$price->getCurrency()) { /* @var $constraint Constraints\OptionalPrice */ $this->context->addViolationAt('currency', $constraint->message); } }
/** * @ORM\PrePersist * @ORM\PreUpdate */ public function updatePrice() { $this->value = $this->price ? $this->price->getValue() : null; $this->currency = $this->price ? $this->price->getCurrency() : null; }