setParty($party); } if ($reason !== null) { $this->setReason($reason); } } /** * Возвращает участника процесса платежа, который принял решение об отмене транзакции * * @return string Инициатор отмены платежа */ public function getParty() { return $this->_party; } /** * Возвращает причину отмены платежа * * @return string Причина отмены платежа */ public function getReason() { return $this->_reason; } /** * @return array */ public function jsonSerialize() { return array( 'party' => $this->_party, 'reason' => $this->_reason, ); } /** * Устанавливает участника процесса платежа, который принял решение об отмене транзакции * @param $value */ public function setParty($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty party value', 0, 'cancellation_details.party'); } elseif (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid party value type', 0, 'cancellation_details.party', $value); } else { $this->_party = strtolower((string)$value); } } /** * Устанавливает причину отмены платежа * @param $value */ public function setReason($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty reason value', 0, 'cancellation_details.reason'); } elseif (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid reason value type', 0, 'cancellation_details.reason'); } else { $this->_reason = strtolower((string)$value); } } }