ConfigImportTestHooks.php

Namespace

Drupal\config_import_test\Hook

File

core/modules/config/tests/config_import_test/src/Hook/ConfigImportTestHooks.php

View source
<?php

declare (strict_types=1);
namespace Drupal\config_import_test\Hook;

use Drupal\Core\Config\ConfigImporter;
use Drupal\Core\Hook\Attribute\Hook;

/**
 * Hook implementations for config_import_test.
 */
class ConfigImportTestHooks {
  
  /**
   * Implements hook_config_import_steps_alter().
   */
  public function configImportStepsAlter(&$sync_steps) : void {
    $sync_steps[] = [
      $this,
      'stepAlter',
    ];
  }
  
  /**
   * Implements hook_modules_installed().
   */
  public function modulesInstalled($modules, $is_syncing) : void {
    \Drupal::state()->set('config_import_test_modules_installed.list', $modules);
  }
  
  /**
   * Implements configuration synchronization step added by an alter for testing.
   *
   * @param array $context
   *   The batch context.
   * @param \Drupal\Core\Config\ConfigImporter $config_importer
   *   The configuration importer.
   */
  public function stepAlter(&$context, ConfigImporter $config_importer) : void {
    $GLOBALS['hook_config_test']['config_import_steps_alter'] = TRUE;
    if (\Drupal::state()->get('config_import_steps_alter.error', FALSE)) {
      $context['results']['errors'][] = '_config_import_test_config_import_steps_alter batch error';
      $config_importer->logError('_config_import_test_config_import_steps_alter ConfigImporter error');
    }
    $context['finished'] = 1;
  }

}

Classes

Title Deprecated Summary
ConfigImportTestHooks Hook implementations for config_import_test.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.