public CacheFactory::get($bin)
Instantiates a cache backend class for a given cache bin.
By default, this returns an instance of the Drupal\Core\Cache\DatabaseBackend class.
Classes implementing Drupal\Core\Cache\CacheBackendInterface can register themselves both as a default implementation and for specific bins.
Parameters
string $bin: The cache bin for which a cache backend object should be returned.
Return value
\Drupal\Core\Cache\CacheBackendInterface The cache backend object associated with the specified bin.
Overrides CacheFactoryInterface::get
File
- core/lib/Drupal/Core/Cache/CacheFactory.php, line 65
Class
Namespace
Drupal\Core\Cache
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | public function get( $bin ) { $cache_settings = $this ->settings->get( 'cache' ); // First, look for a cache bin specific setting. if (isset( $cache_settings [ 'bins' ][ $bin ])) { $service_name = $cache_settings [ 'bins' ][ $bin ]; } // Second, use the default backend specified by the cache bin. elseif (isset( $this ->defaultBinBackends[ $bin ])) { $service_name = $this ->defaultBinBackends[ $bin ]; } // Third, use configured default backend. elseif (isset( $cache_settings [ 'default' ])) { $service_name = $cache_settings [ 'default' ]; } else { // Fall back to the database backend if nothing else is configured. $service_name = 'cache.backend.database' ; } return $this ->container->get( $service_name )->get( $bin ); } |
Please login to continue.