_type; } /** * Устанавливает тип уведомления * * @param string $value Тип уведомления * * @throws EmptyPropertyValueException Выбрасывается если в качестве значения было передано пустое значение * @throws InvalidPropertyValueException Выбрасывается если переданное значение не найдено в перечислении типов * нотификаций * @throws InvalidPropertyValueTypeException Выбрасывается если переданное значение не является строкой */ protected function setType($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty parameter "type" in Notification', 0, 'notification.type'); } if (TypeCast::canCastToEnumString($value)) { if (NotificationType::valueExists($value)) { $this->_type = (string)$value; } else { throw new InvalidPropertyValueException( 'Invalid value for "type" parameter in Notification', 0, 'notification.type', $value ); } } else { throw new InvalidPropertyValueTypeException( 'Invalid value type for "type" parameter in Notification', 0, 'notification.type', $value ); } } /** * Возвращает тип события * * Тип события - одна из констант, указанных в перечислении {@link NotificationEventType}. * * @return string Тип события */ public function getEvent() { return $this->_event; } /** * Устанавливает тип события * * @param string $value Тип события * * @throws EmptyPropertyValueException Выбрасывается если в качестве значения было передано пустое значение * @throws InvalidPropertyValueException Выбрасывается если переданное значение не найдено в перечислении типов * событий * @throws InvalidPropertyValueTypeException Выбрасывается если переданное значение не является строкой */ protected function setEvent($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty parameter "event" in Notification', 0, 'notification.event'); } if (TypeCast::canCastToEnumString($value)) { if (NotificationEventType::valueExists($value)) { $this->_event = (string)$value; } else { throw new InvalidPropertyValueException( 'Invalid value for "event" parameter in Notification', 0, 'notification.event', $value ); } } else { throw new InvalidPropertyValueTypeException( 'Invalid value type for "event" parameter in Notification', 0, 'notification.event', $value ); } } /** * Возвращает объект с информацией о платеже или возврате, уведомление о котором хранится в текущем объекте * * Так как нотификация может быть сгенерирована и поставлена в очередь на отправку гораздо раньше, чем она будет * получена на сайте, то опираться на статус пришедшего платежа не стоит, лучше запросить текущую информацию о * платеже у API. * * @return PaymentInterface|RefundInterface Объект с информацией о платеже */ public function getObject() { return null; } }