1
0
Fork 0

Allow overriding default swagger.json generator.

This commit is contained in:
Alan Plum 2015-05-07 14:43:20 +02:00
parent 43bfbab267
commit a24b5d7ac5
1 changed files with 7 additions and 6 deletions

View File

@ -68,7 +68,8 @@ function createSwaggerRouteHandler(appPath, opts) {
return;
}
if (pathInfo === 'swagger.json') {
res.json(swaggerJson(req, result ? result.appPath : (opts.appPath || appPath)));
var swaggerJsonHandler = opts.swaggerJson || swaggerJson;
swaggerJsonHandler(req, res, {appPath: result ? result.appPath : (opts.appPath || appPath)});
return;
}
var indexFile = result ? result.indexFile : opts.indexFile;
@ -84,11 +85,11 @@ function createSwaggerRouteHandler(appPath, opts) {
};
}
function swaggerJson(req, appPath) {
var foxx = FoxxManager.routes(appPath);
function swaggerJson(req, res, opts) {
var foxx = FoxxManager.routes(opts.appPath);
var app = foxx.appContext.app;
var swagger = parseRoutes(appPath, foxx.routes, foxx.models);
return {
var swagger = parseRoutes(opts.appPath, foxx.routes, foxx.models);
res.json({
swagger: '2.0',
info: {
description: app._manifest.description,
@ -101,7 +102,7 @@ function swaggerJson(req, appPath) {
paths: swagger.paths,
// securityDefinitions: {},
definitions: swagger.definitions
};
});
}
function fixSchema(model) {