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;
 }