Set layergroup-id header in the right middleware

This commit is contained in:
Daniel García Aubert
2017-10-31 18:54:32 +01:00
parent da2228088e
commit e06f8fe25e
+15 -13
View File
@@ -200,8 +200,6 @@ MapController.prototype.create = function(req, res, prepareConfigFn, next) {
const { layergroup } = res.locals;
res.set('X-Layergroup-Id', layergroup.layergroupid);
res.status(200);
if (req.query && req.query.callback) {
@@ -291,7 +289,6 @@ MapController.prototype.instantiateTemplate = function(req, res, prepareParamsFn
const { layergroup } = res.locals;
res.set('X-Layergroup-Id', layergroup.layergroupid);
self.surrogateKeysCache.tag(res, new NamedMapsCacheEntry(cdbuser, mapConfigProvider.getTemplateName()));
res.status(200);
@@ -341,14 +338,12 @@ MapController.prototype.afterLayergroupCreateBuilder = function (options = {}) {
assert.ifError(err);
self.setLayerStats(req, res, this);
},
function augmentLayergroupIdWithTemplateHash (err) {
function setLayergroupIdHeader (err) {
assert.ifError(err);
if (!useTemplateHash) {
return null;
}
const setLayergroupIdHeader = self.setLayergroupIdHeaderBuilder(useTemplateHash);
self.augmentLayergroupIdWithTemplateHash(req, res, this);
setLayergroupIdHeader(req, res, this);
},
function (err) {
assert.ifError(err);
@@ -497,13 +492,20 @@ MapController.prototype.setLayerStats = function (req, res, callback) {
});
};
MapController.prototype.augmentLayergroupIdWithTemplateHash = function (req, res, callback) {
const { layergroup, user, template } = res.locals;
MapController.prototype.setLayergroupIdHeaderBuilder = function (useTemplateHash) {
const self = this;
return function setLayergroupIdHeader(req, res, callback) {
const { layergroup, user, template } = res.locals;
var templateHash = this.templateMaps.fingerPrint(template).substring(0, 8);
layergroup.layergroupid = `${user}@${templateHash}@${layergroup.layergroupid}`;
if (useTemplateHash) {
var templateHash = self.templateMaps.fingerPrint(template).substring(0, 8);
layergroup.layergroupid = `${user}@${templateHash}@${layergroup.layergroupid}`;
}
callback();
res.set('X-Layergroup-Id', layergroup.layergroupid);
callback();
};
};
MapController.prototype.setDataviewsAndWidgetsUrlsToLayergroupMetadata = function (req, res, callback) {