/**
  * @param entry $entry
  * @param FileSyncKey $key
  */
 protected function export(entry $entry, StorageProfile $externalStorage, FileSyncKey $key, $force = false)
 {
     if (!$this->shouldExport($key, $externalStorage)) {
         KalturaLog::log(__METHOD__ . " no need to export key [{$key}] to externalStorage id[" . $externalStorage->getId() . "]");
         return;
     }
     $fileSync = kFileSyncUtils::createPendingExternalSyncFileForKey($key, $externalStorage);
     $srcFileSyncLocalPath = kFileSyncUtils::getLocalFilePathForKey($key, true);
     kJobsManager::addStorageExportJob(null, $entry->getId(), $entry->getPartnerId(), $externalStorage, $fileSync, $srcFileSyncLocalPath, $force);
 }
Exemple #2
0
 /**
  * @param entry $entry
  * @param FileSyncKey $key
  */
 protected static function export(entry $entry, StorageProfile $externalStorage, FileSyncKey $key, $force = false)
 {
     /* @var $fileSync FileSync */
     list($fileSync, $local) = kFileSyncUtils::getReadyFileSyncForKey($key, true, false);
     if (!$fileSync || $fileSync->getFileType() == FileSync::FILE_SYNC_FILE_TYPE_URL) {
         KalturaLog::info("no ready fileSync was found for key [{$key}]");
         return;
     }
     $externalFileSync = kFileSyncUtils::createPendingExternalSyncFileForKey($key, $externalStorage, $fileSync->getIsDir());
     $parent_file_sync = kFileSyncUtils::resolve($fileSync);
     $srcFileSyncPath = $parent_file_sync->getFileRoot() . $parent_file_sync->getFilePath();
     kJobsManager::addStorageExportJob(null, $entry->getId(), $entry->getPartnerId(), $externalStorage, $externalFileSync, $srcFileSyncPath, $force, $fileSync->getDc());
     return true;
 }
             continue;
         }
         if (kFileSyncUtils::getReadyExternalFileSyncForKey($key, $storageProfileId)) {
             unset($keys[$index]);
         }
         if (!kFileSyncUtils::getReadyInternalFileSyncForKey($key)) {
             echo 'file sync key does not have an internal file -' . serialize($key) . PHP_EOL;
             unset($keys[$index]);
         }
     }
     if (!count($keys)) {
         echo $entry->getId() . " - has no keys to export\n";
         continue;
     }
     foreach ($keys as $key) {
         $fileSync = kFileSyncUtils::createPendingExternalSyncFileForKey($key, $storageProfile);
         $dcFileSync = kFileSyncUtils::getReadyInternalFileSyncForKey($key);
         /* @var $dcFileSync FileSync */
         $srcFileSyncLocalPath = $dcFileSync->getFileRoot() . $dcFileSync->getFilePath();
         kJobsManager::addStorageExportJob(null, $entry->getId(), $partnerId, $storageProfile, $fileSync, $srcFileSyncLocalPath, true, $dcFileSync->getDc());
     }
     echo $entry->getId() . " - " . count($keys) . " keys exported\n\n";
     $totalExported++;
     if ($maxEntriesToExport > 0 && $totalExported >= $maxEntriesToExport) {
         echo 'Max entries limit of [' . $maxEntriesToExport . '] reached - stopping executin';
         $moreEntries = false;
         break;
     }
     usleep(100);
 }
 if (count($entries) < $curLimit) {