X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.maps.server%2Fserver%2Ftileserver-mapnik%2Flib%2Findex.js;fp=org.simantics.maps.server%2Fserver%2Ftileserver-mapnik%2Flib%2Findex.js;h=40a02f1e4aef3bd1b772ef09c0cd2a8755386f1a;hb=2529be6d456deeb07c128603ce4971f1dc29b695;hp=0000000000000000000000000000000000000000;hpb=2636fc31c16c23711cf2b06a4ae8537bba9c1d35;p=simantics%2Fdistrict.git diff --git a/org.simantics.maps.server/server/tileserver-mapnik/lib/index.js b/org.simantics.maps.server/server/tileserver-mapnik/lib/index.js new file mode 100644 index 00000000..40a02f1e --- /dev/null +++ b/org.simantics.maps.server/server/tileserver-mapnik/lib/index.js @@ -0,0 +1,33 @@ +"use strict"; + +module.exports.getInfo = function(source, callback) { + return source.getInfo(function(err, _info) { + if (err) { + return callback(err); + } + + var info = {}; + + Object.keys(_info).forEach(function(key) { + info[key] = _info[key]; + }); + + if (info.vector_layers) { + info.format = "pbf"; + info.scheme = undefined; + } else { + info.autoscale = true; + } + + info.name = info.name || "Untitled"; + info.center = info.center || [-122.4440, 37.7908, 12]; + info.bounds = info.bounds || [-180, -85.0511, 180, 85.0511]; + info.format = info.format || "png"; + info.minzoom = Math.max(0, info.minzoom | 0); + info.maxzoom = info.maxzoom || Infinity; + + info.type = "baselayer"; + + return callback(null, info); + }); +};