Source for file GenericConfigurator.php
Documentation is available at GenericConfigurator.php
* @copyright Copyright 2005-2010 RedIRIS, http://www.rediris.es/
* This file is part of phpPoA2.
* phpPoA2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* phpPoA2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with phpPoA2. If not, see <http://www.gnu.org/licenses/>.
* @license http://www.gnu.org/licenses/gpl.html GNU General Public License
* @author Jaime Perez <jaime.perez@rediris.es>
* Generic configuration class.
protected $cfg = array();
* @param file The file which stores the configuration.
* @param site The section of the configuration that applies for the current site.
* @throws PoAException if any error occurs.
* Read the configuration from the specified file and section.
* @param file The file which stores the configuration.
* @param site The section of the configuration that applies for the current site.
* @throws PoAException if any error occurs.
// determine the configuration variable name by means of this class name
$set = eval ("return isset(\$". $name. ");");
$ev = eval ("return array_merge(\$this->cfg, $". $name. ");");
$ev = eval ("return @array_merge(\$this->cfg, $". $name. "[\"". $site. "\"]);");
unset ($this->cfg[$site]);
* Check all mandatory attributes are set.
* @param mandatory Optional. An array of mandatory attributes that should be searched within the current configuration.
* @return boolean true if success.
* @throws PoAException if any error occurs.
public function validate($mandatory = null) {
if ($mandatory) $options = $mandatory;
// validate mandatory params
foreach ($options as $option) {
if (!isset ($this->cfg[$option])) {
|