Same name and namespace in other branches
  1. 8.9.x core/modules/system/src/Access/CronAccessCheck.php \Drupal\system\Access\CronAccessCheck::access()
  2. 9 core/modules/system/src/Access/CronAccessCheck.php \Drupal\system\Access\CronAccessCheck::access()

Checks access.

Parameters

string $key: The cron key.

Return value

\Drupal\Core\Access\AccessResultInterface The access result.

File

core/modules/system/src/Access/CronAccessCheck.php, line 22

Class

CronAccessCheck
Access check for cron routes.

Namespace

Drupal\system\Access

Code

public function access($key) {
  if ($key != \Drupal::state()
    ->get('system.cron_key')) {
    \Drupal::logger('cron')
      ->notice('Cron could not run because an invalid key was used.');
    return AccessResult::forbidden()
      ->setCacheMaxAge(0);
  }
  elseif (\Drupal::state()
    ->get('system.maintenance_mode')) {
    \Drupal::logger('cron')
      ->notice('Cron could not run because the site is in maintenance mode.');
    return AccessResult::forbidden()
      ->setCacheMaxAge(0);
  }
  return AccessResult::allowed()
    ->setCacheMaxAge(0);
}