_setType(NotificationType::NOTIFICATION); $this->_setEvent(NotificationEventType::REFUND_SUCCEEDED); if (!empty($source['type'])) { if ($this->getType() !== $source['type']) { throw new InvalidPropertyValueException( 'Invalid value for "type" parameter in Notification', 0, 'notification.type', $source['type'] ); } } if (!empty($source['event'])) { if ($this->getEvent() !== $source['event']) { throw new InvalidPropertyValueException( 'Invalid value for "event" parameter in Notification', 0, 'notification.event', $source['event'] ); } } if (empty($source['object'])) { throw new EmptyPropertyValueException('Parameter object in NotificationSucceeded is empty'); } $this->_object = new RefundResponse($source['object']); } /** * Возвращает объект с информацией о возврате, уведомление о котором хранится в текущем объекте * * Так как нотификация может быть сгенерирована и поставлена в очередь на отправку гораздо раньше, чем она будет * получена на сайте, то опираться на статус пришедшего возврата не стоит, лучше запросить текущую информацию о * возврате у API. * * @return RefundInterface Объект с информацией о возврате */ public function getObject() { return $this->_object; } }