public function LanguageConfigOverride::save in Drupal 9
Same name and namespace in other branches
- 8 core/modules/language/src/Config/LanguageConfigOverride.php \Drupal\language\Config\LanguageConfigOverride::save()
- 10 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.
Return value
$this
Overrides StorableConfigBase::save
See also
\Drupal\Core\Config\ConfigInstaller::createConfiguration()
File
- core/
modules/ language/ src/ Config/ LanguageConfigOverride.php, line 48
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;
$this->eventDispatcher
->dispatch(new LanguageConfigOverrideCrudEvent($this), LanguageConfigOverrideEvents::SAVE_OVERRIDE);
$this->originalData = $this->data;
return $this;
}