You are here

ConfigImportModuleUninstallValidatorInterface.php in Drupal 10

File

core/lib/Drupal/Core/Extension/ConfigImportModuleUninstallValidatorInterface.php
View source
<?php

namespace Drupal\Core\Extension;

use Drupal\Core\Config\StorageInterface;

/**
 * Special interface for module uninstall validators for configuration import.
 *
 * A module uninstall validator that needs different functionality prior to a
 * configuration import should implement this interface and be defined in
 * a Drupal @link container service @endlink that is tagged
 * module_install.uninstall_validator.
 */
interface ConfigImportModuleUninstallValidatorInterface extends ModuleUninstallValidatorInterface {

  /**
   * Determines reasons a module can not be uninstalled prior to config import.
   *
   * @param string $module
   *   A module name.
   * @param \Drupal\Core\Config\StorageInterface $source_storage
   *   Storage object used to read configuration that is about to be imported.
   *
   * @return string[]
   *   An array of reasons the module can not be uninstalled, empty if it can.
   *   Each reason should not end with any punctuation since multiple reasons
   *   can be displayed together.
   *
   * @see \Drupal\Core\EventSubscriber\ConfigImportSubscriber::validateModules()
   */
  public function validateConfigImport(string $module, StorageInterface $source_storage) : array;

}

Interfaces

Namesort descending Description
ConfigImportModuleUninstallValidatorInterface Special interface for module uninstall validators for configuration import.