annotate core/modules/update/src/Access/UpdateManagerAccessCheck.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\update\Access;
Chris@0 4
Chris@0 5 use Drupal\Core\Access\AccessResult;
Chris@0 6 use Drupal\Core\Routing\Access\AccessInterface;
Chris@0 7 use Drupal\Core\Site\Settings;
Chris@0 8
Chris@0 9 /**
Chris@0 10 * Determines whether allow authorized operations is set.
Chris@0 11 */
Chris@0 12 class UpdateManagerAccessCheck implements AccessInterface {
Chris@0 13
Chris@0 14 /**
Chris@0 15 * Settings Service.
Chris@0 16 *
Chris@0 17 * @var \Drupal\Core\Site\Settings
Chris@0 18 */
Chris@0 19 protected $settings;
Chris@0 20
Chris@0 21 /**
Chris@0 22 * Constructs a UpdateManagerAccessCheck object.
Chris@0 23 *
Chris@0 24 * @param \Drupal\Core\Site\Settings $settings
Chris@0 25 * The read-only settings container.
Chris@0 26 */
Chris@0 27 public function __construct(Settings $settings) {
Chris@0 28 $this->settings = $settings;
Chris@0 29 }
Chris@0 30
Chris@0 31 /**
Chris@0 32 * Checks access.
Chris@0 33 *
Chris@0 34 * @return \Drupal\Core\Access\AccessResultInterface
Chris@0 35 * The access result.
Chris@0 36 */
Chris@0 37 public function access() {
Chris@0 38 // Uncacheable because the access result depends on a Settings key-value
Chris@0 39 // pair, and can therefore change at any time.
Chris@0 40 return AccessResult::allowedIf($this->settings->get('allow_authorize_operations', TRUE))->setCacheMaxAge(0);
Chris@0 41 }
Chris@0 42
Chris@0 43 }