@geogirafe/lib-geoportal
Version:
GeoGirafe is a flexible application to build online geoportals.
41 lines (40 loc) • 2.14 kB
TypeScript
import LayerWms from '../../models/layers/layerwms.js';
import ServerWfs, { LayerAttribute } from '../../models/serverwfs.js';
import WfsClient, { WfsClientOptionalOptions } from './wfsclient.js';
import ServerOgc from '../../models/serverogc.js';
import VendorSpecificOgcServerManager from '../vendorspecificogcservermanager.js';
import Feature from 'ol/Feature.js';
export default class WfsManager extends VendorSpecificOgcServerManager<WfsClient, WfsClientOptionalOptions> {
private get state();
getClientId(ogcServer: ServerOgc): string;
static readonly UnknownFeatureType: string;
initializeSingleton(): void;
private onSelectedFeaturesFilterChange;
/**
* Determines whether the specified layer is the first active child layer of a time-aware group layer,
* or if it is independent (= with time restriction, but without a time aware parent).
* This is needed to prevent repeated identical requests when setting the time restriction on
* multiple child layers at once.
*
* @param {TimeAwareLayer} layer - The layer to check.
*/
private isFirstChildOfTimeAwareGroupOrIndependent;
getServerWfs(ogcServer: ServerOgc): Promise<ServerWfs>;
getServerWfs(layer: LayerWms): Promise<ServerWfs>;
/**
* Extracts the feature type from the feature's ID. A feature ID may contain a prefix,
* the feature type and a feature-specific ID. It returns "UNKNOWN" if the ID is absent.
*/
static extractFeatureTypeFromId(feature: Feature): string;
/**
* Compares attribute names between query layers of a LayerWms object.
* Returns a list of attributes that are common to all query layers.
* If the layer has no query layers, it returns an empty array.
* Can optionally include the geometry column name if it is present in all query layers.
*/
commonAttributesByLayer(layer: LayerWms, includeGeometryColumn?: boolean): Promise<LayerAttribute[]>;
/**
* Retrieves the list of valid values for all enumerated attributes within a given layer.
*/
getAttributeChoices(layer: LayerWms): Promise<Map<string, string[]>>;
}