PackageManagerRequirements.php
Namespace
Drupal\package_manager\Install\RequirementsFile
-
core/
modules/ package_manager/ src/ Install/ Requirements/ PackageManagerRequirements.php
View source
<?php
declare (strict_types=1);
namespace Drupal\package_manager\Install\Requirements;
use Drupal\Core\Extension\InstallRequirementsInterface;
use Drupal\Core\Site\Settings;
use Drupal\package_manager\Exception\FailureMarkerExistsException;
use Drupal\package_manager\FailureMarker;
/**
* Install time requirements for the package_manager module.
*/
class PackageManagerRequirements implements InstallRequirementsInterface {
/**
* {@inheritdoc}
*/
public static function getRequirements() : array {
$requirements = [];
if (Settings::get('testing_package_manager', FALSE) === FALSE) {
$requirements['testing_package_manager'] = [
'title' => 'Package Manager',
'description' => t("Package Manager is available for early testing. To install the module set the value of 'testing_package_manager' to TRUE in your settings.php file."),
'severity' => REQUIREMENT_ERROR,
];
}
// If we're able to check for the presence of the failure marker at all, do
// it irrespective of the current run phase. If the failure marker is there,
// the site is in an indeterminate state and should be restored from backup
// ASAP.
$service_id = FailureMarker::class;
if (\Drupal::hasService($service_id)) {
try {
\Drupal::service($service_id)->assertNotExists(NULL);
} catch (FailureMarkerExistsException $exception) {
$requirements['package_manager_failure_marker'] = [
'title' => t('Failed Package Manager update detected'),
'description' => $exception->getMessage(),
'severity' => REQUIREMENT_ERROR,
];
}
}
return $requirements;
}
}
Classes
Title | Deprecated | Summary |
---|---|---|
PackageManagerRequirements | Install time requirements for the package_manager module. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.