class BarAlterAccessPolicy
Same name in other branches
- 10 core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php \Drupal\Tests\Core\Session\BarAlterAccessPolicy
Hierarchy
- class \Drupal\Core\Session\AccessPolicyBase implements \Drupal\Core\Session\AccessPolicyInterface
- class \Drupal\Tests\Core\Session\BarAlterAccessPolicy extends \Drupal\Core\Session\AccessPolicyBase
Expanded class hierarchy of BarAlterAccessPolicy
File
-
core/
tests/ Drupal/ Tests/ Core/ Session/ AccessPolicyProcessorTest.php, line 474
Namespace
Drupal\Tests\Core\SessionView source
class BarAlterAccessPolicy extends AccessPolicyBase {
public function applies(string $scope) : bool {
return $scope === 'bar' || $scope === 'anything';
}
public function alterPermissions(AccountInterface $account, string $scope, RefinableCalculatedPermissionsInterface $calculated_permissions) : void {
parent::alterPermissions($account, $scope, $calculated_permissions);
foreach ($calculated_permissions->getItemsByScope($scope) as $item) {
$permissions = $item->getPermissions();
if (($key = array_search('bar', $permissions, TRUE)) !== FALSE) {
$permissions[$key] = 'baz';
$new_item = new CalculatedPermissionsItem($permissions, FALSE, $item->getScope(), $item->getIdentifier());
$calculated_permissions->addItem($new_item, TRUE);
}
}
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
AccessPolicyBase::calculatePermissions | public | function | Calculates the permissions for an account within a given scope. | Overrides AccessPolicyInterface::calculatePermissions | 7 |
AccessPolicyBase::getPersistentCacheContexts | public | function | Gets the persistent cache contexts. | Overrides AccessPolicyInterface::getPersistentCacheContexts | 9 |
AccessPolicyInterface::SCOPE_DRUPAL | constant | Scope ID for general Drupal access. | |||
BarAlterAccessPolicy::alterPermissions | public | function | Alter the permissions after all policies have finished building them. | Overrides AccessPolicyBase::alterPermissions | |
BarAlterAccessPolicy::applies | public | function | Checks whether this access policy applies to a given scope. | Overrides AccessPolicyBase::applies |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.