/** * request conversion for all entries that doesnt have the required flavor param * returns a comma-separated ids of conversion jobs * * @action requestConversion * @param string $feedId * @return string */ public function requestConversionAction($feedId) { // find entry ids that already converted to the flavor $feedRendererWithTheFlavor = new KalturaSyndicationFeedRenderer($feedId); $feedRendererWithTheFlavor->addFlavorParamsAttachedFilter(); $entriesWithTheFlavor = $feedRendererWithTheFlavor->getEntriesIds(); // create filter of the entries that not converted $entryFilter = new entryFilter(); $entryFilter->setIdNotIn($entriesWithTheFlavor); // create feed with the new filter $feedRendererToConvert = new KalturaSyndicationFeedRenderer($feedId); $feedRendererToConvert->addFilter($entryFilter); $createdJobsIds = array(); $flavorParamsId = $feedRendererToConvert->syndicationFeed->flavorParamId; while ($entry = $feedRendererToConvert->getNextEntry()) { $originalFlavorAsset = flavorAssetPeer::retrieveOriginalByEntryId($entry->getId()); if (!is_null($originalFlavorAsset)) { $err = ""; $job = kBusinessPreConvertDL::decideAddEntryFlavor(null, $entry->getId(), $flavorParamsId, $err); if ($job && is_object($job)) { $createdJobsIds[] = $job->getId(); } } } return implode(',', $createdJobsIds); }