/** * Register a __ConfigurationProperty in cache for quickly access without know the route/level where the property * * @param __ConfigurationProperty $property */ protected function registerProperty(__ConfigurationProperty &$property) { $property_name = $property->getName(); if (!key_exists($property_name, $this->_registered_properties)) { $this->_registered_properties[$property->getName()] =& $property; __ConfigurationValueResolver::addSettingValue($property->getName(), $property->getContent()); } else { if (!is_array($this->_registered_properties[$property_name])) { $stored_property =& $this->_registered_properties[$property_name]; unset($this->_registered_properties[$property_name]); $this->_registered_properties[$property_name] = array($stored_property); } $this->_registered_properties[$property_name][] =& $property; } }