/**
  * @param BatchJob $dbBatchJob
  * @param kDistributionJobData $data
  * @return BatchJob
  */
 public static function onDistributionJobFinished(BatchJob $dbBatchJob, kDistributionJobData $data)
 {
     $entryDistribution = EntryDistributionPeer::retrieveByPK($data->getEntryDistributionId());
     if (!$entryDistribution) {
         KalturaLog::err("Entry distribution [" . $data->getEntryDistributionId() . "] not found");
         return $dbBatchJob;
     }
     $providerData = $data->getProviderData();
     if ($providerData instanceof kUverseDistributionJobProviderData) {
         $entryDistribution->putInCustomData(UverseEntryDistributionCustomDataField::REMOTE_ASSET_URL, $providerData->getRemoteAssetUrl());
         $entryDistribution->putInCustomData(UverseEntryDistributionCustomDataField::REMOTE_ASSET_FILE_NAME, $providerData->getRemoteAssetFileName());
         $entryDistribution->save();
     }
     return $dbBatchJob;
 }
 /**
  * @param BatchJob $dbBatchJob
  * @param kDistributionJobData $data
  * @param BatchJob $twinJob
  * @return BatchJob
  */
 public static function onDistributionJobFinished(BatchJob $dbBatchJob, kDistributionJobData $data, BatchJob $twinJob = null)
 {
     $entryDistribution = EntryDistributionPeer::retrieveByPK($data->getEntryDistributionId());
     if (!$entryDistribution) {
         KalturaLog::err("Entry distribution [" . $data->getEntryDistributionId() . "] not found");
         return $dbBatchJob;
     }
     $providerData = $data->getProviderData();
     if ($providerData instanceof kAttUverseDistributionJobProviderData) {
         KalturaLog::debug('Updating AttUverse job provider data in entry distribution custom data');
         $entryDistribution->putInCustomData(AttUverseEntryDistributionCustomDataField::REMOTE_ASSET_FILE_URLS, $providerData->getRemoteAssetFileUrls());
         $entryDistribution->putInCustomData(AttUverseEntryDistributionCustomDataField::REMOTE_THUMBNAIL_FILE_URLS, $providerData->getRemoteThumbnailFileUrls());
         $entryDistribution->save();
     }
     return $dbBatchJob;
 }
 /**
  * @param BatchJob $dbBatchJob
  * @param kDistributionJobData $data
  * @param BatchJob $twinJob
  * @return BatchJob
  */
 public static function onDistributionJobUpdatedAlmostDone(BatchJob $dbBatchJob, kDistributionJobData $data, BatchJob $twinJob = null)
 {
     $entryDistribution = EntryDistributionPeer::retrieveByPK($data->getEntryDistributionId());
     if (!$entryDistribution) {
         KalturaLog::err("Entry distribution [" . $data->getEntryDistributionId() . "] not found");
         return $dbBatchJob;
     }
     $providerData = $data->getProviderData();
     KalturaLog::crit('provider data type' . get_class($providerData));
     if ($providerData instanceof kYouTubeDistributionJobProviderData) {
         KalturaLog::debug('setting currentPlaylists to entryDistribution custom data');
         $entryDistribution->putInCustomData('currentPlaylists', $providerData->getCurrentPlaylists());
         $entryDistribution->save();
     }
     return $dbBatchJob;
 }
 /**
  * @param kDistributionJobData $data
  * @param $entryDistribution
  */
 protected static function saveCurrentPlaylistsToCustomData(kDistributionJobData $data, $entryDistribution)
 {
     $providerData = $data->getProviderData();
     if ($providerData instanceof kYouTubeDistributionJobProviderData) {
         $entryDistribution->putInCustomData('currentPlaylists', $providerData->getCurrentPlaylists());
         $entryDistribution->save();
     }
 }
 /**
  * @param kDistributionJobData $data
  * @param $entryDistribution
  */
 protected static function saveCurrentPlaylistsToCustomData(kDistributionJobData $data, $entryDistribution)
 {
     $providerData = $data->getProviderData();
     KalturaLog::debug('provider data type' . get_class($providerData));
     if ($providerData instanceof kYouTubeDistributionJobProviderData) {
         KalturaLog::debug('setting currentPlaylists to entryDistribution custom data');
         $entryDistribution->putInCustomData('currentPlaylists', $providerData->getCurrentPlaylists());
         $entryDistribution->save();
     }
 }