public static function loadObject($baseClass, $enumValue, array $constructorArgs = null)
 {
     if ($baseClass == 'ISyncableFile' && isset($constructorArgs['objectId'])) {
         $objectId = $constructorArgs['objectId'];
         if ($enumValue == self::getContentDistributionFileSyncObjectTypeCoreValue(ContentDistributionFileSyncObjectType::GENERIC_DISTRIBUTION_ACTION)) {
             GenericDistributionProviderActionPeer::setUseCriteriaFilter(false);
             $object = GenericDistributionProviderActionPeer::retrieveByPK($objectId);
             GenericDistributionProviderActionPeer::setUseCriteriaFilter(true);
             return $object;
         }
         if ($enumValue == self::getContentDistributionFileSyncObjectTypeCoreValue(ContentDistributionFileSyncObjectType::ENTRY_DISTRIBUTION)) {
             EntryDistributionPeer::setUseCriteriaFilter(false);
             $object = EntryDistributionPeer::retrieveByPK($objectId);
             EntryDistributionPeer::setUseCriteriaFilter(true);
             return $object;
         }
         if ($enumValue == self::getContentDistributionFileSyncObjectTypeCoreValue(ContentDistributionFileSyncObjectType::DISTRIBUTION_PROFILE)) {
             DistributionProfilePeer::setUseCriteriaFilter(false);
             $object = DistributionProfilePeer::retrieveByPK($objectId);
             DistributionProfilePeer::setUseCriteriaFilter(true);
             return $object;
         }
     }
     if ($baseClass == 'kJobData') {
         if ($enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_SUBMIT)) {
             return new kDistributionSubmitJobData();
         }
         if ($enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_UPDATE)) {
             return new kDistributionUpdateJobData();
         }
         if ($enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DELETE)) {
             return new kDistributionDeleteJobData();
         }
         if ($enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_FETCH_REPORT)) {
             return new kDistributionFetchReportJobData();
         }
         if ($enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_ENABLE)) {
             return new kDistributionEnableJobData();
         }
         if ($enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DISABLE)) {
             return new kDistributionDisableJobData();
         }
     }
     if ($baseClass == 'KalturaJobData') {
         if ($enumValue == self::getApiValue(ContentDistributionBatchJobType::DISTRIBUTION_SUBMIT) || $enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_SUBMIT)) {
             return new KalturaDistributionSubmitJobData();
         }
         if ($enumValue == self::getApiValue(ContentDistributionBatchJobType::DISTRIBUTION_UPDATE) || $enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_UPDATE)) {
             return new KalturaDistributionUpdateJobData();
         }
         if ($enumValue == self::getApiValue(ContentDistributionBatchJobType::DISTRIBUTION_DELETE) || $enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DELETE)) {
             return new KalturaDistributionDeleteJobData();
         }
         if ($enumValue == self::getApiValue(ContentDistributionBatchJobType::DISTRIBUTION_FETCH_REPORT) || $enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_FETCH_REPORT)) {
             return new KalturaDistributionFetchReportJobData();
         }
         if ($enumValue == self::getApiValue(ContentDistributionBatchJobType::DISTRIBUTION_ENABLE) || $enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_ENABLE)) {
             return new KalturaDistributionEnableJobData();
         }
         if ($enumValue == self::getApiValue(ContentDistributionBatchJobType::DISTRIBUTION_DISABLE) || $enumValue == self::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DISABLE)) {
             return new KalturaDistributionDisableJobData();
         }
     }
     return null;
 }
 /**
  * Delete Generic Distribution Provider Action by id
  * 
  * @action delete
  * @param int $id
  * @throws ContentDistributionErrors::GENERIC_DISTRIBUTION_PROVIDER_ACTION_NOT_FOUND
  */
 function deleteAction($id)
 {
     $dbGenericDistributionProviderAction = GenericDistributionProviderActionPeer::retrieveByPK($id);
     if (!$dbGenericDistributionProviderAction) {
         throw new KalturaAPIException(ContentDistributionErrors::GENERIC_DISTRIBUTION_PROVIDER_ACTION_NOT_FOUND, $id);
     }
     $dbGenericDistributionProviderAction->setStatus(GenericDistributionProviderStatus::DELETED);
     $dbGenericDistributionProviderAction->save();
 }