コード例 #1
0
 public function parseXmls($configFiles)
 {
     $configFile = array_pop($configFiles);
     if (file_exists($configFile)) {
         if (!(is_file($configFile) && is_readable($configFile))) {
             throw new sfException('Configuration file ' . $configFile . ' is present but not readable or not a regular file.');
         }
     }
     $config = new sfDynamicsConfigDefinition(simplexml_load_file($configFile));
     foreach (sfContext::getInstance()->getConfiguration()->getPluginPaths() as $pluginPath) {
         $pluginName = basename($pluginPath);
         $pluginConfigFile = $pluginPath . '/config/dynamics-plugin.xml';
         if (file_exists($pluginConfigFile)) {
             if (!is_file($pluginConfigFile) || !is_readable($pluginConfigFile)) {
                 throw new sfConfigurationException('Dynamics extension file exists but is not a regular file or is not readable.');
             }
             $config->merge(new sfDynamicsPluginConfigDefinition(simplexml_load_file($pluginConfigFile), $pluginName, $pluginPath));
         }
     }
     return $config;
 }
 public function __construct($xml = null, $pluginName, $pluginPath)
 {
     $this->pluginName = $pluginName;
     $this->pluginPath = $pluginPath;
     parent::__construct($xml);
 }