public function getProvider()
 {
     $genericProviderId = $this->getGenericProviderId();
     if (!$genericProviderId) {
         return null;
     }
     return GenericDistributionProviderPeer::retrieveByPK($genericProviderId);
 }
 /**
  * Add new Generic Distribution Provider Action
  * 
  * @action add
  * @param KalturaGenericDistributionProviderAction $genericDistributionProviderAction
  * @return KalturaGenericDistributionProviderAction
  * @throws ContentDistributionErrors::GENERIC_DISTRIBUTION_PROVIDER_NOT_FOUND
  */
 function addAction(KalturaGenericDistributionProviderAction $genericDistributionProviderAction)
 {
     $genericDistributionProviderAction->validatePropertyNotNull("genericDistributionProviderId");
     $dbGenericDistributionProvider = GenericDistributionProviderPeer::retrieveByPK($genericDistributionProviderAction->genericDistributionProviderId);
     if (!$dbGenericDistributionProvider) {
         throw new KalturaAPIException(ContentDistributionErrors::GENERIC_DISTRIBUTION_PROVIDER_NOT_FOUND, $genericDistributionProviderAction->genericDistributionProviderId);
     }
     $dbGenericDistributionProviderAction = new GenericDistributionProviderAction();
     $genericDistributionProviderAction->toInsertableObject($dbGenericDistributionProviderAction);
     $dbGenericDistributionProviderAction->setPartnerId($dbGenericDistributionProvider->getPartnerId());
     $dbGenericDistributionProviderAction->setStatus(GenericDistributionProviderStatus::ACTIVE);
     $dbGenericDistributionProviderAction->save();
     $genericDistributionProviderAction = new KalturaGenericDistributionProviderAction();
     $genericDistributionProviderAction->fromObject($dbGenericDistributionProviderAction);
     return $genericDistributionProviderAction;
 }
 /**
  * Delete Generic Distribution Provider by id
  * 
  * @action delete
  * @param int $id
  * @throws ContentDistributionErrors::GENERIC_DISTRIBUTION_PROVIDER_NOT_FOUND
  * @throws ContentDistributionErrors::CANNOT_DELETE_DEFAULT_DISTRIBUTION_PROVIDER
  */
 function deleteAction($id)
 {
     $dbGenericDistributionProvider = GenericDistributionProviderPeer::retrieveByPK($id);
     if (!$dbGenericDistributionProvider) {
         throw new KalturaAPIException(ContentDistributionErrors::GENERIC_DISTRIBUTION_PROVIDER_NOT_FOUND, $id);
     }
     if ($this->getPartnerId() != Partner::ADMIN_CONSOLE_PARTNER_ID && $dbGenericDistributionProvider->getIsDefault()) {
         throw new KalturaAPIException(ContentDistributionErrors::CANNOT_DELETE_DEFAULT_DISTRIBUTION_PROVIDER);
     }
     $dbGenericDistributionProvider->setStatus(GenericDistributionProviderStatus::DELETED);
     $dbGenericDistributionProvider->save();
 }