From dc596b642c85f33c760f12431e66d32df93d133c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Tue, 15 Dec 2020 18:52:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Annotation/Route/Node.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Annotation/Route/Node.php b/Annotation/Route/Node.php index 80da06e4..f035a451 100644 --- a/Annotation/Route/Node.php +++ b/Annotation/Route/Node.php @@ -3,6 +3,10 @@ namespace Annotation\Route; +use HttpServer\IInterface\After; +use HttpServer\IInterface\Interceptor; +use HttpServer\IInterface\Limits; +use HttpServer\IInterface\Middleware; use HttpServer\Route\Node as RNode; use ReflectionException; use Snowflake\Exception\NotFindClassException; @@ -45,7 +49,19 @@ trait Node { $di = Snowflake::getDi(); foreach ($classes as $key => $class) { - $classes[$key] = [$di->get($class), 'onHandler']; + $object = $di->get($class); + if ($object instanceof Interceptor) { + $classes[$key] = [$object, 'Interceptor']; + } + if ($object instanceof Limits) { + $classes[$key] = [$object, 'next']; + } + if ($object instanceof After) { + $classes[$key] = [$object, 'onHandler']; + } + if ($object instanceof Middleware) { + $classes[$key] = [$object, 'onHandler']; + } } return $classes; }