function ThemeRegistry::__construct in Drupal 7
Constructs a DrupalCacheArray object.
Parameters
$cid: The cid for the array being cached.
$bin: The bin to cache the array.
Overrides DrupalCacheArray::__construct
File
- includes/
theme.inc, line 381 - The theme system, which controls the output of Drupal.
Class
- ThemeRegistry
- Builds the run-time theme registry.
Code
function __construct($cid, $bin) {
$this->cid = $cid;
$this->bin = $bin;
$this->persistable = module_load_all(NULL) && $_SERVER['REQUEST_METHOD'] == 'GET';
$data = array();
if ($this->persistable && ($cached = cache_get($this->cid, $this->bin))) {
$data = $cached->data;
}
else {
// If there is no runtime cache stored, fetch the full theme registry,
// but then initialize each value to NULL. This allows offsetExists()
// to function correctly on non-registered theme hooks without triggering
// a call to resolveCacheMiss().
$data = $this
->initializeRegistry();
if ($this->persistable) {
$this
->set($data);
}
}
$this->storage = $data;
}