public function updatedJob(BatchJob $dbBatchJob) { switch ($dbBatchJob->getStatus()) { case BatchJob::BATCHJOB_STATUS_FINISHED: $data = $dbBatchJob->getData(); $kontikiFileSync = FileSyncPeer::retrieveByPK($data->getSrcFileSyncId()); /* @var $data kStorageExportJobData */ $asset = assetPeer::retrieveByFileSync($kontikiFileSync); $asset->setTags(KontikiPlugin::KONTIKI_ASSET_TAG); $asset->save(); //Get Kontiki file sync and set the external URL $kontikiFileSync->setFileRoot(""); $kontikiFileSync->setFilePath($data->getContentMoid()); $kontikiFileSync->save(); break; } return true; }
/** * @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; }