Extends DrupalCacheArray to allow for dynamic building of the schema cache.
Hierarchy
- DrupalCacheArray implements ArrayAccess
Properties
| Name | Description |
|---|---|
| DrupalCacheArray::$bin | A bin to pass to cache_set() and cache_get(). |
| DrupalCacheArray::$cid | A cid to pass to cache_set() and cache_get(). |
| DrupalCacheArray::$keysToPersist | An array of keys to add to the cache at the end of the request. |
| DrupalCacheArray::$storage | Storage for the data itself. |
Functions & methods
| Name | Description |
|---|---|
| DrupalCacheArray::offsetExists | Implements ArrayAccess::offsetExists(). |
| DrupalCacheArray::offsetGet | Implements ArrayAccess::offsetGet(). |
| DrupalCacheArray::offsetSet | Implements ArrayAccess::offsetSet(). |
| DrupalCacheArray::offsetUnset | Implements ArrayAccess::offsetUnset(). |
| DrupalCacheArray::persist | Flags an offset value to be written to the persistent cache. |
| DrupalCacheArray::set | Writes a value to the persistent cache immediately. |
| DrupalCacheArray::__destruct | Destructs the DrupalCacheArray object. |
| SchemaCache::resolveCacheMiss | Overrides DrupalCacheArray::resolveCacheMiss(). Overrides DrupalCacheArray::resolveCacheMiss |
| SchemaCache::__construct | Constructs a SchemaCache object. Overrides DrupalCacheArray::__construct |
File
- includes/
bootstrap.inc, line 2872 - Functions that need to be loaded on every Drupal request.
View source
class SchemaCache extends DrupalCacheArray {
/**
* Constructs a SchemaCache object.
*/
public function __construct() {
// Cache by request method.
parent::__construct('schema:runtime:' . ($_SERVER['REQUEST_METHOD'] == 'GET'), 'cache');
}
/**
* Overrides DrupalCacheArray::resolveCacheMiss().
*/
protected function resolveCacheMiss($offset) {
$complete_schema = drupal_get_complete_schema();
$value = isset($complete_schema[$offset]) ? $complete_schema[$offset] : NULL;
$this->storage[$offset] = $value;
$this->persist($offset);
return $value;
}
}