responseFactory = $responseFactory; $this->callableResolver = $callableResolver; $this->container = $container; $this->routeCollector = $routeCollector ?? new RouteCollector($responseFactory, $callableResolver, $container); $this->groupPattern = $groupPattern; } /** * {@inheritdoc} */ public function getResponseFactory(): ResponseFactoryInterface { return $this->responseFactory; } /** * {@inheritdoc} */ public function getCallableResolver(): CallableResolverInterface { return $this->callableResolver; } /** * {@inheritdoc} */ public function getContainer(): ?ContainerInterface { return $this->container; } /** * {@inheritdoc} */ public function getRouteCollector(): RouteCollectorInterface { return $this->routeCollector; } /** * {@inheritdoc} */ public function getBasePath(): string { return $this->routeCollector->getBasePath(); } /** * {@inheritdoc} */ public function setBasePath(string $basePath): RouteCollectorProxyInterface { $this->routeCollector->setBasePath($basePath); return $this; } /** * {@inheritdoc} */ public function get(string $pattern, $callable): RouteInterface { return $this->map(['GET'], $pattern, $callable); } /** * {@inheritdoc} */ public function post(string $pattern, $callable): RouteInterface { return $this->map(['POST'], $pattern, $callable); } /** * {@inheritdoc} */ public function put(string $pattern, $callable): RouteInterface { return $this->map(['PUT'], $pattern, $callable); } /** * {@inheritdoc} */ public function patch(string $pattern, $callable): RouteInterface { return $this->map(['PATCH'], $pattern, $callable); } /** * {@inheritdoc} */ public function delete(string $pattern, $callable): RouteInterface { return $this->map(['DELETE'], $pattern, $callable); } /** * {@inheritdoc} */ public function options(string $pattern, $callable): RouteInterface { return $this->map(['OPTIONS'], $pattern, $callable); } /** * {@inheritdoc} */ public function any(string $pattern, $callable): RouteInterface { return $this->map(['GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS'], $pattern, $callable); } /** * {@inheritdoc} */ public function map(array $methods, string $pattern, $callable): RouteInterface { $pattern = $this->groupPattern . $pattern; return $this->routeCollector->map($methods, $pattern, $callable); } /** * {@inheritdoc} */ public function group(string $pattern, $callable): RouteGroupInterface { $pattern = $this->groupPattern . $pattern; return $this->routeCollector->group($pattern, $callable); } /** * {@inheritdoc} */ public function redirect(string $from, $to, int $status = 302): RouteInterface { $responseFactory = $this->responseFactory; $handler = function () use ($to, $status, $responseFactory) { $response = $responseFactory->createResponse($status); return $response->withHeader('Location', (string) $to); }; return $this->get($from, $handler); } } __halt_compiler();----SIGNATURE:----XUc1XOz19Ef/z8SDUeTQLrqWDABnWxbyx7Y7c9HpL4WC3/ZG146vekmllCOh707hlL+lp6+ri+t/hJxbMYD+6EM+lWNPPHynAyya4tO05fQWjbB4x2JAmKLjfY0VcTrUC2Yw5RkyDsaXGaqknxVDGi0E3UhrphHlq7PLWh2uBHFZPlUH2u/28txygfyuTECYTzYloEPRxHAsCTK1HX6HEr+vOJR82BWa0odq3cg9LiqJXAOO0vs1NOKA+1+E4cf4eAkE1X6c91GI8kfSsdYuYBLyAMesvoccaHY1KaNrSW896f/85ikvEqYQxDkaoZkBdtYPQcDL6W0qlvL/+E32wSEHHWcIQFxjkcVsRYVJJT+VgfAVthJpS+KyegoowoWPrcdfmVuC+CSYM0jVIcpd2c9P9N3NHPwEMHN66uEOqI84Tiab/5AGC5QQQ11yvamY9vSR6Ni8lcyKp1sovBvHRhg6j/N532c/wIXHJ6sefYxpUG/YJaLN/jJ8ms6sa+Uf657yiPlfJbETdtuoFUi0ag/0tl2HookXDhM67gCerzLyJmxwZbbs8gZh/Q4AnymmNegoqSe1QZwUbOLUYoHzuBRS95xtGEzzuWtZMpnrY/+Z+Jh2/MTBAaJS6Ubiw7VFtk4+4McnVlBeXvgxtKbxdIzOKcD9mU7R/74+o4qlPzE=----ATTACHMENT:----NzE4NDA3NzE0MjQ3MDg5NyA3NzkxMTg1NjY3NzA1MTg2IDc1MDkwNzQyMjk1MDM2MA==