public function fromObject($sourceObject) { parent::fromObject($sourceObject); $this->mediaFiles = KalturaDistributionRemoteMediaFileArray::fromDbArray($sourceObject->getMediaFiles()); if (!$this->distributionProfileId) { return; } if (!$this->entryDistributionId) { return; } $distributionProfile = DistributionProfilePeer::retrieveByPK($this->distributionProfileId); if (!$distributionProfile || $distributionProfile->getStatus() != DistributionProfileStatus::ENABLED) { return; } $this->distributionProfile = KalturaDistributionProfileFactory::createKalturaDistributionProfile($distributionProfile->getProviderType()); $this->distributionProfile->fromObject($distributionProfile); $entryDistribution = EntryDistributionPeer::retrieveByPK($this->entryDistributionId); if ($entryDistribution) { $this->entryDistribution = new KalturaEntryDistribution(); $this->entryDistribution->fromObject($entryDistribution); } $providerType = $sourceObject->getProviderType(); if ($providerType) { if ($providerType == KalturaDistributionProviderType::GENERIC) { $this->providerData = new KalturaGenericDistributionJobProviderData($this); } else { $this->providerData = KalturaPluginManager::loadObject('KalturaDistributionJobProviderData', $providerType, array($this)); } $providerData = $sourceObject->getProviderData(); if ($this->providerData && $providerData && $providerData instanceof kDistributionJobProviderData) { $this->providerData->fromObject($providerData); } } }
public static function fromDbArray($arr) { $newArr = new KalturaEntryDistributionArray(); if ($arr == null) { return $newArr; } foreach ($arr as $obj) { $nObj = new KalturaEntryDistribution(); $nObj->fromObject($obj); $newArr[] = $nObj; } return $newArr; }
public static function fromDbArray($arr, KalturaDetachedResponseProfile $responseProfile = null) { $newArr = new KalturaEntryDistributionArray(); if ($arr == null) { return $newArr; } foreach ($arr as $obj) { $nObj = new KalturaEntryDistribution(); $nObj->fromObject($obj, $responseProfile); $newArr[] = $nObj; } return $newArr; }
print_r($fileTransferMgr->listDir("/pub/in")); // $fileTransferMgr->putFile($destFile, $srcFile, true); return;*/ $entry = entryPeer::retrieveByPKNoFilter($entryId); $mrss = kMrssManager::getEntryMrss($entry); file_put_contents('mrss.xml', $mrss); KalturaLog::debug("MRSS [{$mrss}]"); $distributionJobData = new KalturaDistributionSubmitJobData(); $dbDistributionProfile = DistributionProfilePeer::retrieveByPK(3); $distributionProfile = new KalturaDailymotionDistributionProfile(); $distributionProfile->fromObject($dbDistributionProfile); $distributionJobData->distributionProfileId = $distributionProfile->id; $distributionJobData->distributionProfile = $distributionProfile; $dbEntryDistribution = EntryDistributionPeer::retrieveByPK(24); $entryDistribution = new KalturaEntryDistribution(); $entryDistribution->fromObject($dbEntryDistribution); $distributionJobData->entryDistributionId = $entryDistribution->id; $distributionJobData->entryDistribution = $entryDistribution; $myp = new DailymotionDistributionProfile(); print_r($myp->validateForSubmission($dbEntryDistribution, "submit")); $providerData = new KalturaDailymotionDistributionJobProviderData($distributionJobData); $distributionJobData->providerData = $providerData; //file_put_contents('out.xml', $providerData->xml); //KalturaLog::debug("XML [$providerData->xml]"); //return; $engine = new DailymotionDistributionEngine(); $engine->submit($distributionJobData); //$xml = new KDOMDocument(); //if(!$xml->loadXML($mrss)) //{
/** * Update Entry Distribution by id * * @param int $id * @param KalturaEntryDistribution $entryDistribution * @return KalturaEntryDistribution */ function update($id, KalturaEntryDistribution $entryDistribution) { $kparams = array(); $this->client->addParam($kparams, "id", $id); $this->client->addParam($kparams, "entryDistribution", $entryDistribution->toParams()); $this->client->queueServiceActionCall("contentdistribution_entrydistribution", "update", $kparams); if ($this->client->isMultiRequest()) { return $this->client->getMultiRequestResult(); } $resultObject = $this->client->doQueue(); $this->client->throwExceptionIfError($resultObject); $this->client->validateObjectType($resultObject, "KalturaEntryDistribution"); return $resultObject; }
/** * Retries last submit action * * @action retrySubmit * @param int $id * @return KalturaEntryDistribution * @throws ContentDistributionErrors::ENTRY_DISTRIBUTION_NOT_FOUND * @throws ContentDistributionErrors::DISTRIBUTION_PROFILE_NOT_FOUND * @throws ContentDistributionErrors::DISTRIBUTION_PROFILE_DISABLED */ function retrySubmitAction($id) { $dbEntryDistribution = EntryDistributionPeer::retrieveByPK($id); if (!$dbEntryDistribution) { throw new KalturaAPIException(ContentDistributionErrors::ENTRY_DISTRIBUTION_NOT_FOUND, $id); } $distributionProfileId = $dbEntryDistribution->getDistributionProfileId(); $dbDistributionProfile = DistributionProfilePeer::retrieveByPK($distributionProfileId); if (!$dbDistributionProfile) { throw new KalturaAPIException(ContentDistributionErrors::DISTRIBUTION_PROFILE_NOT_FOUND, $distributionProfileId); } if ($dbDistributionProfile->getStatus() == DistributionProfileStatus::DISABLED) { throw new KalturaAPIException(ContentDistributionErrors::DISTRIBUTION_PROFILE_DISABLED, $entryDistribution->distributionProfileId); } switch ($dbEntryDistribution->getStatus()) { case EntryDistributionStatus::QUEUED: case EntryDistributionStatus::SUBMITTING: case EntryDistributionStatus::ERROR_SUBMITTING: kContentDistributionManager::submitAddEntryDistribution($dbEntryDistribution, $dbDistributionProfile, false); $dbEntryDistribution->reload(); break; case EntryDistributionStatus::UPDATING: case EntryDistributionStatus::ERROR_UPDATING: kContentDistributionManager::submitUpdateEntryDistribution($dbEntryDistribution, $dbDistributionProfile); $dbEntryDistribution->reload(); break; case EntryDistributionStatus::DELETING: case EntryDistributionStatus::ERROR_DELETING: kContentDistributionManager::submitDeleteEntryDistribution($dbEntryDistribution, $dbDistributionProfile); $dbEntryDistribution->reload(); break; case EntryDistributionStatus::PENDING: case EntryDistributionStatus::READY: case EntryDistributionStatus::DELETED: break; } $entryDistribution = new KalturaEntryDistribution(); $entryDistribution->fromObject($dbEntryDistribution, $this->getResponseProfile()); return $entryDistribution; }