let ol = require('openlayers');
let AbstractDataSource = require('./abstractDataSource');
/**
* Класс FileEsriJsonVectorSource предназначен для создания векторного источника данных для WFS-T сервисов
* @extends AbstractDataSource
*/
class FileEsriJsonVectorSource extends AbstractDataSource {
/**
* Создает экземпляр класса GeoJsonVectorSource
* @param params
*/
constructor(params) {
super(params);
this.type = "FileJsonVectorSource";
this.source = this.create(params);
}
getSource() {
return this.source;
}
setSource(source) {
this.source = source;
}
create(params) {
let source = new ol.source.Vector({
features: (new ol.format.EsriJSON()).readFeatures(params.data, {
featureProjection: params.projection || 'EPSG:3857'
}),
projection: params.projection || 'EPSG:3857'
});
return source;
}
}
module.exports = FileEsriJsonVectorSource;