private function doMatch(SimplifiedRequest $request)
{
foreach ($this->siteAccessesConfiguration as $matchingClass => $matchingConfiguration) {
$matcher = $this->matcherBuilder->buildMatcher($matchingClass, $matchingConfiguration, $request);
if ($matcher instanceof CompoundInterface) {
$matcher->setMatcherBuilder($this->matcherBuilder);
}
if (($siteaccessName = $matcher->match()) !== false) {
if (isset($this->siteAccessList[$siteaccessName])) {
$this->siteAccess->name = $siteaccessName;
$this->siteAccess->matchingType = $matcher->getName();
$this->siteAccess->matcher = $matcher;
return $this->siteAccess;
}
}
}
$this->logger->notice('Siteaccess not matched against configuration, returning default siteaccess.');
$this->siteAccess->name = $this->defaultSiteAccess;
$this->siteAccess->matchingType = 'default';
return $this->siteAccess;
}