protected function ConfigImporter::processMissingContent in Drupal 8
Same name and namespace in other branches
- 9 core/lib/Drupal/Core/Config/ConfigImporter.php \Drupal\Core\Config\ConfigImporter::processMissingContent()
Handles processing of missing content.
Parameters
array|\ArrayAccess $context: Standard batch context.
File
- core/
lib/ Drupal/ Core/ Config/ ConfigImporter.php, line 637
Class
- ConfigImporter
- Defines a configuration importer.
Namespace
Drupal\Core\ConfigCode
protected function processMissingContent(&$context) {
$sandbox =& $context['sandbox']['config'];
if (!isset($sandbox['missing_content'])) {
$missing_content = $this->configManager
->findMissingContentDependencies();
$sandbox['missing_content']['data'] = $missing_content;
$sandbox['missing_content']['total'] = count($missing_content);
}
else {
$missing_content = $sandbox['missing_content']['data'];
}
if (!empty($missing_content)) {
$event = new MissingContentEvent($missing_content);
// Fire an event to allow listeners to create the missing content.
$this->eventDispatcher
->dispatch(ConfigEvents::IMPORT_MISSING_CONTENT, $event);
$sandbox['missing_content']['data'] = $event
->getMissingContent();
}
$current_count = count($sandbox['missing_content']['data']);
if ($current_count) {
$context['message'] = $this
->t('Resolving missing content');
$context['finished'] = ($sandbox['missing_content']['total'] - $current_count) / $sandbox['missing_content']['total'];
}
else {
$context['finished'] = 1;
}
}