-
Notifications
You must be signed in to change notification settings - Fork 17
Add TMS (Tile Map Service) support #95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Change fetchXml return type from string to XMLDocument - Move getParentPath utility to shared/url-utils module - Update corresponding unit tests
I made updates as we had discussed. Here's a summary of the changes:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you, good job! that looks good, I just have a question regarding the bounding box. Please merge when you feel it's ready :)
return Array.isArray(this.tileMap.boundingBox) | ||
? this.tileMap.boundingBox | ||
: [ | ||
this.tileMap.boundingBox?.minx, | ||
this.tileMap.boundingBox?.miny, | ||
this.tileMap.boundingBox?.maxx, | ||
this.tileMap.boundingBox?.maxy, | ||
]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is that something that application code would be expected to do? IT sounds like the Bbox should always be an array
Overview
This PR adds support for TMS (Tile Map Service) to the ogc-client library, extending its capabilities beyond WMS, WMTS, WFS, and OGC-API to now include TMS-compliant services according to the Tile Map Service Specification.
Features Added
TMS Endpoint
Implemented
TmsEndpoint
class with the following methods:The class handles proper caching of service data through internal methods:
getServiceData()
: Fetches and caches TMS service datagetFilteredData()
: Applies filtering based on the endpoint URLUtility Functions
Implementation Details
The implementation closely follows the TMS specification while maintaining consistency with the API design pattern used throughout ogc-client. This ensures a familiar interface for developers already using the library for other OGC services.
Current Limitations
Testing
Comprehensive unit tests cover:
Usage Example