/** * Constructor for the DyanmicModuleConfigurationHandler * @param string $configurationFilePath */ public function __construct($configurationFilePath) { //Save the file path $this->configurationFilePath = $configurationFilePath; //Use the base class the lad the configuration $xml = parent::SaveOpenConfigurationFile($configurationFilePath, "modules"); //loop through all the modules that have been loaded so far foreach ($xml->modules->module as $module) { //Get the name of the module $moduleName = (string) $module["name"]; //Set up an array to old the module spacific configuration $configuration = array(); //Loop through the modules configuration properties foreach ($module->properties->property as $property) { //Get the property name $name = (string) $property["name"]; //Get the property type $type = (string) $property["type"]; //Get the property description $description = (string) $property["description"]; //Get the property value if there is one $value = (string) $property["value"]; //Create a new strongly typed configuration element from the data $configEelement = new \Swiftriver\Core\ObjectModel\ConfigurationElement($name, $type, $description, $value); //Add the element to the configuration array $configuration[$name] = $configEelement; } //Add the configuration elements array to the modules collection $this->Configuration[$moduleName] = $configuration; } }
/** * The constructor for the CoreConfigurationHandler * @param string $configurationFilePath */ public function __construct($configurationFilePath) { //use the base calss to open the config file $xml = parent::SaveOpenConfigurationFile($configurationFilePath, "properties"); //extract the name element and store it $this->Name = (string) $xml["name"]; //loop around the properties foreach ($xml->properties->property as $property) { //swiftch on the name of the property switch ((string) $property["name"]) { case "ModulesDirectory": $this->ModulesDirectory = dirname(__FILE__) . "/../.." . $property["value"]; break; case "CachingDirectory": $this->CachingDirectory = dirname(__FILE__) . "/../.." . $property["value"]; break; case "BaseLanguageCode": $this->BaseLanguageCode = (string) $property["value"]; break; case "EnableDebugLogging": $value = (string) $property["value"]; $this->EnableDebugLogging = $value === "true"; break; } } }
/** * Constructor for the PreProcessingStepsConfigurationHandler * @param string $configurationFilePath */ public function __construct($configurationFilePath) { //Set the file name $this->configurationFilePath = $configurationFilePath; //Use the base class to open the xml $xml = parent::SaveOpenConfigurationFile($configurationFilePath, "preProcessingSteps"); //Set the xml to class level $this->xml = $xml; //Set up the class level array to hold the pre processor configuration $this->PreProcessingSteps = array(); //loop around the xml elements and add the confi t the array foreach ($xml->preProcessingSteps->step as $step) { $this->PreProcessingSteps[] = new \Swiftriver\Core\ObjectModel\PreProcessingStepEntry((string) $step["name"], (string) $step["className"], (string) $step["filePath"]); } }
/** * Constructor for the DALConfigurationHandler * @param string $configurationFilePath */ public function __construct($configurationFilePath) { //Use the base class to read in the configuration $xml = parent::SaveOpenConfigurationFile($configurationFilePath, "properties"); //loop through the configuration properties foreach ($xml->properties->property as $property) { //Switch on the property name switch ((string) $property["name"]) { case "DataContextType": $this->DataContextType = $property["value"]; break; case "DataContextPath": $this->DataContextDirectory = $property["value"]; break; } } }
/** * Constructior for the EventDistribution System * @param string $configurationFilePath */ public function __construct($configurationFilePath) { //Set the file path $this->configurationFilePath = $configurationFilePath; //Use the base class to open the config file $xml = parent::SaveOpenConfigurationFile($configurationFilePath, "eventHandlers"); //Set up the array to hold the event handlers $this->EventHandlers = array(); //Loop around the configuration elements foreach ($xml->eventHandlers->handler as $handler) { //Get all the values from the configuration element $name = (string) $handler["name"]; $classname = (string) $handler["className"]; $handler = (string) $handler["filePath"]; //Create a new EventHandlerEntry object $config = new \Swiftriver\Core\ObjectModel\EventHandlerEntry($name, $classname, $handler); //Add it to the array $this->EventHandlers[] = $config; } }