private function buildRouter(RouteCollector $rc, Server $server)
{
$allowedMethods = [];
foreach ($this->routes as list($method, $uri, $actions)) {
$allowedMethods[] = $method;
list($app, $monitors) = $this->bootRouteTarget($actions);
$rc->addRoute($method, $uri, $app);
$this->monitors[$method][$uri] = $monitors;
}
$originalMethods = $server->getOption("allowedMethods");
if ($server->getOption("normalizeMethodCase")) {
$allowedMethods = array_map("strtoupper", $allowedMethods);
}
$allowedMethods = array_merge($allowedMethods, $originalMethods);
$allowedMethods = array_unique($allowedMethods);
$server->setOption("allowedMethods", $allowedMethods);
}