Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Config/ConfigFactoryOverrideInterface.php \Drupal\Core\Config\ConfigFactoryOverrideInterface
  2. 9 core/lib/Drupal/Core/Config/ConfigFactoryOverrideInterface.php \Drupal\Core\Config\ConfigFactoryOverrideInterface

Defines the interface for a configuration factory override object.

Hierarchy

Expanded class hierarchy of ConfigFactoryOverrideInterface

All classes that implement ConfigFactoryOverrideInterface

8 files declare their use of ConfigFactoryOverrideInterface
CacheabilityMetadataConfigOverride.php in core/modules/config/tests/config_override_integration_test/src/CacheabilityMetadataConfigOverride.php
ConfigOverride.php in core/lib/Drupal/Core/Installer/ConfigOverride.php
ConfigOverrider.php in core/modules/settings_tray/tests/modules/settings_tray_override_test/src/ConfigOverrider.php
ConfigOverrider.php in core/modules/config/tests/config_entity_static_cache_test/src/ConfigOverrider.php
ConfigOverrider.php in core/modules/config/tests/config_override_test/src/ConfigOverrider.php

... See full list

File

core/lib/Drupal/Core/Config/ConfigFactoryOverrideInterface.php, line 8

Namespace

Drupal\Core\Config
View source
interface ConfigFactoryOverrideInterface {

  /**
   * Returns config overrides.
   *
   * @param array $names
   *   A list of configuration names that are being loaded.
   *
   * @return array
   *   An array keyed by configuration name of override data. Override data
   *   contains a nested array structure of overrides.
   */
  public function loadOverrides($names);

  /**
   * The string to append to the configuration static cache name.
   *
   * @return string
   *   A string to append to the configuration static cache name.
   */
  public function getCacheSuffix();

  /**
   * Creates a configuration object for use during install and synchronization.
   *
   * If the overrider stores its overrides in configuration collections then
   * it can have its own implementation of
   * \Drupal\Core\Config\StorableConfigBase. Configuration overriders can link
   * themselves to a configuration collection by listening to the
   * \Drupal\Core\Config\ConfigCollectionEvents::COLLECTION_INFO event and
   * adding the collections they are responsible for. Doing this will allow
   * installation and synchronization to use the overrider's implementation of
   * StorableConfigBase. Additionally, the overrider's implementation should
   * trigger the appropriate event:
   * - Saving and creating triggers ConfigCollectionEvents::SAVE_IN_COLLECTION.
   * - Deleting triggers ConfigCollectionEvents::DELETE_IN_COLLECTION.
   * - Renaming triggers ConfigCollectionEvents::RENAME_IN_COLLECTION.
   *
   * @see \Drupal\Core\Config\ConfigCollectionInfo
   * @see \Drupal\Core\Config\ConfigImporter::importConfig()
   * @see \Drupal\Core\Config\ConfigInstaller::createConfiguration()
   * @see \Drupal\Core\Config\ConfigCollectionEvents::SAVE_IN_COLLECTION
   * @see \Drupal\Core\Config\ConfigCollectionEvents::DELETE_IN_COLLECTION
   * @see \Drupal\Core\Config\ConfigCollectionEvents::RENAME_IN_COLLECTION
   *
   * @param string $name
   *   The configuration object name.
   * @param string $collection
   *   The configuration collection.
   *
   * @return \Drupal\Core\Config\StorableConfigBase|null
   *   The configuration object for the provided name and collection. NULL
   *   should be returned when the overrider does not use configuration
   *   collections. For example: a module that provides an overrider to avoid
   *   storing API keys in config would not use collections.
   */
  public function createConfigObject($name, $collection = StorageInterface::DEFAULT_COLLECTION);

  /**
   * Gets the cacheability metadata associated with the config factory override.
   *
   * @param string $name
   *   The name of the configuration override to get metadata for.
   *
   * @return \Drupal\Core\Cache\CacheableMetadata
   *   A cacheable metadata object.
   */
  public function getCacheableMetadata($name);

}

Members

Namesort descending Modifiers Type Description Overrides
ConfigFactoryOverrideInterface::createConfigObject public function Creates a configuration object for use during install and synchronization.
ConfigFactoryOverrideInterface::getCacheableMetadata public function Gets the cacheability metadata associated with the config factory override.
ConfigFactoryOverrideInterface::getCacheSuffix public function The string to append to the configuration static cache name.
ConfigFactoryOverrideInterface::loadOverrides public function Returns config overrides.