/** * @return array<string, string> in the form array[pluginName] = pluginClass */ public static function getPlugins() { if (count(self::$plugins)) { return self::$plugins; } if (!kConf::hasParam("default_plugins")) { return array(); } $plugins = kConf::get("default_plugins"); if (!is_array($plugins)) { return array(); } self::$plugins = array(); foreach ($plugins as $pluginClass) { if (!class_exists($pluginClass)) { KalturaLog::err("Plugin [{$pluginClass}] class not found."); continue; } // TODO remove call_user_func after moving to php 5.3 $pluginName = call_user_func(array($pluginClass, 'getPluginName')); // $pluginName = $pluginClass::getPluginName(); self::$plugins[$pluginName] = $pluginClass; } return self::$plugins; }
/** * @return array<string, string> in the form array[pluginName] = pluginClass */ public static function getPlugins() { if (count(self::$plugins)) { return self::$plugins; } self::init(); if (!file_exists(self::$configFile)) { return array(); } $pluginNames = file(self::$configFile); self::$plugins = array(); foreach ($pluginNames as $pluginName) { $pluginName = trim($pluginName, " \t\r\n"); if (!preg_match('/^[A-Z][\\w\\d]+$/', $pluginName)) { continue; } $pluginClass = $pluginName . 'Plugin'; if (!class_exists($pluginClass)) { KalturaLog::err("Plugin [{$pluginName}] not found with class [{$pluginClass}]."); continue; } $pluginName = $pluginClass::getPluginName(); self::$plugins[$pluginName] = $pluginClass; } return self::$plugins; }