Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
50.00% |
1 / 2 |
CRAP | |
83.33% |
5 / 6 |
| BootstrapConfigStorageFactory | |
0.00% |
0 / 1 |
|
66.67% |
2 / 3 |
6.17 | |
83.33% |
5 / 6 |
| get | |
0.00% |
0 / 1 |
4.13 | |
80.00% |
4 / 5 |
|||
| getDatabaseStorage | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
| getFileStorage | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
| <?php | |
| /** | |
| * @file | |
| * Contains \Drupal\Core\Config\BootstrapConfigStorageFactory. | |
| */ | |
| namespace Drupal\Core\Config; | |
| use Drupal\Core\Database\Database; | |
| use Drupal\Core\Site\Settings; | |
| /** | |
| * Defines a factory for retrieving the config storage used pre-kernel. | |
| */ | |
| class BootstrapConfigStorageFactory { | |
| /** | |
| * Returns a configuration storage implementation. | |
| * | |
| * @param $class_loader | |
| * The class loader. Normally Composer's ClassLoader, as included by the | |
| * front controller, but may also be decorated; e.g., | |
| * \Symfony\Component\ClassLoader\ApcClassLoader. | |
| * | |
| * @return \Drupal\Core\Config\StorageInterface | |
| * A configuration storage implementation. | |
| */ | |
| public static function get($class_loader = NULL) { | |
| $bootstrap_config_storage = Settings::get('bootstrap_config_storage'); | |
| $storage_backend = FALSE; | |
| if (!empty($bootstrap_config_storage) && is_callable($bootstrap_config_storage)) { | |
| $storage_backend = call_user_func($bootstrap_config_storage, $class_loader); | |
| } | |
| // Fallback to the DatabaseStorage. | |
| return $storage_backend ?: self::getDatabaseStorage(); | |
| } | |
| /** | |
| * Returns a Database configuration storage implementation. | |
| * | |
| * @return \Drupal\Core\Config\DatabaseStorage | |
| */ | |
| public static function getDatabaseStorage() { | |
| return new DatabaseStorage(Database::getConnection(), 'config'); | |
| } | |
| /** | |
| * Returns a File-based configuration storage implementation. | |
| * | |
| * If there is no active configuration directory calling this method will | |
| * result in an error. | |
| * | |
| * @return \Drupal\Core\Config\FileStorage | |
| * | |
| * @deprecated in Drupal 8.0.x and will be removed before 9.0.0. Drupal core | |
| * no longer creates an active directory. | |
| * | |
| * @throws \Exception | |
| */ | |
| public static function getFileStorage() { | |
| return new FileStorage(config_get_config_directory(CONFIG_ACTIVE_DIRECTORY)); | |
| } | |
| } |