public static function loadObject($baseClass, $enumValue, array $constructorArgs = null) { if ($baseClass == 'ISyncableFile' && $enumValue == self::getEmailNotificationFileSyncObjectTypeCoreValue(EmailNotificationFileSyncObjectType::EMAIL_NOTIFICATION_TEMPLATE) && isset($constructorArgs['objectId'])) { return EventNotificationTemplatePeer::retrieveTypeByPK(self::getEmailNotificationTemplateTypeCoreValue(EmailNotificationTemplateType::EMAIL), $constructorArgs['objectId']); } if ($baseClass == 'KEmailNotificationRecipientEngine') { list($recipientJobData, $kClient) = $constructorArgs; switch ($enumValue) { case KalturaEmailNotificationRecipientProviderType::CATEGORY: return new KEmailNotificationCategoryRecipientEngine($recipientJobData, $kClient); break; case KalturaEmailNotificationRecipientProviderType::STATIC_LIST: return new KEmailNotificationStaticRecipientEngine($recipientJobData, $kClient); break; case KalturaEmailNotificationRecipientProviderType::USER: return new KEmailNotificationUserRecipientEngine($recipientJobData, $kClient); break; } } $class = self::getObjectClass($baseClass, $enumValue); if ($class) { if (is_array($constructorArgs)) { $reflect = new ReflectionClass($class); return $reflect->newInstanceArgs($constructorArgs); } return new $class(); } return null; }
public static function loadObject($baseClass, $enumValue, array $constructorArgs = null) { if ($baseClass == 'ISyncableFile' && $enumValue == self::getHttpNotificationFileSyncObjectTypeCoreValue(HttpNotificationFileSyncObjectType::HTTP_NOTIFICATION_TEMPLATE) && isset($constructorArgs['objectId'])) { return EventNotificationTemplatePeer::retrieveTypeByPK(self::getHttpNotificationTemplateTypeCoreValue(HttpNotificationTemplateType::HTTP), $constructorArgs['objectId']); } $class = self::getObjectClass($baseClass, $enumValue); if ($class) { if (is_array($constructorArgs)) { $reflect = new ReflectionClass($class); return $reflect->newInstanceArgs($constructorArgs); } return new $class(); } return null; }