Не понимаю, почему не создается кеш с указанным мною идентификатором

Мне необходимо результаты задачи шедулера писать в кеш для того, чтобы в дальнейшем из этого кеша могли читать другие сервисы.

Проблема заключается в том, что кеш с указанным мной id не создается. Что сделал:

  1. добавил зависимости

  2. описал конфигурацию (работать требуется через javax-интерфейс)

  3. прописал в пропертис

  4. читаю/пишу

    org.springframework.boot spring-boot-starter-cache com.github.ben-manes.caffeine caffeine ${caffeine.version} com.github.ben-manes.caffeine jcache ${caffeine.version} javax.cache cache-api

    spring: cache: type: caffeine cache-names: allowed-ids


    @Configuration @EnableCaching public class CacheConfig {

    @Bean public CacheManager cacheManager() { CachingProvider caffeineCachingProvider = Caching.getCachingProvider(CaffeineCachingProvider.class.getName()); return caffeineCachingProvider.getCacheManager(); } }


    private void updateDictionaryIds(@NonNull Set dictionaries) { cacheManager.getCache(CACHE_NAME).removeAll(); dictionaries.stream() .map(Dictionary::getDictionaryId) .forEach(id -> { Cache<String, String> cache = cacheManager.getCache(CACHE_NAME); cache.put(id, Const.EMPTY); }); }

    public @NonNull Set getAllowedIds() { Cache<String, String> cache = cacheManager.getCache(CACHE_NAME, String.class, String.class); return StreamSupport.stream(cache.spliterator(), false) .map(Cache.Entry::getKey) .collect(Collectors.toSet()); }


Ответы (0 шт):