The HERE Maps API data flow relies on a chain of class types like
Layer to fetch data from the server, position and style it on a map.
Serviceprovides connectivity with the Geo-visualization backend and must be configured with
Providerdefines the interface for layers to access data. It uses
Serviceto load data from the Geo-visualization backend. When data is loaded,
Providertransforms the data into a format acceptable by
Providerhandles query dynamic parameters.
Layerrenders data from
Providerfor the viewport requested by
Map. There are different types of layers for different types of input data.
Maphandles user inputs (like map zoom and moves) and fetches data for the current viewport from connected layers.
Layer is added on a
Map, the following chain of calls is triggered:
Mapcalculates which tiles are visible and requests synchronously the tile images from
Layerhas no tile image in cache, it synchronously requests data for the tile from
Providerto render it.
Providerhas no requested data, it loads data from the backend with
Providerreceives a response it triggers the
updateevent, which bubbles to
Layer, it requests synchronously the visible tiles again. If data for a tile is available in
Layerrenders the tile and returns the tile images to the
This loop repeats every time the viewport updates or new data arrives or changes.