public function shouldConsumeChangedEvent(BaseObject $object, array $modifiedColumns)
 {
     if ($object instanceof flavorAsset && in_array(assetPeer::STATUS, $modifiedColumns) && $object->isLocalReadyStatus() && $object->hasTag(assetParams::TAG_ISM_MANIFEST) && $object->getentry()->getStatus() != entryStatus::DELETED && !$object->getentry()->getReplacingEntryId()) {
         return true;
     }
     return false;
 }
 public function objectAdded(BaseObject $object, BatchJob $raisedJob = null)
 {
     $entry = $object->getentry();
     if ($entry->getType() == entryType::DOCUMENT) {
         if ($entry->getConversionQuality() > 0) {
             $syncKey = $object->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
             $path = kFileSyncUtils::getLocalFilePathForKey($syncKey);
             kJobsManager::addConvertProfileJob($raisedJob, $entry, $object->getId(), $path);
         } else {
             // only for documents entry, make the source ready since no conversion profile will be executed by default
             $object->setFlavorParamsId(flavorParams::SOURCE_FLAVOR_ID);
             $object->setStatusLocalReady();
             $object->save();
             $entry->setStatusReady();
             $entry->save();
         }
     }
     return true;
 }
 public function objectDeleted(BaseObject $object, BatchJob $raisedJob = null)
 {
     /* @var $object CaptionAsset */
     // delete them one by one to raise the erased event
     $captionAssetItems = CaptionAssetItemPeer::retrieveByAssetId($object->getId());
     foreach ($captionAssetItems as $captionAssetItem) {
         /* @var $captionAssetItem CaptionAssetItem */
         $captionAssetItem->delete();
     }
     // updates entry on order to trigger reindexing
     $entry = $object->getentry();
     $entry->setUpdatedAt(time());
     $entry->save();
 }
示例#4
0
 public function objectAdded(BaseObject $object, BatchJob $raisedJob = null)
 {
     $entry = $object->getentry();
     if ($object->getStatus() == asset::FLAVOR_ASSET_STATUS_QUEUED || $object->getStatus() == asset::FLAVOR_ASSET_STATUS_IMPORTING) {
         if (!$object instanceof flavorAsset) {
             $object->setStatus(asset::FLAVOR_ASSET_STATUS_READY);
             $object->save();
         } elseif ($object->getIsOriginal()) {
             if ($entry->getType() == entryType::MEDIA_CLIP) {
                 $syncKey = $object->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
                 if (kFileSyncUtils::fileSync_exists($syncKey)) {
                     // Get the asset fileSync.
                     // For URL typed sync - assume remote and use the relative file path.
                     // For the other types - use the ordinary kFileSyncUtils::getLocalFilePathForKey.
                     $fsArr = kFileSyncUtils::getReadyFileSyncForKey($syncKey, true, false);
                     $fs = $fsArr[0];
                     if ($fs->getFileType() == FileSync::FILE_SYNC_FILE_TYPE_URL) {
                         $path = $fs->getFilePath();
                     } else {
                         $path = kFileSyncUtils::getLocalFilePathForKey($syncKey);
                     }
                     kJobsManager::addConvertProfileJob($raisedJob, $entry, $object->getId(), $path);
                 }
             }
         } else {
             $object->setStatus(asset::FLAVOR_ASSET_STATUS_VALIDATING);
             $object->save();
         }
     }
     if ($object->getStatus() == asset::FLAVOR_ASSET_STATUS_READY && $object instanceof thumbAsset) {
         if ($object->getFlavorParamsId()) {
             kFlowHelper::generateThumbnailsFromFlavor($object->getEntryId(), $raisedJob, $object->getFlavorParamsId());
         } else {
             if ($object->hasTag(thumbParams::TAG_DEFAULT_THUMB)) {
                 kBusinessConvertDL::setAsDefaultThumbAsset($object);
             }
         }
         return true;
     }
     if ($object->getIsOriginal() && $entry->getStatus() == entryStatus::NO_CONTENT) {
         $entry->setStatus(entryStatus::PENDING);
         $entry->save();
     }
     return true;
 }
示例#5
0
 /**
  * @param BaseObject $object
  * @return bool true if should continue to the next consumer
  */
 public function objectAdded(BaseObject $object)
 {
     if ($object instanceof flavorAsset && $object->getIsOriginal()) {
         $entry = $object->getentry();
         if ($entry->getType() == entryType::MEDIA_CLIP) {
             $syncKey = $object->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
             $path = kFileSyncUtils::getLocalFilePathForKey($syncKey);
             kJobsManager::addConvertProfileJob(null, $entry, $object->getId(), $path);
         }
     }
     return true;
 }