public function ConfigSubscriber::onOverrideChange in Acquia Content Hub 8.2
Enqueues candidate entity when a configuration override changed.
Enqueues candidate configuration entity for publishing on language override change - either on save or delete.
Parameters
\Drupal\language\Config\LanguageConfigOverrideCrudEvent $event: The language configuration override event.
Throws
\Exception
File
- modules/
acquia_contenthub_publisher/ src/ EventSubscriber/ Config/ ConfigSubscriber.php, line 43
Class
- ConfigSubscriber
- Event subscriber to enqueue candidate Config Entity for publishing.
Namespace
Drupal\acquia_contenthub_publisher\EventSubscriber\ConfigCode
public function onOverrideChange(LanguageConfigOverrideCrudEvent $event) {
$config_name = $event
->getLanguageConfigOverride()
->getName();
/** @var \Drupal\Core\Config\Entity\ConfigEntityType $entity_type_definition */
foreach (\Drupal::entityTypeManager()
->getDefinitions() as $entity_type => $entity_type_definition) {
if (!$entity_type_definition instanceof ConfigEntityType) {
continue;
}
$config_prefix = $entity_type_definition
->getConfigPrefix();
if (0 === strpos($config_name, $config_prefix)) {
$id = ConfigEntityStorage::getIDFromConfigName($config_name, $config_prefix);
$entity = \Drupal::entityTypeManager()
->getStorage($entity_type)
->load($id);
if (!$entity) {
return;
}
_acquia_contenthub_publisher_enqueue_entity($entity, 'update');
return;
}
}
}