function LanguageConfigOverride::save
Same name and namespace in other branches
- 10 core/modules/language/src/Config/LanguageConfigOverride.php \Drupal\language\Config\LanguageConfigOverride::save()
- 11.x core/modules/language/src/Config/LanguageConfigOverride.php \Drupal\language\Config\LanguageConfigOverride::save()
- 9 core/modules/language/src/Config/LanguageConfigOverride.php \Drupal\language\Config\LanguageConfigOverride::save()
- 8.9.x core/modules/language/src/Config/LanguageConfigOverride.php \Drupal\language\Config\LanguageConfigOverride::save()
Saves the configuration object.
Must invalidate the cache tags associated with the configuration object.
Parameters
bool $has_trusted_data: Set to TRUE if the configuration data has already been checked to ensure it conforms to schema. Generally this is only used during module and theme installation. This argument is deprecated in Drupal 11.4.0 and is removed in Drupal 13.0.0.
Return value
$this
Overrides StorableConfigBase::save
File
-
core/
modules/ language/ src/ Config/ LanguageConfigOverride.php, line 50
Class
- LanguageConfigOverride
- Defines language configuration overrides.
Namespace
Drupal\language\ConfigCode
public function save($has_trusted_data = FALSE) {
if (!$has_trusted_data) {
// @todo Use configuration schema to validate.
// https://www.drupal.org/node/2270399
// Perform basic data validation.
foreach ($this->data as $key => $value) {
$this->validateValue($key, $value);
}
}
$this->storage
->write($this->name, $this->data);
// Invalidate the cache tags not only when updating, but also when creating,
// because a language config override object uses the same cache tag as the
// default configuration object. Hence creating a language override is like
// an update of configuration, but only for a specific language.
Cache::invalidateTags($this->getCacheTags());
$this->isNew = FALSE;
// Dispatch configuration override event as detailed in
// \Drupal\Core\Config\ConfigFactoryOverrideInterface::createConfigObject().
$this->eventDispatcher
->dispatch(new ConfigCrudEvent($this), ConfigCollectionEvents::SAVE_IN_COLLECTION);
// Dispatch an event specifically for language configuration override
// changes.
$this->eventDispatcher
->dispatch(new LanguageConfigOverrideCrudEvent($this), LanguageConfigOverrideEvents::SAVE_OVERRIDE);
$this->originalData = $this->data;
return $this;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.