function CheckProvider::addCheckService

Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Access/CheckProvider.php \Drupal\Core\Access\CheckProvider::addCheckService()
  2. 10 core/lib/Drupal/Core/Access/CheckProvider.php \Drupal\Core\Access\CheckProvider::addCheckService()
  3. 11.x core/lib/Drupal/Core/Access/CheckProvider.php \Drupal\Core\Access\CheckProvider::addCheckService()

Registers a new AccessCheck by service ID.

Parameters

string $service_id: The ID of the service in the Container that provides a check.

string $service_method: The method to invoke on the service object for performing the check.

array $applies_checks: (optional) An array of route requirement keys the checker service applies to.

bool $needs_incoming_request: (optional) True if access-check method only acts on an incoming request.

Overrides CheckProviderInterface::addCheckService

File

core/lib/Drupal/Core/Access/CheckProvider.php, line 61

Class

CheckProvider
Loads access checkers from the container.

Namespace

Drupal\Core\Access

Code

public function addCheckService($service_id, $service_method, array $applies_checks = [], $needs_incoming_request = FALSE) {
    $this->checkIds[] = $service_id;
    $this->checkMethods[$service_id] = $service_method;
    if ($needs_incoming_request) {
        $this->checksNeedsRequest[$service_id] = $service_id;
    }
    foreach ($applies_checks as $applies_check) {
        $this->staticRequirementMap[$applies_check][] = $service_id;
    }
}

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