protected function updatedImportFailed(BatchJob $dbBatchJob, kDropFolderImportJobData $data, BatchJob $twinJob = null) { // set drop folder file status to ERROR_DOWNLOADING $dropFolderFile = DropFolderFilePeer::retrieveByPK($data->getDropFolderFileId()); $dropFolderFile->setStatus(DropFolderFileStatus::ERROR_DOWNLOADING); $dropFolderFile->setErrorCode(DropFolderFileErrorCode::ERROR_DOWNLOADING_FILE); $dropFolderFile->setErrorDescription('Error while downloading file'); $dropFolderFile->save(); return $dbBatchJob; }
private function onImportJobStatusUpdated(BatchJob $dbBatchJob, kDropFolderImportJobData $data) { $dropFolderFile = DropFolderFilePeer::retrieveByPK($data->getDropFolderFileId()); if (!$dropFolderFile) { return; } switch ($dbBatchJob->getStatus()) { case BatchJob::BATCHJOB_STATUS_FINISHED: $newStatus = DropFolderFileStatus::HANDLED; $dropFolder = DropFolderPeer::retrieveByPK($dropFolderFile->getDropFolderId()); if ($dropFolder && $dropFolder->getFileDeletePolicy() == DropFolderFileDeletePolicy::AUTO_DELETE_WHEN_ENTRY_IS_READY) { // Shift the state to PROCESSING until the associated entry will reach the READY (or ERROR_CONVERTING) state KalturaLog::info("Shifting drop folder file id [{$dropFolderFile->getId()}] from status [{$dropFolderFile->getStatus()}] to PROCESSING due to AUTO_DELETE_WHEN_ENTRY_IS_READY policy"); $newStatus = DropFolderFileStatus::PROCESSING; } $dropFolderFile->setStatus($newStatus); $dropFolderFile->save(); break; case BatchJob::BATCHJOB_STATUS_FAILED: case BatchJob::BATCHJOB_STATUS_FATAL: $this->setFileError($dropFolderFile, DropFolderFileStatus::ERROR_DOWNLOADING, DropFolderFileErrorCode::ERROR_DOWNLOADING_FILE, DropFolderPlugin::ERROR_DOWNLOADING_FILE_MESSAGE); break; } }