serve method
Controller of the docs routes. The document is built and encoded on the first request, and again only when routes were added.
Implementation
dynamic serve(DoxRequest req) {
List<RouteData> routes = Route().routes;
OpenApiServer? server = _server;
if (server == null || _builtFor != routes.length) {
server = _server = OpenApiServer(
build(routes),
pageTitle: config.pageTitle,
ui: config.ui,
scalar: config.scalar,
);
_builtFor = routes.length;
}
OpenApiResponse? res = server.handle(req.uri.path);
if (res == null) return null;
return response(res.body).contentType(ContentType.parse(res.contentType));
}