public function __construct($basePath = 'protected', $cacheConfig = true, $configType = self::CONFIG_TYPE_XML)
{
// register application as a singleton
Prado::setApplication($this);
$this->setConfigurationType($configType);
$this->resolvePaths($basePath);
if ($cacheConfig) {
$this->_cacheFile = $this->_runtimePath . DIRECTORY_SEPARATOR . self::CONFIGCACHE_FILE;
}
// generates unique ID by hashing the runtime path
$this->_uniqueID = md5($this->_runtimePath);
$this->_parameters = new \Prado\Collections\TMap();
$this->_services = array($this->getPageServiceID() => array('TPageService', array(), null));
Prado::setPathOfAlias('Application', $this->_basePath);
}