當前位置: 首頁>>代碼示例>>PHP>>正文


PHP kFileSyncUtils::dir_get_files方法代碼示例

本文整理匯總了PHP中kFileSyncUtils::dir_get_files方法的典型用法代碼示例。如果您正苦於以下問題:PHP kFileSyncUtils::dir_get_files方法的具體用法?PHP kFileSyncUtils::dir_get_files怎麽用?PHP kFileSyncUtils::dir_get_files使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在kFileSyncUtils的用法示例。


在下文中一共展示了kFileSyncUtils::dir_get_files方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: handleConvertLiveSegmentFinished

 /**
  * @param BatchJob $dbBatchJob
  * @param kConvertLiveSegmentJobData $data
  * @return BatchJob
  */
 public static function handleConvertLiveSegmentFinished(BatchJob $dbBatchJob, kConvertLiveSegmentJobData $data)
 {
     $liveEntry = entryPeer::retrieveByPKNoFilter($dbBatchJob->getEntryId());
     /* @var $liveEntry LiveEntry */
     if (!$liveEntry) {
         KalturaLog::err("Live entry [" . $dbBatchJob->getEntryId() . "] not found");
         return $dbBatchJob;
     }
     $recordedEntry = entryPeer::retrieveByPKNoFilter($liveEntry->getRecordedEntryId());
     if (!$recordedEntry) {
         KalturaLog::err("Recorded entry [" . $liveEntry->getRecordedEntryId() . "] not found");
         return $dbBatchJob;
     }
     $asset = assetPeer::retrieveByIdNoFilter($data->getAssetId());
     /* @var $asset liveAsset */
     if (!$asset) {
         KalturaLog::err("Live asset [" . $data->getAssetId() . "] not found");
         return $dbBatchJob;
     }
     $keyType = liveAsset::FILE_SYNC_ASSET_SUB_TYPE_LIVE_PRIMARY;
     if ($data->getMediaServerIndex() == MediaServerIndex::SECONDARY) {
         $keyType = liveAsset::FILE_SYNC_ASSET_SUB_TYPE_LIVE_SECONDARY;
     }
     $key = $asset->getSyncKey($keyType);
     $baseName = $asset->getEntryId() . '_' . $asset->getId() . '.ts';
     kFileSyncUtils::moveFromFileToDirectory($key, $data->getDestFilePath(), $baseName);
     if ($data->getMediaServerIndex() == MediaServerIndex::SECONDARY) {
         return $dbBatchJob;
     }
     $files = kFileSyncUtils::dir_get_files($key, false);
     if (count($files) > 1) {
         // find replacing entry id
         $replacingEntry = kFlowHelper::getReplacingEntry($recordedEntry, $asset);
         if (is_null($replacingEntry)) {
             KalturaLog::err('Failed to retrieve replacing entry');
             return $dbBatchJob;
         }
         $flavorParams = assetParamsPeer::retrieveByPKNoFilter($asset->getFlavorParamsId());
         if (is_null($flavorParams)) {
             KalturaLog::err('Failed to retrieve asset params');
             return $dbBatchJob;
         }
         // create asset
         $replacingAsset = assetPeer::getNewAsset(assetType::FLAVOR);
         $replacingAsset->setPartnerId($replacingEntry->getPartnerId());
         $replacingAsset->setEntryId($replacingEntry->getId());
         $replacingAsset->setStatus(asset::FLAVOR_ASSET_STATUS_QUEUED);
         $replacingAsset->setFlavorParamsId($flavorParams->getId());
         $replacingAsset->setFromAssetParams($flavorParams);
         if ($flavorParams->hasTag(assetParams::TAG_SOURCE)) {
             $replacingAsset->setIsOriginal(true);
         }
         $replacingAsset->save();
         $job = kJobsManager::addConcatJob($dbBatchJob, $replacingAsset, $files);
     }
     return $dbBatchJob;
 }
開發者ID:GElkayam,項目名稱:server,代碼行數:62,代碼來源:kFlowHelper.php

示例2: addConvertLiveSegmentJob

 /**
  * @param BatchJob $parentJob
  * @param liveAsset $asset
  * @param int $mediaServerIndex
  * @param string $filePath
  * @param float $endTime
  */
 public static function addConvertLiveSegmentJob(BatchJob $parentJob = null, liveAsset $asset, $mediaServerIndex, $filePath, $endTime)
 {
     $keyType = liveAsset::FILE_SYNC_ASSET_SUB_TYPE_LIVE_PRIMARY;
     if ($mediaServerIndex == MediaServerIndex::SECONDARY) {
         $keyType = liveAsset::FILE_SYNC_ASSET_SUB_TYPE_LIVE_SECONDARY;
     }
     $key = $asset->getSyncKey($keyType);
     $files = array();
     if (kFileSyncUtils::fileSync_exists($key)) {
         $files = kFileSyncUtils::dir_get_files($key, false);
     }
     $jobData = new kConvertLiveSegmentJobData();
     $jobData->setEntryId($asset->getEntryId());
     $jobData->setAssetId($asset->getId());
     $jobData->setMediaServerIndex($mediaServerIndex);
     $jobData->setEndTime($endTime);
     $jobData->setSrcFilePath($filePath);
     $jobData->setFileIndex(count($files));
     $batchJob = null;
     if ($parentJob) {
         $batchJob = $parentJob->createChild(BatchJobType::CONVERT_LIVE_SEGMENT);
     } else {
         $batchJob = new BatchJob();
         $batchJob->setEntryId($asset->getEntryId());
         $batchJob->setPartnerId($asset->getPartnerId());
     }
     $batchJob->setObjectId($asset->getEntryId());
     $batchJob->setObjectType(BatchJobObjectType::ENTRY);
     return self::addJob($batchJob, $jobData, BatchJobType::CONVERT_LIVE_SEGMENT);
 }
開發者ID:ace3535,項目名稱:server,代碼行數:37,代碼來源:kJobsManager.php

示例3: handleConvertLiveSegmentFinished

 /**
  * @param BatchJob $dbBatchJob
  * @param kConvertLiveSegmentJobData $data
  * @return BatchJob
  */
 public static function handleConvertLiveSegmentFinished(BatchJob $dbBatchJob, kConvertLiveSegmentJobData $data)
 {
     $liveEntry = entryPeer::retrieveByPKNoFilter($dbBatchJob->getEntryId());
     /* @var $liveEntry LiveEntry */
     if (!$liveEntry) {
         KalturaLog::err("Live entry [" . $dbBatchJob->getEntryId() . "] not found");
         return $dbBatchJob;
     }
     $recordedEntry = entryPeer::retrieveByPKNoFilter($liveEntry->getRecordedEntryId());
     if (!$recordedEntry) {
         KalturaLog::err("Recorded entry [" . $liveEntry->getRecordedEntryId() . "] not found");
         return $dbBatchJob;
     }
     $asset = assetPeer::retrieveByIdNoFilter($data->getAssetId());
     /* @var $asset liveAsset */
     if (!$asset) {
         KalturaLog::err("Live asset [" . $data->getAssetId() . "] not found");
         return $dbBatchJob;
     }
     $keyType = liveAsset::FILE_SYNC_ASSET_SUB_TYPE_LIVE_PRIMARY;
     if ($data->getMediaServerIndex() == MediaServerIndex::SECONDARY) {
         $keyType = liveAsset::FILE_SYNC_ASSET_SUB_TYPE_LIVE_SECONDARY;
     }
     $key = $asset->getSyncKey($keyType);
     $baseName = $asset->getEntryId() . '_' . $asset->getId() . '.ts';
     kFileSyncUtils::moveFromFileToDirectory($key, $data->getDestFilePath(), $baseName);
     if ($data->getMediaServerIndex() == MediaServerIndex::SECONDARY) {
         return $dbBatchJob;
     }
     $files = kFileSyncUtils::dir_get_files($key, false);
     // If we have less files on disk than what we should have it means the output file will be missing segments.
     // don't generate it, and the next concat will do the work for us.
     if (count($files) != $data->getFileIndex() + 1) {
         KalturaLog::warning('number of segments on disk ' . count($files) . ' is not equal to segment index ' . $data->getFileIndex() . ' - not running the concat job');
         return $dbBatchJob;
     }
     if (count($files) > 1) {
         // find replacing entry id
         $replacingEntry = self::getReplacingEntry($recordedEntry, $asset);
         if (is_null($replacingEntry)) {
             KalturaLog::err("Failed to get replacing entry");
         }
         $flavorParams = assetParamsPeer::retrieveByPKNoFilter($asset->getFlavorParamsId());
         if (is_null($flavorParams)) {
             KalturaLog::err('Failed to retrieve asset params');
             return $dbBatchJob;
         }
         // create asset
         $replacingAsset = assetPeer::getNewAsset(assetType::FLAVOR);
         $replacingAsset->setPartnerId($replacingEntry->getPartnerId());
         $replacingAsset->setEntryId($replacingEntry->getId());
         $replacingAsset->setStatus(asset::FLAVOR_ASSET_STATUS_QUEUED);
         $replacingAsset->setFlavorParamsId($flavorParams->getId());
         $replacingAsset->setFromAssetParams($flavorParams);
         if ($flavorParams->hasTag(assetParams::TAG_SOURCE)) {
             $replacingAsset->setIsOriginal(true);
         }
         $replacingAsset->save();
         $job = kJobsManager::addConcatJob($dbBatchJob, $replacingAsset, $files);
     }
     return $dbBatchJob;
 }
開發者ID:dozernz,項目名稱:server,代碼行數:67,代碼來源:kFlowHelper.php


注:本文中的kFileSyncUtils::dir_get_files方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。