Class: CacheManager
CacheManager - Facade for managing multiple typed caches
Replaces the old Cache singleton with a more flexible, configurable system. Supports:
- Multiple cache types (places, routes, configurations, etc.)
- Language-aware caching
- Optional localStorage persistence
- Configurable limits and TTL per cache type
Example
const cacheManager = new CacheManager({
persistent: true,
maxStorageBytes: 5 * 1024 * 1024,
configs: {
places: { maxItems: 1000, ttlMs: 60000 },
},
})
cacheManager.setPlace("place-1", "en", placeData)
const place = cacheManager.getPlace("place-1", "en")Constructors
Constructor
new CacheManager(config?): CacheManager;Parameters
config?
Returns
CacheManager
Methods
cleanAccessibleRoutesCache()
cleanAccessibleRoutesCache(): void;Returns
void
cleanAllCache()
cleanAllCache(): void;Clears all caches
Returns
void
cleanLanguageCache()
cleanLanguageCache(lang): void;Clears all entries for a specific language across all language-aware caches
Parameters
lang
string
Returns
void
cleanRoutesCache()
cleanRoutesCache(): void;Returns
void
getAccessibleRoute()
getAccessibleRoute<T>(destinationId): undefined | T;Type Parameters
T
T
Parameters
destinationId
string
Returns
undefined | T
getAllCacheStats()
getAllCacheStats(): Record<CacheType, CacheStats>;Gets statistics for all caches
Returns
Record<CacheType, CacheStats>
getCacheStats()
getCacheStats(cacheType): CacheStats;Gets statistics for a specific cache type
Parameters
cacheType
Returns
getCategories()
getCategories<T>(placeId, lang): undefined | T;Type Parameters
T
T
Parameters
placeId
string
lang
string
Returns
undefined | T
getConfiguration()
getConfiguration<T>(
placeId,
product,
lang): undefined | T;Type Parameters
T
T
Parameters
placeId
string
product
string
lang
string
Returns
undefined | T
getPlace()
getPlace<T>(id, lang): undefined | T;Type Parameters
T
T
Parameters
id
string
lang
string
Returns
undefined | T
getRoute()
getRoute<T>(destinationId): undefined | T;Type Parameters
T
T
Parameters
destinationId
string
Returns
undefined | T
getStops()
getStops<T>(id, lang): undefined | T;Type Parameters
T
T
Parameters
id
string
lang
string
Returns
undefined | T
getSubPlaces()
getSubPlaces<T>(parentPlaceId, lang): undefined | T;Type Parameters
T
T
Parameters
parentPlaceId
string
lang
string
Returns
undefined | T
getVehicle()
getVehicle<T>(id, lang): undefined | T;Type Parameters
T
T
Parameters
id
string
lang
string
Returns
undefined | T
hasPlace()
hasPlace(id, lang): boolean;Parameters
id
string
lang
string
Returns
boolean
setAccessibleRoute()
setAccessibleRoute<T>(destinationId, value): void;Type Parameters
T
T
Parameters
destinationId
string
value
T
Returns
void
setCategories()
setCategories<T>(
placeId,
lang,
value): void;Type Parameters
T
T
Parameters
placeId
string
lang
string
value
T
Returns
void
setConfiguration()
setConfiguration<T>(
placeId,
product,
lang,
value): void;Type Parameters
T
T
Parameters
placeId
string
product
string
lang
string
value
T
Returns
void
setPlace()
setPlace<T>(
id,
value,
lang): void;Stores a place in cache
Type Parameters
T
T
Parameters
id
string
Place ID
value
T
Place data
lang
string
Language code
Returns
void
setRoute()
setRoute<T>(destinationId, value): void;Type Parameters
T
T
Parameters
destinationId
string
value
T
Returns
void
setStops()
setStops<T>(
id,
value,
lang): void;Stores stops in cache
Type Parameters
T
T
Parameters
id
string
Combined stop+vehicle ID
value
T
Stops data (can be DataSnapshot for backward compatibility)
lang
string
Language code
Returns
void
setSubPlaces()
setSubPlaces<T>(
parentPlaceId,
lang,
value): void;Stores subplaces in cache
Type Parameters
T
T
Parameters
parentPlaceId
string
Parent place ID
lang
string
Language code
value
T
SubPlaces data (can be DataSnapshot for backward compatibility)
Returns
void
setVehicle()
setVehicle<T>(
id,
value,
lang): void;Stores a vehicle in cache
Type Parameters
T
T
Parameters
id
string
Stop ID
value
T
Vehicle data (can be DataSnapshot for backward compatibility)
lang
string
Language code
Returns
void