public static function boot(Route $route) { if (!empty($route->middleware())) { foreach ($route->middleware() as $middleware) { self::$name = $middleware; $namespace = File::find($middleware, 'Middleware'); $class = new $namespace(); $call = $class->run(self::$request, self::$response); if (is_subclass_of($call, Middleware::class) !== TRUE) { throw new MiddlewareException("':middleware' does not return instance of Stativo\\App\\Middleware", [':middleware' => $middleware]); } } } return TRUE; }