Named exports from ol/source/WMTS

This commit is contained in:
Tim Schaub
2018-02-25 08:06:50 -07:00
parent d8934d8593
commit 00f891c3f9
5 changed files with 22 additions and 21 deletions

View File

@@ -8,7 +8,7 @@ import {register} from '../src/ol/proj/proj4.js';
import OSM from '../src/ol/source/OSM.js'; import OSM from '../src/ol/source/OSM.js';
import TileImage from '../src/ol/source/TileImage.js'; import TileImage from '../src/ol/source/TileImage.js';
import TileWMS from '../src/ol/source/TileWMS.js'; import TileWMS from '../src/ol/source/TileWMS.js';
import WMTS from '../src/ol/source/WMTS.js'; import WMTS, {optionsFromCapabilities} from '../src/ol/source/WMTS.js';
import XYZ from '../src/ol/source/XYZ.js'; import XYZ from '../src/ol/source/XYZ.js';
import TileGrid from '../src/ol/tilegrid/TileGrid.js'; import TileGrid from '../src/ol/tilegrid/TileGrid.js';
import proj4 from 'proj4'; import proj4 from 'proj4';
@@ -104,7 +104,7 @@ fetch(url).then(function(response) {
return response.text(); return response.text();
}).then(function(text) { }).then(function(text) {
const result = parser.read(text); const result = parser.read(text);
const options = WMTS.optionsFromCapabilities(result, { const options = optionsFromCapabilities(result, {
layer: 'OSM_Land_Mask', layer: 'OSM_Land_Mask',
matrixSet: 'EPSG3413_250m' matrixSet: 'EPSG3413_250m'
}); });

View File

@@ -3,7 +3,7 @@ import View from '../src/ol/View.js';
import WMTSCapabilities from '../src/ol/format/WMTSCapabilities.js'; import WMTSCapabilities from '../src/ol/format/WMTSCapabilities.js';
import {DEVICE_PIXEL_RATIO} from '../src/ol/has.js'; import {DEVICE_PIXEL_RATIO} from '../src/ol/has.js';
import TileLayer from '../src/ol/layer/Tile.js'; import TileLayer from '../src/ol/layer/Tile.js';
import WMTS from '../src/ol/source/WMTS.js'; import WMTS, {optionsFromCapabilities} from '../src/ol/source/WMTS.js';
const capabilitiesUrl = 'https://www.basemap.at/wmts/1.0.0/WMTSCapabilities.xml'; const capabilitiesUrl = 'https://www.basemap.at/wmts/1.0.0/WMTSCapabilities.xml';
@@ -27,7 +27,7 @@ fetch(capabilitiesUrl).then(function(response) {
return response.text(); return response.text();
}).then(function(text) { }).then(function(text) {
const result = new WMTSCapabilities().read(text); const result = new WMTSCapabilities().read(text);
const options = WMTS.optionsFromCapabilities(result, { const options = optionsFromCapabilities(result, {
layer: layer, layer: layer,
matrixSet: 'google3857', matrixSet: 'google3857',
style: 'normal' style: 'normal'

View File

@@ -3,7 +3,7 @@ import View from '../src/ol/View.js';
import WMTSCapabilities from '../src/ol/format/WMTSCapabilities.js'; import WMTSCapabilities from '../src/ol/format/WMTSCapabilities.js';
import TileLayer from '../src/ol/layer/Tile.js'; import TileLayer from '../src/ol/layer/Tile.js';
import OSM from '../src/ol/source/OSM.js'; import OSM from '../src/ol/source/OSM.js';
import WMTS from '../src/ol/source/WMTS.js'; import WMTS, {optionsFromCapabilities} from '../src/ol/source/WMTS.js';
const parser = new WMTSCapabilities(); const parser = new WMTSCapabilities();
let map; let map;
@@ -12,7 +12,7 @@ fetch('data/WMTSCapabilities.xml').then(function(response) {
return response.text(); return response.text();
}).then(function(text) { }).then(function(text) {
const result = parser.read(text); const result = parser.read(text);
const options = WMTS.optionsFromCapabilities(result, { const options = optionsFromCapabilities(result, {
layer: 'layer-7328', layer: 'layer-7328',
matrixSet: 'EPSG:3857' matrixSet: 'EPSG:3857'
}); });

View File

@@ -309,7 +309,7 @@ WMTS.prototype.updateDimensions = function(dimensions) {
* @return {?olx.source.WMTSOptions} WMTS source options object or `null` if the layer was not found. * @return {?olx.source.WMTSOptions} WMTS source options object or `null` if the layer was not found.
* @api * @api
*/ */
WMTS.optionsFromCapabilities = function(wmtsCap, config) { export function optionsFromCapabilities(wmtsCap, config) {
const layers = wmtsCap['Contents']['Layer']; const layers = wmtsCap['Contents']['Layer'];
const l = find(layers, function(elt, index, array) { const l = find(layers, function(elt, index, array) {
return elt['Identifier'] == config['layer']; return elt['Identifier'] == config['layer'];
@@ -476,5 +476,6 @@ WMTS.optionsFromCapabilities = function(wmtsCap, config) {
wrapX: wrapX, wrapX: wrapX,
crossOrigin: config['crossOrigin'] crossOrigin: config['crossOrigin']
}; };
}; }
export default WMTS; export default WMTS;

View File

@@ -2,7 +2,7 @@ import WMTSCapabilities from '../../../../src/ol/format/WMTSCapabilities.js';
import {get as getProjection} from '../../../../src/ol/proj.js'; import {get as getProjection} from '../../../../src/ol/proj.js';
import Projection from '../../../../src/ol/proj/Projection.js'; import Projection from '../../../../src/ol/proj/Projection.js';
import WMTSTileGrid from '../../../../src/ol/tilegrid/WMTS.js'; import WMTSTileGrid from '../../../../src/ol/tilegrid/WMTS.js';
import WMTS from '../../../../src/ol/source/WMTS.js'; import WMTS, {optionsFromCapabilities} from '../../../../src/ol/source/WMTS.js';
describe('ol.source.WMTS', function() { describe('ol.source.WMTS', function() {
@@ -23,7 +23,7 @@ describe('ol.source.WMTS', function() {
}); });
it('returns null if the layer was not found in the capabilities', function() { it('returns null if the layer was not found in the capabilities', function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'invalid' layer: 'invalid'
}); });
@@ -31,7 +31,7 @@ describe('ol.source.WMTS', function() {
}); });
it('passes the crossOrigin option', function() { it('passes the crossOrigin option', function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'BlueMarbleNextGeneration', layer: 'BlueMarbleNextGeneration',
matrixSet: 'google3857', matrixSet: 'google3857',
crossOrigin: '' crossOrigin: ''
@@ -42,7 +42,7 @@ describe('ol.source.WMTS', function() {
it('can create KVP options from spec/ol/format/wmts/ogcsample.xml', it('can create KVP options from spec/ol/format/wmts/ogcsample.xml',
function() { function() {
const options = WMTS.optionsFromCapabilities( const options = optionsFromCapabilities(
capabilities, capabilities,
{layer: 'BlueMarbleNextGeneration', matrixSet: 'google3857'}); {layer: 'BlueMarbleNextGeneration', matrixSet: 'google3857'});
@@ -74,7 +74,7 @@ describe('ol.source.WMTS', function() {
it('can create REST options from spec/ol/format/wmts/ogcsample.xml', it('can create REST options from spec/ol/format/wmts/ogcsample.xml',
function() { function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'BlueMarbleNextGeneration', layer: 'BlueMarbleNextGeneration',
matrixSet: 'google3857', matrixSet: 'google3857',
requestEncoding: 'REST' requestEncoding: 'REST'
@@ -105,7 +105,7 @@ describe('ol.source.WMTS', function() {
}); });
it('can find a MatrixSet by SRS identifier', function() { it('can find a MatrixSet by SRS identifier', function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'BlueMarbleNextGeneration', layer: 'BlueMarbleNextGeneration',
projection: 'EPSG:3857', projection: 'EPSG:3857',
requestEncoding: 'REST' requestEncoding: 'REST'
@@ -116,7 +116,7 @@ describe('ol.source.WMTS', function() {
}); });
it('can find a MatrixSet by equivalent SRS identifier', function() { it('can find a MatrixSet by equivalent SRS identifier', function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'BlueMarbleNextGeneration', layer: 'BlueMarbleNextGeneration',
projection: 'EPSG:900913', projection: 'EPSG:900913',
requestEncoding: 'REST' requestEncoding: 'REST'
@@ -127,7 +127,7 @@ describe('ol.source.WMTS', function() {
}); });
it('can find the default MatrixSet', function() { it('can find the default MatrixSet', function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'BlueMarbleNextGeneration', layer: 'BlueMarbleNextGeneration',
requestEncoding: 'REST' requestEncoding: 'REST'
}); });
@@ -137,7 +137,7 @@ describe('ol.source.WMTS', function() {
}); });
it('uses the projection of the default MatrixSet if the config\'s projection is not supported', function() { it('uses the projection of the default MatrixSet if the config\'s projection is not supported', function() {
const options = WMTS.optionsFromCapabilities(capabilities, { const options = optionsFromCapabilities(capabilities, {
layer: 'BlueMarbleNextGeneration', layer: 'BlueMarbleNextGeneration',
projection: new Projection({ projection: new Projection({
code: 'EPSG:2056', code: 'EPSG:2056',
@@ -153,7 +153,7 @@ describe('ol.source.WMTS', function() {
const tmpXml = content.replace(/<ows:Constraint[\s\S]*?<\/ows:Constraint>/g, ''); const tmpXml = content.replace(/<ows:Constraint[\s\S]*?<\/ows:Constraint>/g, '');
const tmpCapabilities = parser.read(tmpXml); const tmpCapabilities = parser.read(tmpXml);
expect(tmpCapabilities['OperationsMetadata']['GetTile']['DCP']['HTTP']['Get'][0]['Constraint']).to.be(undefined); expect(tmpCapabilities['OperationsMetadata']['GetTile']['DCP']['HTTP']['Get'][0]['Constraint']).to.be(undefined);
const options = WMTS.optionsFromCapabilities(tmpCapabilities, const options = optionsFromCapabilities(tmpCapabilities,
{layer: 'BlueMarbleNextGeneration', matrixSet: 'google3857'}); {layer: 'BlueMarbleNextGeneration', matrixSet: 'google3857'});
expect(options.layer).to.be.eql('BlueMarbleNextGeneration'); expect(options.layer).to.be.eql('BlueMarbleNextGeneration');
expect(options.matrixSet).to.be.eql('google3857'); expect(options.matrixSet).to.be.eql('google3857');
@@ -166,7 +166,7 @@ describe('ol.source.WMTS', function() {
const tmpCapabilities = parser.read(tmpXml); const tmpCapabilities = parser.read(tmpXml);
expect(tmpCapabilities['OperationsMetadata']['GetTile']['DCP']['HTTP']['Get'][0]['Constraint']).to.be(undefined); expect(tmpCapabilities['OperationsMetadata']['GetTile']['DCP']['HTTP']['Get'][0]['Constraint']).to.be(undefined);
expect(tmpCapabilities['Contents']['Layer'][0]['ResourceURL']).to.be(undefined); expect(tmpCapabilities['Contents']['Layer'][0]['ResourceURL']).to.be(undefined);
const options = WMTS.optionsFromCapabilities(tmpCapabilities, const options = optionsFromCapabilities(tmpCapabilities,
{layer: 'BlueMarbleNextGeneration', matrixSet: 'google3857'}); {layer: 'BlueMarbleNextGeneration', matrixSet: 'google3857'});
expect(options.layer).to.be.eql('BlueMarbleNextGeneration'); expect(options.layer).to.be.eql('BlueMarbleNextGeneration');
expect(options.matrixSet).to.be.eql('google3857'); expect(options.matrixSet).to.be.eql('google3857');
@@ -247,7 +247,7 @@ describe('ol.source.WMTS', function() {
it('can create KVP options from spec/ol/format/wmts/arcgis.xml', it('can create KVP options from spec/ol/format/wmts/arcgis.xml',
function() { function() {
const options = WMTS.optionsFromCapabilities( const options = optionsFromCapabilities(
capabilities, { capabilities, {
layer: 'Demographics_USA_Population_Density', layer: 'Demographics_USA_Population_Density',
requestEncoding: 'KVP', requestEncoding: 'KVP',
@@ -263,7 +263,7 @@ describe('ol.source.WMTS', function() {
it('can create REST options from spec/ol/format/wmts/arcgis.xml', it('can create REST options from spec/ol/format/wmts/arcgis.xml',
function() { function() {
const options = WMTS.optionsFromCapabilities( const options = optionsFromCapabilities(
capabilities, { capabilities, {
layer: 'Demographics_USA_Population_Density', layer: 'Demographics_USA_Population_Density',
matrixSet: 'default028mm' matrixSet: 'default028mm'