Same filename and directory in other branches
- 8.9.x core/modules/system/tests/modules/menu_test/src/Access/AccessCheck.php
- 9 core/modules/system/tests/modules/menu_test/src/Access/AccessCheck.php
Namespace
Drupal\menu_test\Access
File
core/modules/system/tests/modules/menu_test/src/Access/AccessCheck.php
View source
<?php
namespace Drupal\menu_test\Access;
use Drupal\Core\Access\AccessResult;
use Drupal\Core\DependencyInjection\ContainerInjectionInterface;
use Drupal\Core\Routing\Access\AccessInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\HttpFoundation\RequestStack;
class AccessCheck implements AccessInterface, ContainerInjectionInterface {
protected $requestStack;
public function __construct(RequestStack $request_stack) {
$this->requestStack = $request_stack;
}
public static function create(ContainerInterface $container) {
return new static($container
->get('request_stack'));
}
public function access() {
$result = AccessResult::allowedIf($this->requestStack
->getCurrentRequest()
->getSession()
->get('menu_test', 0) < 2);
return $result
->setCacheMaxAge(0);
}
public function menuLocalAction7() {
return AccessResult::forbidden()
->addCacheTags([
'menu_local_action7',
])
->addCacheContexts([
'url.query_args:menu_local_action7',
]);
}
public function menuLocalAction8() {
return AccessResult::allowed()
->addCacheTags([
'menu_local_action8',
])
->addCacheContexts([
'url.query_args:menu_local_action8',
]);
}
}
Classes
Name |
Description |
AccessCheck |
Checks access based on the 'menu_test' key in session. |