当前位置: 首页>>代码示例>>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;未经允许,请勿转载。