Example #1
0
    def get_data_cache(self, recreate_cache_if_needed=True):
        """Return always up-to-date data from cache.

        The returned value depends on the what has been stored with
        :meth:`~SearchService.prepare_data_cache`.

        :param recreate_cache_if_needed: if True, force refreshing data cache.
        """
        try:
            self.__class__.cache.is_ok_p
        except Exception:
            self.__class__.cache = DataCacher(self.prepare_data_cache,
                                              self.timestamp_verifier)
        if recreate_cache_if_needed:
            self.__class__.cache.recreate_cache_if_needed()

        return self.__class__.cache.cache