_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'); } elseif (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'); } elseif (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 ); } } }