@geogirafe/lib-geoportal
Version:
GeoGirafe is a flexible application to build online geoportals.
11 lines (10 loc) • 773 B
TypeScript
import GirafeSingleton from '../../base/GirafeSingleton';
import ServerOgcApi from '../../models/serverogcapi';
export default abstract class OgcApiManager<OgcApiClient, OgcApiClientOptions> extends GirafeSingleton {
protected readonly _clientClasses: Map<string, new (server: ServerOgcApi, options: OgcApiClientOptions) => OgcApiClient>;
protected readonly _clients: Map<string, OgcApiClient>;
abstract getClientId(server: ServerOgcApi): string;
createClient(clientClass: new (os: ServerOgcApi, opt: OgcApiClientOptions) => OgcApiClient, server: ServerOgcApi): OgcApiClient;
registerClientClass(type: string, clientClass: new (server: ServerOgcApi, opt: OgcApiClientOptions) => OgcApiClient): void;
getClient(server: ServerOgcApi): OgcApiClient;
}