UNPKG

@doegis/core

Version:

DOE GIS API

3 lines (1 loc) 1.94 kB
import{destroyMaybe as e,isSome as r}from"../../../../core/maybe.js";import{contextCapabilitiesFromLayer as t}from"./FeatureTileFetcher3D.js";import{createFeatureTileQuery3D as i}from"./featureTileQuery3D.js";class a{constructor(e){this._memoryCache=null,this._capabilities=null;const r=e.layerView.layer;this._layerView=e.layerView,this.objectIdField=r.objectIdField,this.globalIdField="globalIdField"in r?r.globalIdField:null,this._returnZ=e.returnZ,this._returnM=e.returnM;const t=this._layerView.view.resourceController;this.query=i(r,t.normal),t&&this._memoryCacheEnabled&&(this._memoryCache=t.memoryController.newCache(r.uid))}get _memoryCacheEnabled(){switch(this._layerView.layer.source.type){case"feature-layer":case"ogc-feature":case"oriented-imagery":return!0;case"csv":case"geojson":case"memory":case"wfs":return!1}}destroy(){this._memoryCache=e(this._memoryCache),this.query.destroy()}createQuery(){const e=this._layerView.layer.createQuery();return e.outFields=this._layerView.availableFields,e.returnZ=this._returnZ,e.returnM=this._returnM,e.outSpatialReference=this.tilingScheme.spatialReference,e}get memoryCache(){return this._memoryCache}get viewingMode(){return this._layerView.view.state.viewingMode}get tilingScheme(){return this._layerView.view.featureTiles.tilingScheme}get scheduler(){const e=this._layerView.view.resourceController;return e?e.scheduler:null}get geometryType(){return this._layerView.layer.geometryType}get fullExtent(){return this._layerView.layer.fullExtent}get tileMaxRecordCount(){return this._layerView.layer.capabilities.query.tileMaxRecordCount}get maxRecordCount(){return this._layerView.layer.capabilities.query.maxRecordCount}get capabilities(){return r(this._capabilities)||(this._capabilities=t(this._layerView.layer)),this._capabilities}logFetchError(e,r){e.error("#fetchTile()",this._layerView.layer,r&&r.message?r.message:r)}}export{a as FeatureTileFetcher3DLayerViewContext};