API Make Object::config use late static binding

Can now be used in instance scope, like:
  $this->config()->db
and in static scope, like:
  Page::config()->db
This commit is contained in:
Hamish Friedlander 2013-02-27 13:33:36 +13:00
parent bea1b9002d
commit 904fd2d5dc

View File

@ -52,23 +52,12 @@ abstract class Object {
*/
public $class;
/**
* @todo Set this via dependancy injection? Can't call it $config, because too many clashes with form elements etc
* @var Config_ForClass
*/
private $_config_forclass = null;
/**
* Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).
* @return Config_ForClass|null
*/
public function config() {
if (!$this->_config_forclass) {
$this->_config_forclass = Config::inst()->forClass($this->class);
}
return $this->_config_forclass;
static public function config() {
return Config::inst()->forClass(get_called_class());
}
/**