/** * Update exisiting delivery * * @action update * @param string $id * @param KalturaDeliveryProfile $delivery * @return KalturaDeliveryProfile */ function updateAction($id, KalturaDeliveryProfile $delivery) { DeliveryProfilePeer::setUseCriteriaFilter(false); $dbDelivery = DeliveryProfilePeer::retrieveByPK($id); DeliveryProfilePeer::setUseCriteriaFilter(true); if (!$dbDelivery) { throw new KalturaAPIException(KalturaErrors::DELIVERY_ID_NOT_FOUND, $id); } // Don't allow to update default delivery profiles from the outside if ($dbDelivery->getIsDefault()) { throw new KalturaAPIException(KalturaErrors::DELIVERY_UPDATE_ISNT_ALLOWED, $id); } $delivery->toUpdatableObject($dbDelivery); $dbDelivery->save(); $delivery = KalturaDeliveryProfileFactory::getDeliveryProfileInstanceByType($dbDelivery->getType()); $delivery->fromObject($dbDelivery, $this->getResponseProfile()); return $delivery; }
public function getMapBetweenObjects() { return array_merge(parent::getMapBetweenObjects(), self::$map_between_objects); }
/** * Update exisiting delivery * * @param string $id * @param KalturaDeliveryProfile $delivery * @return KalturaDeliveryProfile */ function update($id, KalturaDeliveryProfile $delivery) { $kparams = array(); $this->client->addParam($kparams, "id", $id); $this->client->addParam($kparams, "delivery", $delivery->toParams()); $this->client->queueServiceActionCall("deliveryprofile", "update", $kparams); if ($this->client->isMultiRequest()) { return $this->client->getMultiRequestResult(); } $resultObject = $this->client->doQueue(); $this->client->throwExceptionIfError($resultObject); $this->client->validateObjectType($resultObject, "KalturaDeliveryProfile"); return $resultObject; }