CacheConfiguration
public struct CacheConfiguration
extension CacheConfiguration: Equatable
Cache configuration for caching both tiles and styles.
It provides control over the system memory and disk capacity used for caching, as well as the maximum cache duration for style resources
and a mapping of cache durations to corresponding request URL filters.
Unlike style caching, the tiles’ cache duration is handled by the server, utilizing the max-age
header.
Important
This is a Public Preview API. It may be changed or removed at any time.Mapping of the data duration in cache to the corresponding request URL filter.
For example:
Request: https://api.tomtom.com/map/2/tile/basic/{z}/{x}/{y}.pbf
Response: CacheControl = "maxAge=60"
cacheDurationFilter = ["/tile/basic": .init(value: 120, unit: .seconds)]
In this case, Response data will be stored in cache for 120 seconds instead of 60.
Declaration
Swift
public let cacheDurationFilter: [String : Measurement<UnitDuration>]
The caching capacity, in bytes, while caching the tiles and styles to disk.
Declaration
Swift
public let diskCapacity: Measurement<UnitInformationStorage>
The maximum amount of time that a style fetched resource should be allowed to remain in cache.
Declaration
Swift
public let duration: Measurement<UnitDuration>
Creates an instance of CacheConfiguration
.
If no parameters are provided, the CacheConfiguration
will be initialized with the following default values:
memoryCapacity: 5MB
diskCapacity: 50MB
duration: 24 hours
cacheDurationFilter: [:]
Declaration
Swift
public init(
memoryCapacity: Measurement<UnitInformationStorage> = .init(value: 5, unit: .megabytes),
diskCapacity: Measurement<UnitInformationStorage> = .init(value: 50, unit: .megabytes),
duration: Measurement<UnitDuration> = .init(value: 24, unit: .hours),
cacheDurationFilter: [String: Measurement<UnitDuration>] = [:]
)
Parameters
memoryCapacity
|
The caching capacity, in bytes, while caching the tiles to system memory. |
diskCapacity
|
The caching capacity, in bytes, while caching the tiles and styles to disk. |
duration
|
The maxium amount of time that a style fetched resource should be allowed to remain in cache. |
cacheDurationFilter
|
Mapping of the data duration in cache to the corresponding request URL filter.
For example:
Request: |
The caching capacity, in bytes, while caching the tiles to system memory.
Declaration
Swift
public let memoryCapacity: Measurement<UnitInformationStorage>