Use express router to group enpoints and reuse common middlewares for layergroup controller
This commit is contained in:
@@ -53,53 +53,45 @@ util.inherits(LayergroupController, BaseController);
|
||||
|
||||
module.exports = LayergroupController;
|
||||
|
||||
|
||||
LayergroupController.prototype.register = function(app) {
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/:z/:x/:y@:scale_factor?x.:format',
|
||||
LayergroupController.prototype.register = function(router) {
|
||||
router.use(
|
||||
cors(),
|
||||
userMiddleware,
|
||||
userMiddleware
|
||||
);
|
||||
|
||||
router.get(
|
||||
'/:token/:z/:x/:y@:scale_factor?x.:format',
|
||||
this.req2paramsMiddleware,
|
||||
this.tile.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/:z/:x/:y.:format',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/:z/:x/:y.:format',
|
||||
this.req2paramsMiddleware,
|
||||
this.tile.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/:layer/:z/:x/:y.(:format)',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/:layer/:z/:x/:y.(:format)',
|
||||
this.req2paramsMiddleware,
|
||||
this.layer.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/:layer/attributes/:fid',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/:layer/attributes/:fid',
|
||||
this.req2paramsMiddleware,
|
||||
this.attributes.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/static/center/:token/:z/:lat/:lng/:width/:height.:format',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/static/center/:token/:z/:lat/:lng/:width/:height.:format',
|
||||
allowQueryParams(['layer']),
|
||||
this.req2paramsMiddleware,
|
||||
this.center.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/static/bbox/:token/:west,:south,:east,:north/:width/:height.:format',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/static/bbox/:token/:west,:south,:east,:north/:width/:height.:format',
|
||||
allowQueryParams(['layer']),
|
||||
this.req2paramsMiddleware,
|
||||
this.bbox.bind(this)
|
||||
@@ -121,45 +113,35 @@ LayergroupController.prototype.register = function(app) {
|
||||
'q' // widgets search
|
||||
];
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/dataview/:dataviewName',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/dataview/:dataviewName',
|
||||
allowQueryParams(allowedDataviewQueryParams),
|
||||
this.req2paramsMiddleware,
|
||||
this.dataview.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/:layer/widget/:dataviewName',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/:layer/widget/:dataviewName',
|
||||
allowQueryParams(allowedDataviewQueryParams),
|
||||
this.req2paramsMiddleware,
|
||||
this.dataview.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/dataview/:dataviewName/search',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/dataview/:dataviewName/search',
|
||||
allowQueryParams(allowedDataviewQueryParams),
|
||||
this.req2paramsMiddleware,
|
||||
this.dataviewSearch.bind(this)
|
||||
);
|
||||
|
||||
app.get(
|
||||
app.base_url_mapconfig + '/:token/:layer/widget/:dataviewName/search',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get(
|
||||
'/:token/:layer/widget/:dataviewName/search',
|
||||
allowQueryParams(allowedDataviewQueryParams),
|
||||
this.req2paramsMiddleware,
|
||||
this.dataviewSearch.bind(this)
|
||||
);
|
||||
|
||||
app.get(app.base_url_mapconfig + '/:token/analysis/node/:nodeId',
|
||||
cors(),
|
||||
userMiddleware,
|
||||
router.get('/:token/analysis/node/:nodeId',
|
||||
this.req2paramsMiddleware,
|
||||
this.analysisNodeStatus.bind(this)
|
||||
);
|
||||
|
||||
@@ -212,6 +212,8 @@ module.exports = function(serverOptions) {
|
||||
* Routing
|
||||
******************************************************************************************************************/
|
||||
|
||||
const routerLayergroup = express.Router();
|
||||
|
||||
new controller.Layergroup(
|
||||
authApi,
|
||||
pgConnection,
|
||||
@@ -223,7 +225,9 @@ module.exports = function(serverOptions) {
|
||||
userLimitsApi,
|
||||
layergroupAffectedTablesCache,
|
||||
analysisBackend
|
||||
).register(app);
|
||||
).register(routerLayergroup);
|
||||
|
||||
app.use(app.base_url_mapconfig, routerLayergroup);
|
||||
|
||||
new controller.Map(
|
||||
authApi,
|
||||
|
||||
Reference in New Issue
Block a user