/** * @param BatchJob $dbBatchJob * @param kPostConvertJobData $data * @param BatchJob $twinJob * @return BatchJob */ public static function handlePostConvertFailed(BatchJob $dbBatchJob, kPostConvertJobData $data, BatchJob $twinJob = null) { KalturaLog::debug("Post Convert failed for flavor params output: " . $data->getFlavorParamsOutputId()); // get additional info from the parent job $engineType = null; $mediaInfoId = null; $parentJob = $dbBatchJob->getParentJob(); if ($parentJob) { $engineType = $parentJob->getJobSubType(); $convertJobData = $parentJob->getData(); if ($convertJobData instanceof kConvertJobData) { $mediaInfoId = $convertJobData->getMediaInfoId(); } } kBusinessPostConvertDL::handleConvertFailed($dbBatchJob, $engineType, $data->getFlavorAssetId(), $data->getFlavorParamsOutputId(), $mediaInfoId); return $dbBatchJob; }
/** * @param BatchJob $dbBatchJob * @param kStorageExportJobData $data * @return BatchJob */ public static function handleStorageExportFailed(BatchJob $dbBatchJob, kStorageExportJobData $data) { if ($dbBatchJob->getErrType() == BatchJobErrorTypes::APP && $dbBatchJob->getErrNumber() == BatchJobAppErrors::FILE_ALREADY_EXISTS) { KalturaLog::notice("remote file already exists"); return $dbBatchJob; } $fileSync = FileSyncPeer::retrieveByPK($data->getSrcFileSyncId()); if (!$fileSync) { KalturaLog::err("FileSync [" . $data->getSrcFileSyncId() . "] not found"); return $dbBatchJob; } $fileSync->setStatus(FileSync::FILE_SYNC_STATUS_ERROR); $fileSync->save(); // if an asset was exported - check if should set its status to ERROR $asset = assetPeer::retrieveByFileSync($fileSync); if ($asset && $asset->getStatus() == asset::ASSET_STATUS_EXPORTING) { $asset->setStatus(asset::ASSET_STATUS_ERROR); $asset->save(); if ($asset instanceof flavorAsset) { $flavorParamsOutput = $asset->getFlavorParamsOutput(); $flavorParamsOutputId = $flavorParamsOutput ? $flavorParamsOutput->getId() : null; $mediaInfo = mediaInfoPeer::retrieveByFlavorAssetId($asset->getId()); $mediaInfoId = $mediaInfo ? $mediaInfo->getId() : null; kBusinessPostConvertDL::handleConvertFailed($dbBatchJob, null, $asset->getId(), $flavorParamsOutputId, $mediaInfoId); } } return $dbBatchJob; }