protected function matchValue($requestPath)
{
try {
/** @var NodeInterface $node */
$node = null;
// Build context explicitly without authorization checks because the security context isn't available yet
// anyway and any Entity Privilege targeted on Workspace would fail at this point:
$this->securityContext->withoutAuthorizationChecks(function () use(&$node, $requestPath) {
$node = $this->convertRequestPathToNode($requestPath);
});
} catch (Exception $exception) {
$this->systemLogger->log('FrontendNodeRoutePartHandler matchValue(): ' . $exception->getMessage(), LOG_DEBUG);
if ($requestPath === '') {
throw new Exception\NoHomepageException('Homepage could not be loaded. Probably you haven\'t imported a site yet', 1346950755, $exception);
}
return false;
}
if ($this->onlyMatchSiteNodes() && $node !== $node->getContext()->getCurrentSiteNode()) {
return false;
}
$this->value = $node->getContextPath();
return true;
}