diff --git a/middleware.py b/middleware.py index 7c968fe..e69de29 100644 --- a/middleware.py +++ b/middleware.py @@ -1,37 +0,0 @@ -import logging -from typing import Awaitable, Callable - -class SimpleMiddleware: - """A minimal ASGI middleware that logs incoming request paths. - - This middleware is deliberately lightweight and does not depend on - any external libraries. It can be wrapped around any ASGI application - (e.g., FastAPI, Starlette) to provide basic request logging. - """ - - def __init__(self, app: Callable): - self.app = app - self.logger = logging.getLogger(__name__) - - async def __call__(self, scope, receive, send): - if scope.get("type") == "http": - path = scope.get("path", "") - self.logger.info(f"Incoming request: {path}") - await self.app(scope, receive, send) - -# Helper function for convenience - -def get_middleware(app: Callable) -> SimpleMiddleware: - """Return an instance of :class:`SimpleMiddleware` wrapped around *app*. - - Parameters - ---------- - app: Callable - The ASGI application to wrap. - - Returns - ------- - SimpleMiddleware - The middleware instance. - """ - return SimpleMiddleware(app)