summaryrefslogtreecommitdiff
path: root/src/http/Support/RouteLoader.php
diff options
context:
space:
mode:
authorDaniel Weipert <git@mail.dweipert.de>2024-01-02 20:42:01 +0100
committerDaniel Weipert <git@mail.dweipert.de>2024-01-05 12:33:59 +0100
commitb21316248572cb27ed1f504529ad6680a473022e (patch)
treef8a2f81258cae3b1d2429fb7df5a3287954b683a /src/http/Support/RouteLoader.php
parentf621d95f89ded05a2e916c5ee363bfe75ea37482 (diff)
gemini
Diffstat (limited to 'src/http/Support/RouteLoader.php')
-rw-r--r--src/http/Support/RouteLoader.php24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/http/Support/RouteLoader.php b/src/http/Support/RouteLoader.php
new file mode 100644
index 0000000..b0e74cb
--- /dev/null
+++ b/src/http/Support/RouteLoader.php
@@ -0,0 +1,24 @@
+<?php
+
+namespace App\http\Support;
+
+use Symfony\Component\Routing\Loader\AnnotationClassLoader;
+use Symfony\Component\Routing\Route;
+
+class RouteLoader extends AnnotationClassLoader
+{
+ protected function configureRoute(Route $route, \ReflectionClass $class, \ReflectionMethod $method, object $annotation) {
+ $route->setDefault('_', compact('class', 'method', 'annotation'));
+ }
+
+ protected function getDefaultRouteName(\ReflectionClass $class, \ReflectionMethod $method)
+ {
+ $name = parent::getDefaultRouteName($class, $method);
+
+ return str_replace(
+ '_',
+ '.',
+ str_replace('app_controller_', '', $name)
+ );
+ }
+}