public static function fromMetadataProfileArray($arr) { $newArr = new KalturaMetadataProfileArray(); if ($arr == null) { return $newArr; } foreach ($arr as $obj) { $nObj = new KalturaMetadataProfile(); $nObj->fromObject($obj); $newArr[] = $nObj; } return $newArr; }
function update($id, KalturaMetadataProfile $metadataProfile, $xsdData = null, $viewsData = null) { $kparams = array(); $this->client->addParam($kparams, "id", $id); $this->client->addParam($kparams, "metadataProfile", $metadataProfile->toParams()); $this->client->addParam($kparams, "xsdData", $xsdData); $this->client->addParam($kparams, "viewsData", $viewsData); $this->client->queueServiceActionCall("metadata_metadataprofile", "update", $kparams); if ($this->client->isMultiRequest()) { return null; } $resultObject = $this->client->doQueue(); $this->client->throwExceptionIfError($resultObject); $this->client->validateObjectType($resultObject, "KalturaMetadataProfile"); return $resultObject; }
/** * Update an existing metadata object xslt file * * @action updateTransformationFromFile * @param int $id * @param file $xsltFile XSLT file, will be executed on every metadata add/update * @return KalturaMetadataProfile * @throws MetadataErrors::METADATA_PROFILE_NOT_FOUND * @throws MetadataErrors::METADATA_FILE_NOT_FOUND */ function updateTransformationFromFileAction($id, $xsltFile) { $dbMetadataProfile = MetadataProfilePeer::retrieveByPK($id); if (!$dbMetadataProfile) { throw new KalturaAPIException(MetadataErrors::METADATA_PROFILE_NOT_FOUND, $id); } $filePath = null; if ($xsltFile) { $filePath = $xsltFile['tmp_name']; if (!file_exists($filePath)) { throw new KalturaAPIException(MetadataErrors::METADATA_FILE_NOT_FOUND, $xsltFile['name']); } $xsltData = file_get_contents($filePath); if (trim($xsltData) == '') { throw new KalturaAPIException(MetadataErrors::EMPTY_XSLT_DATA_PROVIDED, $xsltFile['name']); } } $dbMetadataProfile->setXsltData($xsltData); $dbMetadataProfile->save(); $metadataProfile = new KalturaMetadataProfile(); $metadataProfile->fromObject($dbMetadataProfile, $this->getResponseProfile()); return $metadataProfile; }
/** * Update an existing metadata object views file * * @action updateViewsFromFile * @param int $id * @param file $viewsFile UI views file * @return KalturaMetadataProfile * @throws KalturaErrors::INVALID_OBJECT_ID * @throws MetadataErrors::METADATA_FILE_NOT_FOUND */ function updateViewsFromFileAction($id, $viewsFile) { $dbMetadataProfile = MetadataProfilePeer::retrieveByPK($id); if (!$dbMetadataProfile) { throw new KalturaAPIException(KalturaErrors::INVALID_OBJECT_ID, $id); } $filePath = null; if ($viewsFile) { $filePath = $viewsFile['tmp_name']; if (!file_exists($filePath)) { throw new KalturaAPIException(MetadataErrors::METADATA_FILE_NOT_FOUND, $viewsFile['name']); } } $dbMetadataProfile->incrementViewsVersion(); $dbMetadataProfile->save(); if (trim(file_get_contents($filePath)) != '') { $key = $dbMetadataProfile->getSyncKey(MetadataProfile::FILE_SYNC_METADATA_VIEWS); kFileSyncUtils::moveFromFile($filePath, $key); } $metadataProfile = new KalturaMetadataProfile(); $metadataProfile->fromObject($dbMetadataProfile); return $metadataProfile; }