interface InstallRequirementsInterface

Provides method for checking requirements during install time.

Hierarchy

Expanded class hierarchy of InstallRequirementsInterface

All classes that implement InstallRequirementsInterface

9 files declare their use of InstallRequirementsInterface
LayoutDiscoveryRequirements.php in core/modules/layout_discovery/src/Install/Requirements/LayoutDiscoveryRequirements.php
MediaRequirements.php in core/modules/media/src/Install/Requirements/MediaRequirements.php
ModuleInstallRequirements.php in core/modules/system/tests/modules/module_install_requirements/src/Install/Requirements/ModuleInstallRequirements.php
ModuleInstallUnmetRequirementsRequirements.php in core/modules/system/tests/modules/module_install_unmet_requirements/src/Install/Requirements/ModuleInstallUnmetRequirementsRequirements.php
PackageManagerRequirements.php in core/modules/package_manager/src/Install/Requirements/PackageManagerRequirements.php

... See full list

File

core/lib/Drupal/Core/Extension/InstallRequirementsInterface.php, line 8

Namespace

Drupal\Core\Extension
View source
interface InstallRequirementsInterface {
  
  /**
   * Check installation requirements.
   *
   * Classes implementing this must be in the Install/Requirements namespace.
   * For example src/Install/Requirements/ModuleNameRequirements.php.
   *
   * During the 'install' phase, modules can for example assert that
   * library or server versions are available or sufficient.
   * Note that the installation of a module can happen during installation of
   * Drupal itself (by install.php) with an installation profile or later by
   * hand. As a consequence, install-time requirements must be checked without
   * access to the full Drupal API, because it is not available during
   * install.php.
   * If a requirement has a severity of RequirementSeverity::Error, install.php
   * will abort or at least the module will not install.
   * Other severity levels have no effect on the installation.
   * Module dependencies do not belong to these installation requirements,
   * but should be defined in the module's .info.yml file.
   *
   * During installation, if you need to load a class from your module,
   * you'll need to include the class file directly.
   *
   * @return array
   *   An associative array where the keys are arbitrary but must be unique (it
   *   is suggested to use the module short name as a prefix) and the values are
   *   themselves associative arrays with the following elements:
   *   - title: The name of the requirement.
   *   - value: This should only be used for version numbers, do not set it if
   *     not applicable.
   *   - description: The description of the requirement/status.
   *   - severity: (optional) An instance of
   *     \Drupal\Core\Extension\Requirement\RequirementSeverity enum. Defaults
   *     to RequirementSeverity::OK when installing.
   */
  public static function getRequirements() : array;

}

Members

Title Sort descending Modifiers Object type Summary Overrides
InstallRequirementsInterface::getRequirements public static function Check installation requirements. 9

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