diff --git a/ctabus/fetch.py b/ctabus/fetch.py index d8b01c4..c8eb7de 100644 --- a/ctabus/fetch.py +++ b/ctabus/fetch.py @@ -4,7 +4,7 @@ from urllib.request import urlopen from ctabus.internal.exceptions import CTABusError, NoArrivalTimesError from ctabus.internal.config import API_KEY as api -from ctabus.internal.disk_cache import disk_cache +from ctabus.internal.disk_cache import disk_cache, disk_cache_with_setup def get_data(type, api_key=api, timeout=None, **args): @@ -56,7 +56,7 @@ def get_name_from_direction(route, direction, api_key=api, timeout=None): return get_times(test_stop, api_key=api, timeout=timeout)["prd"][0]["des"] -@disk_cache(uses_setup=True) +@disk_cache_with_setup def get_data_from_stop_id(stop_id, __setup__=None): if __setup__ is None: info = get_times(stop_id)["prd"][0] diff --git a/ctabus/internal/disk_cache.py b/ctabus/internal/disk_cache.py index 5f054db..a790a74 100644 --- a/ctabus/internal/disk_cache.py +++ b/ctabus/internal/disk_cache.py @@ -72,6 +72,10 @@ class disk_cache: self.fresh = True +def disk_cache_with_setup(func): + return disk_cache(func, uses_setup=True) + + def save_if_modified(): for cache_obj in disk_cache.caches: if cache_obj.fresh: